The Gaudi Framework  master (37c0b60a)
ApplicationMgr.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2024 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 #ifndef GAUDI_APPLICATIONMGR_H
12 #define GAUDI_APPLICATIONMGR_H
13 
15 #include <Gaudi/MonitoringHub.h>
19 #include <GaudiKernel/IAlgorithm.h>
20 #include <GaudiKernel/IAppMgrUI.h>
23 #include <GaudiKernel/IProperty.h>
24 #include <GaudiKernel/IStateful.h>
26 #include <GaudiKernel/Kernel.h>
28 #include <GaudiKernel/Service.h>
29 #include <vector>
30 
31 // Forward declarations
32 class ISvcLocator;
33 class ServiceManager;
34 class AlgorithmManager;
35 class DLLClassManager;
36 
37 class IMessageSvc;
38 class IIncidentSvc;
39 class IRunable;
40 class IDataManagerSvc;
41 class IConversionSvc;
42 
56  : public PropertyHolder<CommonMessaging<implements<IAppMgrUI, Gaudi::Interfaces::IQueueingEventProcessor, IService,
57  IStateful, INamedInterface, IProperty>>> {
58 public:
59  // default creator
60  ApplicationMgr( IInterface* = nullptr );
61 
62  // implementation of IInterface::queryInterface
63  StatusCode queryInterface( const InterfaceID& iid, void** pinterface ) override;
64 
65  // implementation of IAppMgrUI::run
66  StatusCode run() override;
67  // implementation of IAppMgrUI::configure
68  StatusCode configure() override;
69  // implementation of IAppMgrUI::terminate
70  StatusCode terminate() override;
71  // implementation of IAppMgrUI::initialize
72  StatusCode initialize() override;
73  // implementation of IAppMgrUI::start
74  StatusCode start() override;
75  // implementation of IAppMgrUI::stop
76  StatusCode stop() override;
77  // implementation of IAppMgrUI::finalize
78  StatusCode finalize() override;
79  // implementation of IAppMgrUI::nextEvent
80  StatusCode nextEvent( int maxevt ) override;
81  // implementation of IAppMgrUI::name
82  const std::string& name() const override;
88  StatusCode executeRun( int evtmax ) override;
90  StatusCode stopRun() override;
91 
92  // implementation of IStateful::state
93  Gaudi::StateMachine::State FSMState() const override;
94  // implementation of IStateful::targetState
96  // implementation of IStateful::reinitialize
97  StatusCode reinitialize() override;
98  // implementation of IStateful::reinitialize
99  StatusCode restart() override;
100  // implementation of IService::sysItinitilaize
102  // implementation of IService::sysStart
103  StatusCode sysStart() override { return StatusCode::SUCCESS; }
104  // implementation of IService::sysStop
105  StatusCode sysStop() override { return StatusCode::SUCCESS; }
106  // implementation of IService::sysFinalize
108  // implementation of IService::sysReinitialize
110  // implementation of IService::sysRestart
112 
114  void push( EventContext&& ctx ) override;
115  bool empty() const override;
116  std::optional<Gaudi::Interfaces::IQueueingEventProcessor::ResultType> pop() override;
118 
120 
130 
131  template <class I>
133  return m_managers[I::interfaceID().id()];
134  }
135 
137  // Cache the casted pointer to ISvcManager
138  if ( !m_svcManager ) { m_svcManager = getManager<IService>(); }
139  return m_svcManager;
140  }
141 
143  // Cache the casted pointer to IAlgManager
144  if ( !m_algManager ) { m_algManager = getManager<IAlgorithm>(); }
145  return m_algManager;
146  }
147 
149  SmartIF<ISvcLocator>& serviceLocator() const override { return m_svcLocator; }
150 
152  void outputLevelUpdate() override;
153 
155 
157  void printAlgsSequences();
158 
159 protected:
160  // implementation of IService::setServiceManager
161  void setServiceManager( ISvcManager* ) override {}
162 
165 
170  StatusCode GoToState( Gaudi::StateMachine::State state, bool ignoreFailures = false );
171 
181 
184 
187 
188  // data members
192 
193  Gaudi::Property<int> m_SIGo{ this, "Go", 0,
194  [this]( auto& ) {
195  // Re-initialize everything
196  this->reinitialize().ignore();
197  // Execute a number of events
198  this->executeRun( m_evtMax ).ignore();
199  },
200  "For SI's \"Go\" command via callback" };
201  Gaudi::Property<int> m_SIExit{ this, "Exit", 0,
202  [this]( auto& ) {
203  finalize().ignore();
204  terminate().ignore();
205  ::exit( 0 );
206  },
207  "For SI's \"Exit\" command via callback" };
209  "TopAlg",
210  {},
212  "List of top level algorithms names",
213  "vector<Algorithm>" };
215  this, "OutStream", {}, &ApplicationMgr::evtLoopPropertyHandler, "List of output stream names" };
216  Gaudi::Property<std::string> m_messageSvcType{ this, "MessageSvcType", "MessageSvc", "MessageSvc type",
217  "Service:IMessageSvc" };
218  Gaudi::Property<std::string> m_jobOptionsSvcType{ this, "JobOptionsSvcType", "JobOptionsSvc", "JobOptionsSvc type",
219  "Service:Gaudi::Interfaces::IOptionsSvc" };
220 
221  std::string m_name = "ApplicationMgr";
224 
225  Gaudi::Property<std::vector<std::string>> m_svcMapping{ this, "SvcMapping", {}, "Default mapping of services" };
227  this, "SvcOptMapping", {}, "Default mapping of optional services" };
228 
232 
234 
236 
237  //
238  // The public ApplicationMgr properties
239  //
240 
241  Gaudi::Property<int> m_evtMax{ this, "EvtMax", -1, "Number of events to be processed (-1 means all events)" };
243  this, "ExtSvc", {}, "List of external services names", "vector<Service>" };
244  Gaudi::Property<bool> m_extSvcCreates{ this, "ExtSvcCreates", true,
245  "LHCb (default) or ATLAS definition of \"ExtSvc\"" };
246 
247  Gaudi::Property<std::vector<std::string>> m_dllNameList{ this, "Dlls", {}, "List of DDL's names" };
248  Gaudi::Property<std::string> m_jobOptionsType{ this, "JobOptionsType", "FILE", "Source type (e.g. dbase, file...)" };
249  Gaudi::Property<std::string> m_jobOptionsPath{ this, "JobOptionsPath", {}, "The \"file\" to look for properties" };
251  this, "JobOptionsPostAction", {}, "additional command to run on config" };
253  this, "JobOptionsPreAction", {}, "additional command to run on config" };
254  Gaudi::Property<std::string> m_runableType{ this, "Runable", "AppMgrRunable", "Runable type", "Service:IRunable" };
255  Gaudi::Property<std::string> m_eventLoopMgr{ this, "EventLoop", "EventLoopMgr", "Processing manager type",
256  "Service:IEventProcessor" };
257  Gaudi::Property<std::string> m_evtsel{ this, "EvtSel", {}, "Event selection" };
258  Gaudi::Property<std::string> m_histPersName{ this, "HistogramPersistency", "NONE", "Name of the Hist Pers Svc" };
259  Gaudi::Property<int> m_outputLevel{ this, "OutputLevel", MSG::INFO, "Message output level" };
260  Gaudi::Property<std::string> m_appName{ this, "AppName", "ApplicationMgr", "The name of the application" };
261  Gaudi::Property<std::string> m_appVersion{ this, "AppVersion", {}, "The version of the application" };
262  Gaudi::Property<bool> m_actHistory{ this, "ActivateHistory", false, "Activate HistorySvc" };
263  Gaudi::Property<int> m_pluginDebugLevel{ this, "PluginDebugLevel", 0,
264  [this]( auto& ) {
265  // Setup debug level for the plugin system
266  if ( m_pluginDebugLevel.value() ) {
267  MsgStream log( m_messageSvc, this->name() );
268  log << MSG::INFO
269  << "Updating Gaudi::PluginService::SetDebug(level) to level="
271  }
273  },
274  "Debug level for the plugin system" };
275 
277  this, "CreateSvc", {}, "List of extra services to be created" };
278 
280  Gaudi::Property<bool> m_auditTools{ this, "AuditTools", false };
281  Gaudi::Property<bool> m_auditSvcs{ this, "AuditServices", false };
282  Gaudi::Property<bool> m_auditAlgs{ this, "AuditAlgorithms", false };
283 
285  this, "Environment", {}, "Environment variables to set" };
286 
287  Gaudi::Property<bool> m_loopCheck{ this, "InitializationLoopCheck", true,
288  [this]( auto& ) { this->svcManager()->setLoopCheckEnabled( m_loopCheck ); },
289  "For ServiceMgr initialization loop checking" };
290 
294  this, "StopOnSignal", false, "Flag to enable/disable the signal handler that schedule a stop of the event loop" };
295 
296  Gaudi::Property<bool> m_propertiesPrint{ this, "PropertiesPrint", false,
297  "Flag to activate the printout of properties" };
298 
301  "Return code of the application. Set internally in case of error conditions." };
302 
303  Gaudi::Property<bool> m_printAlgsSequence{ this, "PrintAlgsSequence", false,
304  "Print the sequence of algorithms that have been loaded." };
305 
306  Gaudi::Property<bool> m_useMessageSvcForROOTMessages{ this, "UseMessageSvcForROOTMessages", true,
307  "Replace ROOT error handler with MessageSvc." };
308 
309  // For concurrency
311 
312 private:
314 
316  template <typename SELF, typename PIMPL, typename METHOD, typename... ARGS>
317  static auto i_delegateToEvtProc( SELF* self, PIMPL& member, std::string_view method_name, METHOD&& method,
318  ARGS&&... args ) {
319  if ( self->m_state == Gaudi::StateMachine::RUNNING ) {
320  if ( bool( member ) ) {
321  return std::invoke( method, *member.get(), std::forward<ARGS>( args )... );
322  } else {
324  s << method_name << ": event processor is not a \""
325  << System::typeinfoName( typeid( decltype( *member.get() ) ) ) << '"';
326  throw GaudiException{ s.str(), self->name(), StatusCode::FAILURE };
327  }
328  }
330  s << method_name << ": Invalid state \"" << self->FSMState() << '"';
331  throw GaudiException{ s.str(), self->name(), StatusCode::FAILURE };
332  }
333 };
334 #endif // GAUDI_APPLICATIONMGR_H
ApplicationMgr::printAlgsSequences
void printAlgsSequences()
Print the sequence of algorithms that have been loaded.
Definition: ApplicationMgr.cpp:1108
Gaudi::ReturnCode::Success
constexpr int Success
Definition: AppReturnCode.h:26
Gaudi::Details::PropertyBase
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
Definition: PropertyBase.h:35
ApplicationMgr::m_auditTools
Gaudi::Property< bool > m_auditTools
Defaults for auditors.
Definition: ApplicationMgr.h:280
ApplicationMgr::m_algManager
SmartIF< IAlgManager > m_algManager
Cached pointer to the manager of algorithms.
Definition: ApplicationMgr.h:186
ApplicationMgr::sysInitialize
StatusCode sysInitialize() override
Definition: ApplicationMgr.h:101
IAlgManager.h
std::string
STL class.
ApplicationMgr::m_propertiesPrint
Gaudi::Property< bool > m_propertiesPrint
Definition: ApplicationMgr.h:296
IMessageSvc
Definition: IMessageSvc.h:47
Gaudi.Configuration.log
log
Definition: Configuration.py:28
ApplicationMgr::empty
bool empty() const override
Definition: ApplicationMgr.cpp:813
AppReturnCode.h
IDataManagerSvc
Definition: IDataManagerSvc.h:55
ApplicationMgr::decodeDllNameList
StatusCode decodeDllNameList()
Definition: ApplicationMgr.cpp:1008
MSG::INFO
@ INFO
Definition: IMessageSvc.h:25
MonitoringHub.h
ApplicationMgr::outputLevelUpdate
void outputLevelUpdate() override
Function to call to update the outputLevel of the components (after a change in MessageSvc).
Definition: ApplicationMgr.cpp:1082
ApplicationMgr::run
StatusCode run() override
Definition: ApplicationMgr.cpp:773
ApplicationMgr::m_runable
SmartIF< IRunable > m_runable
Reference to the runable object.
Definition: ApplicationMgr.h:230
ApplicationMgr::i_startup
StatusCode i_startup()
Internal startup routine.
Definition: ApplicationMgr.cpp:150
ApplicationMgr::stop
StatusCode stop() override
Definition: ApplicationMgr.cpp:543
ApplicationMgr::m_name
std::string m_name
Name.
Definition: ApplicationMgr.h:221
gaudirun.s
string s
Definition: gaudirun.py:346
ApplicationMgr::m_messageSvcType
Gaudi::Property< std::string > m_messageSvcType
Definition: ApplicationMgr.h:216
std::vector< std::string >
ApplicationMgr::name
const std::string & name() const override
Definition: ApplicationMgr.cpp:857
ISvcLocator
Definition: ISvcLocator.h:46
GaudiException
Definition: GaudiException.h:31
ApplicationMgr::sysFinalize
StatusCode sysFinalize() override
Definition: ApplicationMgr.h:107
IQueueingEventProcessor.h
ApplicationMgr::FSMState
Gaudi::StateMachine::State FSMState() const override
Definition: ApplicationMgr.cpp:860
ApplicationMgr::sysStop
StatusCode sysStop() override
Definition: ApplicationMgr.h:105
ApplicationMgr::m_stopOnSignal
Gaudi::Property< bool > m_stopOnSignal
Property to enable/disable the "stop on signal" service.
Definition: ApplicationMgr.h:293
ServiceManager
Definition: ServiceManager.h:46
std::stringstream
STL class.
ApplicationMgr::m_okDlls
std::vector< std::string > m_okDlls
names of successfully loaded dlls
Definition: ApplicationMgr.h:313
ApplicationMgr::createEventContext
EventContext createEventContext() override
implementation of IEventProcessor::createEventContext()
Definition: ApplicationMgr.cpp:821
System::typeinfoName
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
Definition: System.cpp:315
PropertyHolder
Helper class to implement the IProperty interface.
Definition: PropertyHolder.h:82
ISvcManager
Definition: ISvcManager.h:38
ApplicationMgr::i_delegateToEvtProc
static auto i_delegateToEvtProc(SELF *self, PIMPL &member, std::string_view method_name, METHOD &&method, ARGS &&... args)
Helper to delegate calls to event processor implementation.
Definition: ApplicationMgr.h:317
IAppMgrUI.h
ApplicationMgr::terminate
StatusCode terminate() override
Definition: ApplicationMgr.cpp:625
ApplicationMgr::executeRun
StatusCode executeRun(int evtmax) override
implementation of IEventProcessor::executeRun(int)
Definition: ApplicationMgr.cpp:832
ApplicationMgr::finalize
StatusCode finalize() override
Definition: ApplicationMgr.cpp:578
ApplicationMgr::m_jobOptionsSvcType
Gaudi::Property< std::string > m_jobOptionsSvcType
Definition: ApplicationMgr.h:218
ApplicationMgr::nextEvent
StatusCode nextEvent(int maxevt) override
Definition: ApplicationMgr.cpp:526
ApplicationMgr::ApplicationMgr
ApplicationMgr(IInterface *=nullptr)
Definition: ApplicationMgr.cpp:87
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:174
ApplicationMgr::createSvcNameListHandler
void createSvcNameListHandler(Gaudi::Details::PropertyBase &)
Definition: ApplicationMgr.cpp:927
AlgorithmManager
Definition: AlgorithmManager.h:42
DLLClassManager
Definition: DLLClassManager.h:38
ApplicationMgr::svcManager
SmartIF< ISvcManager > & svcManager()
Definition: ApplicationMgr.h:136
ApplicationMgr::m_dllNameList
Gaudi::Property< std::vector< std::string > > m_dllNameList
Definition: ApplicationMgr.h:247
ApplicationMgr::m_auditAlgs
Gaudi::Property< bool > m_auditAlgs
Definition: ApplicationMgr.h:282
Gaudi::StateMachine::State
State
Allowed states for classes implementing the state machine (ApplicationMgr, Algorithm,...
Definition: StateMachine.h:22
ApplicationMgr::getManager
SmartIF< IComponentManager > & getManager()
Definition: ApplicationMgr.h:132
ApplicationMgr::dllNameListHandler
void dllNameListHandler(Gaudi::Details::PropertyBase &theProp)
Definition: ApplicationMgr.cpp:999
GaudiPython.Pythonizations.self
self
Definition: Pythonizations.py:578
ApplicationMgr::m_returnCode
Gaudi::Property< int > m_returnCode
Property to record the error conditions occurring during the running.
Definition: ApplicationMgr.h:300
GaudiPython.Pythonizations.ctx
ctx
Definition: Pythonizations.py:578
StatusCode
Definition: StatusCode.h:65
ApplicationMgr::restart
StatusCode restart() override
Definition: ApplicationMgr.cpp:894
ApplicationMgr::configure
StatusCode configure() override
Definition: ApplicationMgr.cpp:271
ApplicationMgr::m_jobOptionsPostAction
Gaudi::Property< std::string > m_jobOptionsPostAction
Definition: ApplicationMgr.h:252
ApplicationMgr::m_histPersName
Gaudi::Property< std::string > m_histPersName
Definition: ApplicationMgr.h:258
Gaudi::StateMachine::OFFLINE
@ OFFLINE
Definition: StateMachine.h:23
ApplicationMgr::m_evtsel
Gaudi::Property< std::string > m_evtsel
Definition: ApplicationMgr.h:257
ApplicationMgr::m_jobOptionsPreAction
Gaudi::Property< std::string > m_jobOptionsPreAction
Definition: ApplicationMgr.h:250
ApplicationMgr::pop
std::optional< Gaudi::Interfaces::IQueueingEventProcessor::ResultType > pop() override
Definition: ApplicationMgr.cpp:817
Gaudi::Property::value
const ValueType & value() const
Definition: Property.h:237
ApplicationMgr::m_declaredManagers
Gaudi::Property< std::vector< std::string > > m_declaredManagers
Property to declare the list of known managers.
Definition: ApplicationMgr.h:180
ApplicationMgr::m_svcLocator
SmartIF< ISvcLocator > m_svcLocator
Reference to its own service locator (must be instantiated prior to any service!)
Definition: ApplicationMgr.h:189
ApplicationMgr::m_appVersion
Gaudi::Property< std::string > m_appVersion
Definition: ApplicationMgr.h:261
ApplicationMgr::sysReinitialize
StatusCode sysReinitialize() override
Definition: ApplicationMgr.h:109
ApplicationMgr::m_jobOptionsType
Gaudi::Property< std::string > m_jobOptionsType
Definition: ApplicationMgr.h:248
ApplicationMgr::sysRestart
StatusCode sysRestart() override
Definition: ApplicationMgr.h:111
IStateful.h
ApplicationMgr::m_svcManager
SmartIF< ISvcManager > m_svcManager
Cached pointer to the manager of services.
Definition: ApplicationMgr.h:183
ApplicationMgr::executeEvent
StatusCode executeEvent(EventContext &&ctx) override
implementation of IEventProcessor::executeEvent(void*)
Definition: ApplicationMgr.cpp:799
SmartIF< IComponentManager >
ApplicationMgr::m_runableType
Gaudi::Property< std::string > m_runableType
Definition: ApplicationMgr.h:254
CommonMessaging.h
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:202
ApplicationMgr::targetFSMState
Gaudi::StateMachine::State targetFSMState() const override
Definition: ApplicationMgr.cpp:862
ApplicationMgr::monitoringHub
Gaudi::Monitoring::Hub & monitoringHub() override
Definition: ApplicationMgr.h:154
std::map
STL class.
ApplicationMgr::m_topAlgNameList
Gaudi::Property< std::vector< std::string > > m_topAlgNameList
Definition: ApplicationMgr.h:208
ApplicationMgr::pluginDebugPropertyHandler
void pluginDebugPropertyHandler(Gaudi::Details::PropertyBase &theProp)
ApplicationMgr::m_processingMgr
SmartIF< IEventProcessor > m_processingMgr
Reference to processing manager object.
Definition: ApplicationMgr.h:231
IRunable
Definition: IRunable.h:28
Gaudi::StateMachine::RUNNING
@ RUNNING
Definition: StateMachine.h:26
MsgStream
Definition: MsgStream.h:33
ApplicationMgr::m_svcMapping
Gaudi::Property< std::vector< std::string > > m_svcMapping
Definition: ApplicationMgr.h:225
Gaudi::PluginService::v1::SetDebug
GAUDIPS_API void SetDebug(int debugLevel)
Backward compatibility with Reflex.
Definition: PluginServiceV1.cpp:323
ApplicationMgr::m_svcOptMapping
Gaudi::Property< std::vector< std::string > > m_svcOptMapping
Definition: ApplicationMgr.h:226
ApplicationMgr::decodeExtSvcNameList
StatusCode decodeExtSvcNameList()
Definition: ApplicationMgr.cpp:970
ApplicationMgr::m_extSvcNameList
Gaudi::Property< std::vector< std::string > > m_extSvcNameList
Definition: ApplicationMgr.h:242
ApplicationMgr::m_eventLoopMgr
Gaudi::Property< std::string > m_eventLoopMgr
Definition: ApplicationMgr.h:255
StatusCode::ignore
const StatusCode & ignore() const
Allow discarding a StatusCode without warning.
Definition: StatusCode.h:139
Service.h
ApplicationMgr::m_extSvcCreates
Gaudi::Property< bool > m_extSvcCreates
Definition: ApplicationMgr.h:244
ApplicationMgr::m_useMessageSvcForROOTMessages
Gaudi::Property< bool > m_useMessageSvcForROOTMessages
Definition: ApplicationMgr.h:306
ApplicationMgr::m_createSvcNameList
Gaudi::Property< std::vector< std::string > > m_createSvcNameList
Definition: ApplicationMgr.h:276
ApplicationMgr::m_actHistory
Gaudi::Property< bool > m_actHistory
Definition: ApplicationMgr.h:262
ApplicationMgr::serviceLocator
SmartIF< ISvcLocator > & serviceLocator() const override
Needed to locate the message service.
Definition: ApplicationMgr.h:149
ApplicationMgr::m_SIExit
Gaudi::Property< int > m_SIExit
Definition: ApplicationMgr.h:201
ApplicationMgr::m_monitoringHub
Gaudi::Monitoring::Hub m_monitoringHub
Definition: ApplicationMgr.h:235
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:100
ApplicationMgr::decodeCreateSvcNameList
StatusCode decodeCreateSvcNameList()
Definition: ApplicationMgr.cpp:936
ApplicationMgr::m_appName
Gaudi::Property< std::string > m_appName
Definition: ApplicationMgr.h:260
gaudirun.args
args
Definition: gaudirun.py:336
IComponentManager.h
ApplicationMgr
Definition: ApplicationMgr.h:57
ApplicationMgr::stopRun
StatusCode stopRun() override
implementation of IEventProcessor::stopRun()
Definition: ApplicationMgr.cpp:846
Kernel.h
IInterface
Definition: IInterface.h:239
ApplicationMgr::evtLoopPropertyHandler
void evtLoopPropertyHandler(Gaudi::Details::PropertyBase &theProp)
Definition: ApplicationMgr.cpp:917
EventContext
Definition: EventContext.h:34
ApplicationMgr::m_queueingProcessor
SmartIF< IQueueingEventProcessor > m_queueingProcessor
Reference to a queueing processing manager object.
Definition: ApplicationMgr.h:233
ApplicationMgr::m_outputLevel
Gaudi::Property< int > m_outputLevel
Definition: ApplicationMgr.h:259
ApplicationMgr::queryInterface
StatusCode queryInterface(const InterfaceID &iid, void **pinterface) override
Definition: ApplicationMgr.cpp:124
ApplicationMgr::m_messageSvc
SmartIF< IMessageSvc > m_messageSvc
Reference to the message service.
Definition: ApplicationMgr.h:229
ApplicationMgr::m_managers
ManagersMap m_managers
Map of known component managers.
Definition: ApplicationMgr.h:178
ApplicationMgr::m_state
Gaudi::StateMachine::State m_state
Internal State.
Definition: ApplicationMgr.h:222
ApplicationMgr::sysStart
StatusCode sysStart() override
Definition: ApplicationMgr.h:103
ApplicationMgr::m_jobOptionsPath
Gaudi::Property< std::string > m_jobOptionsPath
Definition: ApplicationMgr.h:249
ApplicationMgr::m_printAlgsSequence
Gaudi::Property< bool > m_printAlgsSequence
Definition: ApplicationMgr.h:303
ApplicationMgr::m_useHiveAlgorithmManager
bool m_useHiveAlgorithmManager
Definition: ApplicationMgr.h:310
IProperty.h
ApplicationMgr::extSvcNameListHandler
void extSvcNameListHandler(Gaudi::Details::PropertyBase &theProp)
Definition: ApplicationMgr.cpp:960
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:687
InterfaceID
Definition: IInterface.h:39
IAlgorithm.h
ApplicationMgr::reinitialize
StatusCode reinitialize() override
Definition: ApplicationMgr.cpp:867
ApplicationMgr::m_loopCheck
Gaudi::Property< bool > m_loopCheck
Definition: ApplicationMgr.h:287
Gaudi::Monitoring::Hub
Central entity in a Gaudi application that manages monitoring objects (i.e.
Definition: MonitoringHub.h:50
StatusCode::FAILURE
constexpr static const auto FAILURE
Definition: StatusCode.h:101
ApplicationMgr::m_environment
Gaudi::Property< std::map< std::string, std::string > > m_environment
Definition: ApplicationMgr.h:284
compareRootHistos.state
state
Definition: compareRootHistos.py:496
ApplicationMgr::setServiceManager
void setServiceManager(ISvcManager *) override
Definition: ApplicationMgr.h:161
IIncidentSvc
Definition: IIncidentSvc.h:33
PropertyHolder.h
ApplicationMgr::m_pluginDebugLevel
Gaudi::Property< int > m_pluginDebugLevel
Definition: ApplicationMgr.h:263
ApplicationMgr::algManager
SmartIF< IAlgManager > & algManager()
Definition: ApplicationMgr.h:142
IEventProcessor.h
ApplicationMgr::m_SIGo
Gaudi::Property< int > m_SIGo
Definition: ApplicationMgr.h:193
Gaudi::Property
Implementation of property with value of concrete type.
Definition: Property.h:37
ApplicationMgr::m_classManager
SmartIF< DLLClassManager > m_classManager
Reference to the class manager.
Definition: ApplicationMgr.h:191
ApplicationMgr::push
void push(EventContext &&ctx) override
Definition: ApplicationMgr.cpp:808
ISvcManager.h
ApplicationMgr::start
StatusCode start() override
Definition: ApplicationMgr.cpp:492
ApplicationMgr::m_auditSvcs
Gaudi::Property< bool > m_auditSvcs
Definition: ApplicationMgr.h:281
ApplicationMgr::m_evtMax
Gaudi::Property< int > m_evtMax
Definition: ApplicationMgr.h:241
ApplicationMgr::m_outStreamNameList
Gaudi::Property< std::vector< std::string > > m_outStreamNameList
Definition: ApplicationMgr.h:214
ApplicationMgr::m_targetState
Gaudi::StateMachine::State m_targetState
Internal State.
Definition: ApplicationMgr.h:223
ApplicationMgr::initialize
StatusCode initialize() override
Definition: ApplicationMgr.cpp:440
IConversionSvc
Definition: IConversionSvc.h:47