EventAnalysis  1.3.0
AnalysisManager.h
Go to the documentation of this file.
1 /*
2  * AnalysisManager.h
3  *
4  * Created on: 03 Aug 2017
5  * Author: Nicola Mori
6  */
7 
10 #ifndef ANALYSISMANAGER_H_
11 #define ANALYSISMANAGER_H_
12 
13 #include "analysis/EventLoop.h"
15 #include "data/DataStoreManager.h"
18 #include "plugin/DynamicLoader.h"
19 
20 namespace EA {
21 
28 public:
31 
37 
38  bool AddEventLoop(std::unique_ptr<EventLoop> evLoop);
39  observer_ptr<EventLoop> GetEventLoop(int loopNumber);
40 
41  bool Initialize();
44  bool Finalize();
45 
46 private:
52 
53  using EvLoops = std::vector<std::unique_ptr<EventLoop>>;
55 };
56 
57 } // namespace EA
58 
59 #endif /* ANALYSISMANAGER_H_ */
RunResult
Definition: AnalysisManager.h:42
std::vector< std::unique_ptr< EventLoop > > EvLoops
Definition: AnalysisManager.h:53
observer_ptr< PersistenceServiceManager > GetPersistenceServiceManager()
Definition: AnalysisManager.cpp:19
Manager class for data stores.
Definition: DataStoreManager.h:31
A smart pointer not owning the wrapped object.
Definition: ObserverPtr.h:28
observer_ptr< DataProviderManager > GetDataProviderManager()
Definition: AnalysisManager.cpp:15
DataStoreManager _dsManager
Definition: AnalysisManager.h:48
IncludeFileExc.h IncludeFileExc class declaration.
Definition: Algorithm.h:21
Class to dynamically load and manage shared libraries.
Definition: DynamicLoader.h:25
Manager class for event data cache objects.
Definition: EventDataCacheManager.h:29
EvLoops _evLoops
Definition: AnalysisManager.h:54
Manager class for persistence services.
Definition: PersistenceServiceManager.h:24
observer_ptr< EventLoop > GetEventLoop(int loopNumber)
Definition: AnalysisManager.cpp:30
bool AddEventLoop(std::unique_ptr< EventLoop > evLoop)
Definition: AnalysisManager.cpp:25
bool Initialize()
Definition: AnalysisManager.cpp:40
observer_ptr< EventDataCacheManager > GetEventDataCacheManager()
Definition: AnalysisManager.cpp:21
RunResult RunEventLoops()
Definition: AnalysisManager.cpp:65
DynamicLoader _dynLoader
Definition: AnalysisManager.h:47
AnalysisManager()
Constructor.
Definition: AnalysisManager.cpp:13
The top-level class managing the setup and run of the data analysis.
Definition: AnalysisManager.h:27
bool Finalize()
Definition: AnalysisManager.cpp:127
EventDataCacheManager _ecManager
Definition: AnalysisManager.h:51
DataProviderManager _dpManager
Definition: AnalysisManager.h:49
observer_ptr< DynamicLoader > GetDynamicLoader()
Definition: AnalysisManager.cpp:23
PersistenceServiceManager _psManager
Definition: AnalysisManager.h:50
Manager class for data providers.
Definition: DataProviderManager.h:29
observer_ptr< DataStoreManager > GetDataStoreManager()
Definition: AnalysisManager.cpp:17