| The Gaudi Framework v32r1 (f65d50dc)

ApplicationMgr.h
Go to the documentation of this file.
1 #ifndef GAUDI_APPLICATIONMGR_H
2 #define GAUDI_APPLICATIONMGR_H
3
4 #include <Gaudi/Interfaces/IAsyncEventProcessor.h>
5 #include <GaudiKernel/AppReturnCode.h>
6 #include <GaudiKernel/CommonMessaging.h>
7 #include <GaudiKernel/IAlgManager.h>
8 #include <GaudiKernel/IAlgorithm.h>
9 #include <GaudiKernel/IAppMgrUI.h>
10 #include <GaudiKernel/IComponentManager.h>
11 #include <GaudiKernel/IEventProcessor.h>
12 #include <GaudiKernel/IProperty.h>
13 #include <GaudiKernel/IStateful.h>
14 #include <GaudiKernel/ISvcManager.h>
15 #include <GaudiKernel/Kernel.h>
16 #include <GaudiKernel/PropertyHolder.h>
17 #include <GaudiKernel/Service.h>
18 #include <vector>
19
20 // Forward declarations
21 class ISvcLocator;
22 class ServiceManager;
23 class AlgorithmManager;
24 class DLLClassManager;
25
26 class IMessageSvc;
27 class IIncidentSvc;
28 class IRunable;
29 class IDataManagerSvc;
30 class IConversionSvc;
31 class IJobOptionsSvc;
32
45 class ApplicationMgr
46 : public PropertyHolder<CommonMessaging<implements<IAppMgrUI, Gaudi::Interfaces::IAsyncEventProcessor, IService,
47 IStateful, INamedInterface, IProperty>>> {
48 public:
49 // default creator
50 ApplicationMgr( IInterface* = nullptr );
51
52 // implementation of IInterface::queryInterface
53 StatusCode queryInterface( const InterfaceID& iid, void** pinterface ) override;
54
55 // implementation of IAppMgrUI::run
56 StatusCode run() override;
57 // implementation of IAppMgrUI::configure
58 StatusCode configure() override;
59 // implementation of IAppMgrUI::terminate
60 StatusCode terminate() override;
61 // implementation of IAppMgrUI::initialize
62 StatusCode initialize() override;
63 // implementation of IAppMgrUI::start
64 StatusCode start() override;
65 // implementation of IAppMgrUI::stop
66 StatusCode stop() override;
67 // implementation of IAppMgrUI::finalize
68 StatusCode finalize() override;
69 // implementation of IAppMgrUI::nextEvent
70 StatusCode nextEvent( int maxevt ) override;
71 // implementation of IAppMgrUI::name
72 const std::string& name() const override;
74 EventContext createEventContext() override;
76 StatusCode executeEvent( EventContext&& ctx ) override;
78 StatusCode executeRun( int evtmax ) override;
80 StatusCode stopRun() override;
81
82 // implementation of IStateful::state
83 Gaudi::StateMachine::State FSMState() const override;
84 // implementation of IStateful::targetState
85 Gaudi::StateMachine::State targetFSMState() const override;
86 // implementation of IStateful::reinitialize
87 StatusCode reinitialize() override;
88 // implementation of IStateful::reinitialize
89 StatusCode restart() override;
90 // implementation of IService::sysItinitilaize
91 StatusCode sysInitialize() override { return StatusCode::SUCCESS; }
92 // implementation of IService::sysStart
93 StatusCode sysStart() override { return StatusCode::SUCCESS; }
94 // implementation of IService::sysStop
95 StatusCode sysStop() override { return StatusCode::SUCCESS; }
96 // implementation of IService::sysFinalize
97 StatusCode sysFinalize() override { return StatusCode::SUCCESS; }
98 // implementation of IService::sysReinitialize
99 StatusCode sysReinitialize() override { return StatusCode::SUCCESS; }
100 // implementation of IService::sysRestart
101 StatusCode sysRestart() override { return StatusCode::SUCCESS; }
102
103 std::future<std::tuple<StatusCode, EventContext>> asyncExecuteEvent( EventContext&& ctx ) override;
104
106
107 void evtLoopPropertyHandler( Gaudi::Details::PropertyBase& theProp );
108 StatusCode decodeExtSvcNameList();
109 StatusCode decodeCreateSvcNameList();
110 void createSvcNameListHandler( Gaudi::Details::PropertyBase& );
111 void extSvcNameListHandler( Gaudi::Details::PropertyBase& theProp );
112 StatusCode decodeDllNameList();
113 void dllNameListHandler( Gaudi::Details::PropertyBase& theProp );
114 void pluginDebugPropertyHandler( Gaudi::Details::PropertyBase& theProp );
116
117 template <class I>
118 SmartIF<IComponentManager>& getManager() {
119 return m_managers[I::interfaceID().id()];
120 }
121
122 inline SmartIF<ISvcManager>& svcManager() {
123 // Cache the casted pointer to ISvcManager
124 if ( !m_svcManager ) { m_svcManager = getManager<IService>(); }
125 return m_svcManager;
126 }
127
128 inline SmartIF<IAlgManager>& algManager() {
129 // Cache the casted pointer to IAlgManager
130 if ( !m_algManager ) { m_algManager = getManager<IAlgorithm>(); }
131 return m_algManager;
132 }
133
135 SmartIF<ISvcLocator>& serviceLocator() const override { return m_svcLocator; }
136
138 void outputLevelUpdate() override;
139
141 void printAlgsSequences();
142
143 protected:
144 // implementation of IService::setServiceManager
145 void setServiceManager( ISvcManager* ) override {}
146
148 StatusCode i_startup();
149
154 StatusCode GoToState( Gaudi::StateMachine::State state, bool ignoreFailures = false );
155
158 typedef std::map<unsigned long, SmartIF<IComponentManager>> ManagersMap;
162 ManagersMap m_managers;
164 Gaudi::Property<std::vector<std::string>> m_declaredManagers;
165
167 SmartIF<ISvcManager> m_svcManager;
168
170 SmartIF<IAlgManager> m_algManager;
171
172 // data members
173 mutable SmartIF<ISvcLocator> m_svcLocator;
174 SmartIF<DLLClassManager> m_classManager;
176
177 Gaudi::Property<int> m_SIGo{this, "Go", 0,
178 [this]( auto& ) {
179 // Re-initialize everything
180 this->reinitialize().ignore();
181 // Execute a number of events
182 this->executeRun( m_evtMax ).ignore();
183 },
184 "For SI's \"Go\" command via callback"};
185 Gaudi::Property<int> m_SIExit{this, "Exit", 0,
186 [this]( auto& ) {
187 finalize().ignore();
188 terminate().ignore();
189 ::exit( 0 );
190 },
191 "For SI's \"Exit\" command via callback"};
192 Gaudi::Property<std::vector<std::string>> m_topAlgNameList{
193 this, "TopAlg", {}, &ApplicationMgr::evtLoopPropertyHandler, "List of top level algorithms names"};
194 Gaudi::Property<std::vector<std::string>> m_outStreamNameList{
195 this, "OutStream", {}, &ApplicationMgr::evtLoopPropertyHandler, "List of output stream names"};
196 Gaudi::Property<std::string> m_outStreamType{this, "OutStreamType", "OutputStream",
197 &ApplicationMgr::evtLoopPropertyHandler,
198 "[[deprecated]] Output stream type"};
199 Gaudi::Property<std::string> m_messageSvcType{this, "MessageSvcType", "MessageSvc", "MessageSvc type"};
200 Gaudi::Property<std::string> m_jobOptionsSvcType{this, "JobOptionsSvcType", "JobOptionsSvc", "JobOptionsSvc type"};
201
202 std::string m_name = "ApplicationMgr";
203 Gaudi::StateMachine::State m_state = Gaudi::StateMachine::OFFLINE;
204 Gaudi::StateMachine::State m_targetState = Gaudi::StateMachine::OFFLINE;
205
206 Gaudi::Property<std::vector<std::string>> m_svcMapping{this, "SvcMapping", {}, "Default mapping of services"};
207 Gaudi::Property<std::vector<std::string>> m_svcOptMapping{
208 this, "SvcOptMapping", {}, "Default mapping of optional services"};
209
210 SmartIF<IMessageSvc> m_messageSvc;
211 SmartIF<IRunable> m_runable;
212 SmartIF<IEventProcessor> m_processingMgr;
213 SmartIF<IJobOptionsSvc> m_jobOptionsSvc;
214
215 SmartIF<IAsyncEventProcessor> m_asyncProcessor;
216 //
217 // The public ApplicationMgr properties
218 //
219
220 Gaudi::Property<int> m_evtMax{this, "EvtMax", -1, "Number of events to be processed (-1 means all events)"};
221 Gaudi::Property<std::vector<std::string>> m_extSvcNameList{this, "ExtSvc", {}, "List of external services names"};
222 Gaudi::Property<bool> m_extSvcCreates{this, "ExtSvcCreates", true,
223 "LHCb (default) or ATLAS definition of \"ExtSvc\""};
224
225 Gaudi::Property<std::vector<std::string>> m_dllNameList{this, "Dlls", {}, "List of DDL's names"};
226 Gaudi::Property<std::string> m_jobOptionsType{this, "JobOptionsType", "FILE", "Source type (e.g. dbase, file...)"};
227 Gaudi::Property<std::string> m_jobOptionsPath{this, "JobOptionsPath", {}, "The \"file\" to look for properties"};
228 Gaudi::Property<std::string> m_jobOptionsPreAction{
229 this, "JobOptionsPostAction", {}, "additional command to run on config"};
230 Gaudi::Property<std::string> m_jobOptionsPostAction{
231 this, "JobOptionsPreAction", {}, "additional command to run on config"};
232 Gaudi::Property<std::string> m_runableType{this, "Runable", "AppMgrRunable", "Runable type"};
233 Gaudi::Property<std::string> m_eventLoopMgr{this, "EventLoop", "EventLoopMgr", "Processing manager type"};
234 Gaudi::Property<std::string> m_evtsel{this, "EvtSel", {}, "Event selection"};
235 Gaudi::Property<std::string> m_histPersName{this, "HistogramPersistency", "NONE", "Name of the Hist Pers Svc"};
236 Gaudi::Property<int> m_outputLevel{this, "OutputLevel", MSG::INFO, "Message output level"};
237 Gaudi::Property<std::string> m_appName{this, "AppName", "ApplicationMgr", "The name of the application"};
238 Gaudi::Property<std::string> m_appVersion{this, "AppVersion", {}, "The version of the application"};
239 Gaudi::Property<bool> m_actHistory{this, "ActivateHistory", false, "Activate HistorySvc"};
240 Gaudi::Property<bool> m_codeCheck{this, "StatusCodeCheck", false, "Activate StatusCode checking"};
241 Gaudi::Property<int> m_pluginDebugLevel{
242 this, "PluginDebugLevel", 0,
243 [this]( auto& ) {
244 // Setup debug level for the plugin system
245 MsgStream log( m_messageSvc, this->name() );
246 log << MSG::INFO << "Updating Gaudi::PluginService::SetDebug(level) to level=" << m_pluginDebugLevel << endmsg;
247 Gaudi::PluginService::SetDebug( m_pluginDebugLevel );
248 },
249 "Debug level for the plugin system"};
250
251 Gaudi::Property<std::vector<std::string>> m_createSvcNameList{
252 this, "CreateSvc", {}, "List of extra services to be created"};
253
255 Gaudi::Property<bool> m_auditTools{this, "AuditTools", false};
256 Gaudi::Property<bool> m_auditSvcs{this, "AuditServices", false};
257 Gaudi::Property<bool> m_auditAlgs{this, "AuditAlgorithms", false};
258
259 Gaudi::Property<std::map<std::string, std::string>> m_environment{
260 this, "Environment", {}, "Environment variables to set"};
261
262 Gaudi::Property<bool> m_loopCheck{this, "InitializationLoopCheck", true,
263 [this]( auto& ) { this->svcManager()->setLoopCheckEnabled( m_loopCheck ); },
264 "For ServiceMgr initialization loop checking"};
265
268 Gaudi::Property<bool> m_stopOnSignal{
269 this, "StopOnSignal", false, "Flag to enable/disable the signal handler that schedule a stop of the event loop"};
270
273 Gaudi::Property<bool> m_stalledEventMonitoring{
274 this, "StalledEventMonitoring", false, "Flag to enable/disable the monitoring and reporting of stalled events"};
275
276 Gaudi::Property<bool> m_propertiesPrint{this, "PropertiesPrint", false,
277 "Flag to activate the printout of properties"};
278
280 Gaudi::Property<int> m_returnCode{this, "ReturnCode", Gaudi::ReturnCode::Success,
281 "Return code of the application. Set internally in case of error conditions."};
282
283 Gaudi::Property<bool> m_printAlgsSequence{this, "PrintAlgsSequence", false,
284 "Print the sequence of algorithms that have been loaded."};
285
286 // For concurrency
287 bool m_useHiveAlgorithmManager;
288
289 private:
290 std::vector<std::string> m_okDlls;
291 };
292 #endif // GAUDI_APPLICATIONMGR_H
ServiceManager
The ServiceManager class is in charge of the creation of concrete instances of Services.
Definition: ServiceManager.h:36
ApplicationMgr::m_targetState
Gaudi::StateMachine::State m_targetState
Internal State.
Definition: ApplicationMgr.h:204
AlgorithmManager
The AlgorithmManager class is in charge of the creation of concrete instances of Algorithms.
Definition: AlgorithmManager.h:31
ApplicationMgr::initialize
StatusCode initialize() override
Definition: ApplicationMgr.cpp:409
PropertyHolder.h
IAsyncEventProcessor.h
MsgStream
Definition of the MsgStream class used to transmit messages.
Definition: MsgStream.h:24
ApplicationMgr::m_propertiesPrint
Gaudi::Property< bool > m_propertiesPrint
Definition: ApplicationMgr.h:276
SmartIF< IComponentManager >
Kernel.h
ISvcLocator
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition: ISvcLocator.h:25
ApplicationMgr::decodeDllNameList
StatusCode decodeDllNameList()
Definition: ApplicationMgr.cpp:997
ApplicationMgr::m_printAlgsSequence
Gaudi::Property< bool > m_printAlgsSequence
Definition: ApplicationMgr.h:283
ApplicationMgr::m_returnCode
Gaudi::Property< int > m_returnCode
Property to record the error conditions occurring during the running.
Definition: ApplicationMgr.h:280
ApplicationMgr::m_stopOnSignal
Gaudi::Property< bool > m_stopOnSignal
Property to enable/disable the "stop on signal" service.
Definition: ApplicationMgr.h:268
IEventProcessor.h
ApplicationMgr::m_auditSvcs
Gaudi::Property< bool > m_auditSvcs
Definition: ApplicationMgr.h:256
ApplicationMgr::m_codeCheck
Gaudi::Property< bool > m_codeCheck
Definition: ApplicationMgr.h:240
ApplicationMgr::ManagersMap
std::map< unsigned long, SmartIF< IComponentManager > > ManagersMap
Typedef for the map of component managers, the key is the "id" field of the basic InterfaceID of the ...
Definition: ApplicationMgr.h:158
ApplicationMgr::m_evtMax
Gaudi::Property< int > m_evtMax
Definition: ApplicationMgr.h:220
ApplicationMgr::m_runable
SmartIF< IRunable > m_runable
Reference to the runable object.
Definition: ApplicationMgr.h:211
IConversionSvc
Definition: IConversionSvc.h:37
Gaudi::Property
Implementation of property with value of concrete type.
Definition: Property.h:352
IAppMgrUI.h
IDataManagerSvc
Definition: IDataManagerSvc.h:45
ISvcManager
The ISvcManager is the interface implemented by the Service Factory in the Application Manager to sup...
Definition: ISvcManager.h:28
ApplicationMgr::m_managers
ManagersMap m_managers
Map of known component managers.
Definition: ApplicationMgr.h:162
IAlgorithm.h
ApplicationMgr::sysStart
StatusCode sysStart() override
Definition: ApplicationMgr.h:93
ApplicationMgr::m_outStreamType
Gaudi::Property< std::string > m_outStreamType
Definition: ApplicationMgr.h:196
ApplicationMgr::m_jobOptionsType
Gaudi::Property< std::string > m_jobOptionsType
Definition: ApplicationMgr.h:226
ApplicationMgr::m_SIGo
Gaudi::Property< int > m_SIGo
Definition: ApplicationMgr.h:177
ApplicationMgr::m_environment
Gaudi::Property< std::map< std::string, std::string > > m_environment
Definition: ApplicationMgr.h:259
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
ApplicationMgr::outputLevelUpdate
void outputLevelUpdate() override
Function to call to update the outputLevel of the components (after a change in MessageSvc).
Definition: ApplicationMgr.cpp:1071
ApplicationMgr::m_auditAlgs
Gaudi::Property< bool > m_auditAlgs
Definition: ApplicationMgr.h:257
ApplicationMgr::m_appVersion
Gaudi::Property< std::string > m_appVersion
Definition: ApplicationMgr.h:238
std::future
ApplicationMgr::m_okDlls
std::vector< std::string > m_okDlls
names of successfully loaded dlls
Definition: ApplicationMgr.h:290
ApplicationMgr::sysRestart
StatusCode sysRestart() override
Definition: ApplicationMgr.h:101
Gaudi::StateMachine::State
State
Allowed states for classes implementing the state machine (ApplicationMgr, Algorithm,...
Definition: StateMachine.h:12
ApplicationMgr::sysFinalize
StatusCode sysFinalize() override
Definition: ApplicationMgr.h:97
ApplicationMgr::nextEvent
StatusCode nextEvent(int maxevt) override
Definition: ApplicationMgr.cpp:512
ApplicationMgr::m_jobOptionsSvc
SmartIF< IJobOptionsSvc > m_jobOptionsSvc
Reference to JobOption service.
Definition: ApplicationMgr.h:213
EventContext
This class represents an entry point to all the event specific data.
Definition: EventContext.h:24
ApplicationMgr::createSvcNameListHandler
void createSvcNameListHandler(Gaudi::Details::PropertyBase &)
Definition: ApplicationMgr.cpp:916
std::map
STL class.
ApplicationMgr::m_outStreamNameList
Gaudi::Property< std::vector< std::string > > m_outStreamNameList
Definition: ApplicationMgr.h:194
ISvcManager.h
ApplicationMgr::m_processingMgr
SmartIF< IEventProcessor > m_processingMgr
Reference to processing manager object.
Definition: ApplicationMgr.h:212
ApplicationMgr::terminate
StatusCode terminate() override
Definition: ApplicationMgr.cpp:621
ApplicationMgr::svcManager
SmartIF< ISvcManager > & svcManager()
Definition: ApplicationMgr.h:122
ApplicationMgr::getManager
SmartIF< IComponentManager > & getManager()
Definition: ApplicationMgr.h:118
ApplicationMgr::m_eventLoopMgr
Gaudi::Property< std::string > m_eventLoopMgr
Definition: ApplicationMgr.h:233
std::string
STL class.
ApplicationMgr::m_evtsel
Gaudi::Property< std::string > m_evtsel
Definition: ApplicationMgr.h:234
Service.h
ApplicationMgr::sysReinitialize
StatusCode sysReinitialize() override
Definition: ApplicationMgr.h:99
ApplicationMgr::evtLoopPropertyHandler
void evtLoopPropertyHandler(Gaudi::Details::PropertyBase &theProp)
Definition: ApplicationMgr.cpp:906
InterfaceID
Interface ID class.
Definition: IInterface.h:29
ApplicationMgr::m_outputLevel
Gaudi::Property< int > m_outputLevel
Definition: ApplicationMgr.h:236
IJobOptionsSvc
Main interface for the JobOptions service.
Definition: IJobOptionsSvc.h:20
ApplicationMgr::executeRun
StatusCode executeRun(int evtmax) override
implementation of IEventProcessor::executeRun(int)
Definition: ApplicationMgr.cpp:821
ApplicationMgr::m_topAlgNameList
Gaudi::Property< std::vector< std::string > > m_topAlgNameList
Definition: ApplicationMgr.h:192
ApplicationMgr::extSvcNameListHandler
void extSvcNameListHandler(Gaudi::Details::PropertyBase &theProp)
Definition: ApplicationMgr.cpp:949
ApplicationMgr::m_svcLocator
SmartIF< ISvcLocator > m_svcLocator
Reference to its own service locator (must be instantiated prior to any service!)
Definition: ApplicationMgr.h:173
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
IInterface
Definition of the basic interface.
Definition: IInterface.h:244
ApplicationMgr::createEventContext
EventContext createEventContext() override
implementation of IEventProcessor::createEventContext()
Definition: ApplicationMgr.cpp:810
CommonMessaging.h
ApplicationMgr::m_extSvcNameList
Gaudi::Property< std::vector< std::string > > m_extSvcNameList
Definition: ApplicationMgr.h:221
IMessageSvc
The IMessage is the interface implemented by the message service.
Definition: IMessageSvc.h:37
ApplicationMgr::dllNameListHandler
void dllNameListHandler(Gaudi::Details::PropertyBase &theProp)
Definition: ApplicationMgr.cpp:988
ApplicationMgr::executeEvent
StatusCode executeEvent(EventContext &&ctx) override
implementation of IEventProcessor::executeEvent(void*)
Definition: ApplicationMgr.cpp:787
ApplicationMgr::m_runableType
Gaudi::Property< std::string > m_runableType
Definition: ApplicationMgr.h:232
ApplicationMgr::m_declaredManagers
Gaudi::Property< std::vector< std::string > > m_declaredManagers
Property to declare the list of known managers.
Definition: ApplicationMgr.h:164
compareRootHistos.state
def state
Definition: compareRootHistos.py:455
DLLClassManager
Definition: DLLClassManager.h:28
ApplicationMgr::asyncExecuteEvent
std::future< std::tuple< StatusCode, EventContext > > asyncExecuteEvent(EventContext &&ctx) override
Definition: ApplicationMgr.cpp:796
ApplicationMgr::sysStop
StatusCode sysStop() override
Definition: ApplicationMgr.h:95
ApplicationMgr::serviceLocator
SmartIF< ISvcLocator > & serviceLocator() const override
Needed to locate the message service.
Definition: ApplicationMgr.h:135
ApplicationMgr::m_SIExit
Gaudi::Property< int > m_SIExit
Definition: ApplicationMgr.h:185
ApplicationMgr::m_asyncProcessor
SmartIF< IAsyncEventProcessor > m_asyncProcessor
Reference to an asynchronous processing manager object.
Definition: ApplicationMgr.h:215
ApplicationMgr::m_stalledEventMonitoring
Gaudi::Property< bool > m_stalledEventMonitoring
Property to enable/disable the monitoring and reporting of stalled events.
Definition: ApplicationMgr.h:273
Gaudi::Details::PropertyBase
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
Definition: Property.h:32
ApplicationMgr::m_svcManager
SmartIF< ISvcManager > m_svcManager
Cached pointer to the manager of services.
Definition: ApplicationMgr.h:167
ApplicationMgr::GoToState
StatusCode GoToState(Gaudi::StateMachine::State state, bool ignoreFailures=false)
Reach a state from current state (whichever it is) going through the correct transitions.
Definition: ApplicationMgr.cpp:675
ApplicationMgr::finalize
StatusCode finalize() override
Definition: ApplicationMgr.cpp:572
ApplicationMgr::m_svcOptMapping
Gaudi::Property< std::vector< std::string > > m_svcOptMapping
Definition: ApplicationMgr.h:207
IStateful.h
ApplicationMgr::m_jobOptionsPreAction
Gaudi::Property< std::string > m_jobOptionsPreAction
Definition: ApplicationMgr.h:228
ApplicationMgr::m_svcMapping
Gaudi::Property< std::vector< std::string > > m_svcMapping
Definition: ApplicationMgr.h:206
ApplicationMgr::m_dllNameList
Gaudi::Property< std::vector< std::string > > m_dllNameList
Definition: ApplicationMgr.h:225
ApplicationMgr
The Application Manager class.
Definition: ApplicationMgr.h:45
ApplicationMgr::m_actHistory
Gaudi::Property< bool > m_actHistory
Definition: ApplicationMgr.h:239
AppReturnCode.h
ApplicationMgr::queryInterface
StatusCode queryInterface(const InterfaceID &iid, void **pinterface) override
Definition: ApplicationMgr.cpp:85
ApplicationMgr::decodeExtSvcNameList
StatusCode decodeExtSvcNameList()
Definition: ApplicationMgr.cpp:959
StatusCode::ignore
const StatusCode & ignore() const
Ignore/check StatusCode.
Definition: StatusCode.h:153
IProperty.h
ApplicationMgr::m_extSvcCreates
Gaudi::Property< bool > m_extSvcCreates
Definition: ApplicationMgr.h:222
ApplicationMgr::m_auditTools
Gaudi::Property< bool > m_auditTools
Defaults for auditors.
Definition: ApplicationMgr.h:255
std::vector< std::string >
ApplicationMgr::m_classManager
SmartIF< DLLClassManager > m_classManager
Reference to the class manager.
Definition: ApplicationMgr.h:175
ApplicationMgr::m_jobOptionsSvcType
Gaudi::Property< std::string > m_jobOptionsSvcType
Definition: ApplicationMgr.h:200
ApplicationMgr::start
StatusCode start() override
Definition: ApplicationMgr.cpp:470
ApplicationMgr::m_createSvcNameList
Gaudi::Property< std::vector< std::string > > m_createSvcNameList
Definition: ApplicationMgr.h:251
ApplicationMgr::restart
StatusCode restart() override
Definition: ApplicationMgr.cpp:883
ApplicationMgr::configure
StatusCode configure() override
Definition: ApplicationMgr.cpp:221
ApplicationMgr::ApplicationMgr
ApplicationMgr(IInterface *=nullptr)
Definition: ApplicationMgr.cpp:48
IComponentManager.h
ApplicationMgr::pluginDebugPropertyHandler
void pluginDebugPropertyHandler(Gaudi::Details::PropertyBase &theProp)
ApplicationMgr::stopRun
StatusCode stopRun() override
implementation of IEventProcessor::stopRun()
Definition: ApplicationMgr.cpp:835
ApplicationMgr::decodeCreateSvcNameList
StatusCode decodeCreateSvcNameList()
Definition: ApplicationMgr.cpp:925
ApplicationMgr::printAlgsSequences
void printAlgsSequences()
Print the sequence of algorithms that have been loaded.
Definition: ApplicationMgr.cpp:1097
ApplicationMgr::m_jobOptionsPostAction
Gaudi::Property< std::string > m_jobOptionsPostAction
Definition: ApplicationMgr.h:230
IRunable
Runable interface definition.
Definition: IRunable.h:18
PropertyHolder
Helper class to implement the IProperty interface.
Definition: PropertyHolder.h:71
ApplicationMgr::m_algManager
SmartIF< IAlgManager > m_algManager
Cached pointer to the manager of algorithms.
Definition: ApplicationMgr.h:170
ApplicationMgr::i_startup
StatusCode i_startup()
Internal startup routine.
Definition: ApplicationMgr.cpp:111
ApplicationMgr::stop
StatusCode stop() override
Definition: ApplicationMgr.cpp:529
ApplicationMgr::m_name
std::string m_name
Name.
Definition: ApplicationMgr.h:202
IAlgManager.h
ApplicationMgr::m_messageSvcType
Gaudi::Property< std::string > m_messageSvcType
Definition: ApplicationMgr.h:199
ApplicationMgr::reinitialize
StatusCode reinitialize() override
Definition: ApplicationMgr.cpp:856
ApplicationMgr::m_state
Gaudi::StateMachine::State m_state
Internal State.
Definition: ApplicationMgr.h:203
ApplicationMgr::FSMState
Gaudi::StateMachine::State FSMState() const override
Definition: ApplicationMgr.cpp:849
ApplicationMgr::m_appName
Gaudi::Property< std::string > m_appName
Definition: ApplicationMgr.h:237
ApplicationMgr::m_histPersName
Gaudi::Property< std::string > m_histPersName
Definition: ApplicationMgr.h:235
ISvcManager::setLoopCheckEnabled
virtual void setLoopCheckEnabled(bool en=true)=0
Set the value of the initialization loop check flag.
maxevt
int maxevt
Definition: Bootstrap.cpp:260
Gaudi::ReturnCode::Success
constexpr int Success
Definition: AppReturnCode.h:16
ApplicationMgr::run
StatusCode run() override
Definition: ApplicationMgr.cpp:761
MSG::INFO
Definition: IMessageSvc.h:15
Gaudi::StateMachine::OFFLINE
Definition: StateMachine.h:13
Gaudi::PluginService::v1::SetDebug
GAUDIPS_API void SetDebug(int debugLevel)
Backward compatibility with Reflex.
Definition: PluginServiceV1.cpp:329
ApplicationMgr::algManager
SmartIF< IAlgManager > & algManager()
Definition: ApplicationMgr.h:128
ApplicationMgr::name
const std::string & name() const override
Definition: ApplicationMgr.cpp:846
ApplicationMgr::setServiceManager
void setServiceManager(ISvcManager *) override
Definition: ApplicationMgr.h:145
ApplicationMgr::m_messageSvc
SmartIF< IMessageSvc > m_messageSvc
Reference to the message service.
Definition: ApplicationMgr.h:210
ApplicationMgr::sysInitialize
StatusCode sysInitialize() override
Definition: ApplicationMgr.h:91
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:192
ApplicationMgr::m_pluginDebugLevel
Gaudi::Property< int > m_pluginDebugLevel
Definition: ApplicationMgr.h:241
ApplicationMgr::m_jobOptionsPath
Gaudi::Property< std::string > m_jobOptionsPath
Definition: ApplicationMgr.h:227
IIncidentSvc
The interface implemented by the IncidentSvc service.
Definition: IIncidentSvc.h:23
ApplicationMgr::m_useHiveAlgorithmManager
bool m_useHiveAlgorithmManager
Definition: ApplicationMgr.h:287
ApplicationMgr::targetFSMState
Gaudi::StateMachine::State targetFSMState() const override
Definition: ApplicationMgr.cpp:851
Gaudi.Configuration.log
log
Definition: Configuration.py:13
ApplicationMgr::m_loopCheck
Gaudi::Property< bool > m_loopCheck
Definition: ApplicationMgr.h:262