|
||||
File indexing completed on 2025-01-18 09:28:01
0001 // This file is part of the Acts project. 0002 // 0003 // Copyright (C) 2017 CERN for the benefit of the Acts project 0004 // 0005 // This Source Code Form is subject to the terms of the Mozilla Public 0006 // License, v. 2.0. If a copy of the MPL was not distributed with this 0007 // file, You can obtain one at http://mozilla.org/MPL/2.0/. 0008 0009 #pragma once 0010 0011 #include "Acts/Plugins/FpeMonitoring/FpeMonitor.hpp" 0012 #include <Acts/Geometry/GeometryContext.hpp> 0013 #include <Acts/MagneticField/MagneticFieldContext.hpp> 0014 #include <Acts/Utilities/CalibrationContext.hpp> 0015 0016 #include <memory> 0017 0018 namespace ActsExamples { 0019 0020 class WhiteBoard; 0021 0022 /// Aggregated information to run one algorithm over one event. 0023 struct AlgorithmContext { 0024 /// @brief constructor with arguments 0025 /// 0026 /// @param alg is the algorithm/service/writer number 0027 /// @param event is the event number 0028 /// @param store is the event-wise event store 0029 /// 0030 /// @note the event dependent contexts are to be added by the 0031 /// Sequencer::m_decorators list 0032 AlgorithmContext(std::size_t alg, std::size_t event, WhiteBoard& store) 0033 : algorithmNumber(alg), eventNumber(event), eventStore(store) {} 0034 0035 /// @brief ++operator overload to increase the algorithm number 0036 AlgorithmContext& operator++() { 0037 algorithmNumber += 1; 0038 return (*this); 0039 } 0040 0041 std::size_t algorithmNumber; ///< Unique algorithm identifier 0042 std::size_t eventNumber; ///< Unique event identifier 0043 WhiteBoard& eventStore; ///< Per-event data store 0044 Acts::GeometryContext geoContext; ///< Per-event geometry context 0045 Acts::MagneticFieldContext 0046 magFieldContext; ///< Per-event magnetic Field context 0047 Acts::CalibrationContext calibContext; ///< Per-event calibration context 0048 0049 Acts::FpeMonitor* fpeMonitor = nullptr; 0050 }; 0051 0052 } // namespace ActsExamples
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |