#include </builds/gaudi/Gaudi/GaudiCoreSvc/src/ApplicationMgr/ApplicationMgr.h>
|
| ApplicationMgr (IInterface *=nullptr) |
|
StatusCode | queryInterface (const InterfaceID &iid, void **pinterface) override |
|
StatusCode | run () override |
|
StatusCode | configure () override |
|
StatusCode | terminate () override |
|
StatusCode | initialize () override |
|
StatusCode | start () override |
|
StatusCode | stop () override |
|
StatusCode | finalize () override |
|
StatusCode | nextEvent (int maxevt) override |
|
const std::string & | name () const override |
|
EventContext | createEventContext () override |
| implementation of IEventProcessor::createEventContext() More...
|
|
StatusCode | executeEvent (EventContext &&ctx) override |
| implementation of IEventProcessor::executeEvent(void*) More...
|
|
StatusCode | executeRun (int evtmax) override |
| implementation of IEventProcessor::executeRun(int) More...
|
|
StatusCode | stopRun () override |
| implementation of IEventProcessor::stopRun() More...
|
|
Gaudi::StateMachine::State | FSMState () const override |
|
Gaudi::StateMachine::State | targetFSMState () const override |
|
StatusCode | reinitialize () override |
|
StatusCode | restart () override |
|
StatusCode | sysInitialize () override |
|
StatusCode | sysStart () override |
|
StatusCode | sysStop () override |
|
StatusCode | sysFinalize () override |
|
StatusCode | sysReinitialize () override |
|
StatusCode | sysRestart () override |
|
|
void | push (EventContext &&ctx) override |
|
bool | empty () const override |
|
std::optional< Gaudi::Interfaces::IQueueingEventProcessor::ResultType > | pop () override |
|
| PropertyHolder ()=default |
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Details::PropertyBase &prop) |
| Declare a property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, TYPE &value, const std::string &doc="none") |
| Helper to wrap a regular data member and use it as a regular property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, Gaudi::Property< TYPE, VERIFIER, HANDLERS > &prop, const std::string &doc="none") |
| Declare a PropertyBase instance setting name and documentation. More...
|
|
Gaudi::Details::PropertyBase * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") |
| Declare a remote property. More...
|
|
StatusCode | setProperty (const std::string &name, const Gaudi::Details::PropertyBase &p) override |
| set the property from another property with a different name More...
|
|
StatusCode | setProperty (const std::string &s) override |
| set the property from the formatted string More...
|
|
StatusCode | setProperty (const Gaudi::Details::PropertyBase &p) |
| Set the property from a property. More...
|
|
virtual StatusCode | setProperty (const std::string &name, const Gaudi::Details::PropertyBase &p)=0 |
| Set the property from a property with a different name. More...
|
|
virtual StatusCode | setProperty (const std::string &s)=0 |
| Set the property by string. More...
|
|
StatusCode | setProperty (const std::string &name, const char *v) |
| Special case for string literals. More...
|
|
StatusCode | setProperty (const std::string &name, const std::string &v) |
| Special case for std::string. More...
|
|
StatusCode | setProperty (const std::string &name, const TYPE &value) |
| set the property form the value More...
|
|
StatusCode | setPropertyRepr (const std::string &n, const std::string &r) override |
| set the property from name and value string representation More...
|
|
StatusCode | getProperty (Gaudi::Details::PropertyBase *p) const override |
| get the property More...
|
|
const Gaudi::Details::PropertyBase & | getProperty (std::string_view name) const override |
| get the property by name More...
|
|
StatusCode | getProperty (std::string_view n, std::string &v) const override |
| convert the property to the string More...
|
|
const std::vector< Gaudi::Details::PropertyBase * > & | getProperties () const override |
| get all properties More...
|
|
bool | hasProperty (std::string_view name) const override |
| Return true if we have a property with the given name. More...
|
|
Gaudi::Details::PropertyBase * | property (std::string_view name) const |
| \fixme property and bindPropertiesTo should be protected More...
|
|
void | bindPropertiesTo (Gaudi::Interfaces::IOptionsSvc &optsSvc) |
|
| PropertyHolder (const PropertyHolder &)=delete |
|
PropertyHolder & | operator= (const PropertyHolder &)=delete |
|
MSG::Level | msgLevel () const |
| get the cached level (originally extracted from the embedded MsgStream) More...
|
|
bool | msgLevel (MSG::Level lvl) const |
| get the output level from the embedded MsgStream More...
|
|
|
typedef 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 managed components. More...
|
|
ManagersMap | m_managers |
| Map of known component managers. More...
|
|
Gaudi::Property< std::vector< std::string > > | m_declaredManagers |
| Property to declare the list of known managers. More...
|
|
SmartIF< ISvcManager > | m_svcManager |
| Cached pointer to the manager of services. More...
|
|
SmartIF< IAlgManager > | m_algManager |
| Cached pointer to the manager of algorithms. More...
|
|
SmartIF< ISvcLocator > | m_svcLocator |
| Reference to its own service locator (must be instantiated prior to any service!) More...
|
|
SmartIF< DLLClassManager > | m_classManager |
| Reference to the class manager. More...
|
|
Gaudi::Property< int > | m_SIGo |
|
Gaudi::Property< int > | m_SIExit |
|
Gaudi::Property< std::vector< std::string > > | m_topAlgNameList |
|
Gaudi::Property< std::vector< std::string > > | m_outStreamNameList |
|
Gaudi::Property< std::string > | m_messageSvcType |
|
Gaudi::Property< std::string > | m_jobOptionsSvcType |
|
std::string | m_name = "ApplicationMgr" |
| Name. More...
|
|
Gaudi::StateMachine::State | m_state = Gaudi::StateMachine::OFFLINE |
| Internal State. More...
|
|
Gaudi::StateMachine::State | m_targetState = Gaudi::StateMachine::OFFLINE |
| Internal State. More...
|
|
Gaudi::Property< std::vector< std::string > > | m_svcMapping { this, "SvcMapping", {}, "Default mapping of services" } |
|
Gaudi::Property< std::vector< std::string > > | m_svcOptMapping |
|
SmartIF< IMessageSvc > | m_messageSvc |
| Reference to the message service. More...
|
|
SmartIF< IRunable > | m_runable |
| Reference to the runable object. More...
|
|
SmartIF< IEventProcessor > | m_processingMgr |
| Reference to processing manager object. More...
|
|
SmartIF< IQueueingEventProcessor > | m_queueingProcessor |
| Reference to a queueing processing manager object. More...
|
|
Gaudi::Monitoring::Hub | m_monitoringHub |
|
Gaudi::Property< int > | m_evtMax { this, "EvtMax", -1, "Number of events to be processed (-1 means all events)" } |
|
Gaudi::Property< std::vector< std::string > > | m_extSvcNameList |
|
Gaudi::Property< bool > | m_extSvcCreates |
|
Gaudi::Property< std::vector< std::string > > | m_dllNameList { this, "Dlls", {}, "List of DDL's names" } |
|
Gaudi::Property< std::string > | m_jobOptionsType { this, "JobOptionsType", "FILE", "Source type (e.g. dbase, file...)" } |
|
Gaudi::Property< std::string > | m_jobOptionsPath { this, "JobOptionsPath", {}, "The \"file\" to look for properties" } |
|
Gaudi::Property< std::string > | m_jobOptionsPreAction |
|
Gaudi::Property< std::string > | m_jobOptionsPostAction |
|
Gaudi::Property< std::string > | m_runableType { this, "Runable", "AppMgrRunable", "Runable type", "Service:IRunable" } |
|
Gaudi::Property< std::string > | m_eventLoopMgr |
|
Gaudi::Property< std::string > | m_evtsel { this, "EvtSel", {}, "Event selection" } |
|
Gaudi::Property< std::string > | m_histPersName { this, "HistogramPersistency", "NONE", "Name of the Hist Pers Svc" } |
|
Gaudi::Property< int > | m_outputLevel { this, "OutputLevel", MSG::INFO, "Message output level" } |
|
Gaudi::Property< std::string > | m_appName { this, "AppName", "ApplicationMgr", "The name of the application" } |
|
Gaudi::Property< std::string > | m_appVersion { this, "AppVersion", {}, "The version of the application" } |
|
Gaudi::Property< bool > | m_actHistory { this, "ActivateHistory", false, "Activate HistorySvc" } |
|
Gaudi::Property< int > | m_pluginDebugLevel |
|
Gaudi::Property< std::vector< std::string > > | m_createSvcNameList |
|
Gaudi::Property< bool > | m_auditTools { this, "AuditTools", false } |
| Defaults for auditors. More...
|
|
Gaudi::Property< bool > | m_auditSvcs { this, "AuditServices", false } |
|
Gaudi::Property< bool > | m_auditAlgs { this, "AuditAlgorithms", false } |
|
Gaudi::Property< std::map< std::string, std::string > > | m_environment |
|
Gaudi::Property< bool > | m_loopCheck |
|
Gaudi::Property< bool > | m_stopOnSignal |
| Property to enable/disable the "stop on signal" service. More...
|
|
Gaudi::Property< bool > | m_propertiesPrint |
|
Gaudi::Property< int > | m_returnCode |
| Property to record the error conditions occurring during the running. More...
|
|
Gaudi::Property< bool > | m_printAlgsSequence |
|
Gaudi::Property< bool > | m_useMessageSvcForROOTMessages |
|
bool | m_useHiveAlgorithmManager |
|
std::vector< std::string > | m_okDlls |
| names of successfully loaded dlls More...
|
|
void | evtLoopPropertyHandler (Gaudi::Details::PropertyBase &theProp) |
|
StatusCode | decodeExtSvcNameList () |
|
StatusCode | decodeCreateSvcNameList () |
|
void | createSvcNameListHandler (Gaudi::Details::PropertyBase &) |
|
void | extSvcNameListHandler (Gaudi::Details::PropertyBase &theProp) |
|
StatusCode | decodeDllNameList () |
|
void | dllNameListHandler (Gaudi::Details::PropertyBase &theProp) |
|
void | pluginDebugPropertyHandler (Gaudi::Details::PropertyBase &theProp) |
|
template<class I > |
SmartIF< IComponentManager > & | getManager () |
|
SmartIF< ISvcManager > & | svcManager () |
|
SmartIF< IAlgManager > & | algManager () |
|
SmartIF< ISvcLocator > & | serviceLocator () const override |
| Needed to locate the message service. More...
|
|
void | outputLevelUpdate () override |
| Function to call to update the outputLevel of the components (after a change in MessageSvc). More...
|
|
Gaudi::Monitoring::Hub & | monitoringHub () override |
|
void | printAlgsSequences () |
| Print the sequence of algorithms that have been loaded. More...
|
|
void | setServiceManager (ISvcManager *) override |
|
StatusCode | i_startup () |
| Internal startup routine. More...
|
|
StatusCode | GoToState (Gaudi::StateMachine::State state, bool ignoreFailures=false) |
| Reach a state from current state (whichever it is) going through the correct transitions. More...
|
|
template<typename SELF , typename PIMPL , typename METHOD , typename... ARGS> |
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. More...
|
|
The Application Manager class. The main purpose of the Application Manager is to steer any data processing application. This includes all data processing applications for LHCb data in all stages: simulation, reconstruction, analysis, high level triggers, etc. Specific implementations of the ApplicationMgr will be developed to cope with the different environments (on-line, off-line, interactive, batch, etc.).
- Author
- Pere Mato
Definition at line 55 of file ApplicationMgr.h.
◆ ManagersMap
Typedef for the map of component managers, the key is the "id" field of the basic InterfaceID of the managed components.
Definition at line 174 of file ApplicationMgr.h.
◆ ApplicationMgr()
ApplicationMgr::ApplicationMgr |
( |
IInterface * |
= nullptr | ) |
|
Definition at line 87 of file ApplicationMgr.cpp.
101 m_managers[IAlgorithm::interfaceID().id()] = algMgr;
106 "Aliases of algorithm types, to replace an algorithm type for every instance" );
112 "DetDataSvc/DetectorDataSvc",
113 "HistogramSvc/HistogramDataSvc",
114 "HbookCnv::PersSvc/HbookHistSvc",
115 "RootHistCnv::PersSvc/RootHistSvc",
116 "EvtPersistencySvc/EventPersistencySvc",
117 "DetPersistencySvc/DetectorPersistencySvc",
118 "HistogramPersistencySvc/HistogramPersistencySvc" };
◆ algManager()
◆ configure()
Definition at line 271 of file ApplicationMgr.cpp.
307 <<
"=================================================================="
308 <<
"==================================================================" <<
std::endl
317 #if GAUDI_PATCH_VERSION
327 <<
"=================================================================="
328 <<
"==================================================================" <<
endmsg;
352 if (
svcManager()->declareSvcType( itm.name(), itm.type() ).isFailure() ) {
362 if (
svcManager()->declareSvcType( itm.name(), itm.type() ).isFailure() ) {
394 sc =
svcManager()->addService( evtloop_item, ServiceManager::DEFAULT_SVC_PRIORITY * 10 );
◆ createEventContext()
◆ createSvcNameListHandler()
◆ decodeCreateSvcNameList()
StatusCode ApplicationMgr::decodeCreateSvcNameList |
( |
| ) |
|
Definition at line 936 of file ApplicationMgr.cpp.
939 auto it = theNames.begin();
940 auto et = theNames.end();
941 while ( result.
isSuccess() && it != et ) {
943 if ( ( result =
svcManager()->addService( item, ServiceManager::DEFAULT_SVC_PRIORITY ) ).isFailure() ) {
945 log <<
MSG::ERROR <<
"decodeCreateSvcNameList: Cannot create service " << item.type() <<
"/" << item.name()
950 log <<
MSG::DEBUG <<
"decodeCreateSvcNameList: Created service " << item.type() <<
"/" << item.name() <<
endmsg;
◆ decodeDllNameList()
Definition at line 1008 of file ApplicationMgr.cpp.
1019 if ( 0 == dllInList[it] ) {
1022 ++duplicateList[it];
1031 log <<
MSG::DEBUG <<
"Removed duplicate entries for modules : ";
1032 for (
auto it = duplicateList.
begin(); it != duplicateList.
end(); ++it ) {
1033 log << it->first <<
"(" << 1 + it->second <<
")";
1034 if ( it != --duplicateList.
end() )
log <<
", ";
1046 for (
const auto& it : theNames ) {
1060 if ( !successNames.
empty() ) {
1062 for (
auto it = successNames.
begin(); it != successNames.
end(); it++ ) {
1064 if ( ( it + 1 ) != successNames.
end() )
log <<
", ";
1073 for (
auto it = failNames.
begin(); it != failNames.
end(); it++ ) {
1075 if ( ( it + 1 ) != failNames.
end() )
log <<
", ";
◆ decodeExtSvcNameList()
StatusCode ApplicationMgr::decodeExtSvcNameList |
( |
| ) |
|
Definition at line 970 of file ApplicationMgr.cpp.
975 auto it = theNames.begin();
976 auto et = theNames.end();
977 while ( result.
isSuccess() && it != et ) {
980 if ( ( result =
svcManager()->addService( item, ServiceManager::DEFAULT_SVC_PRIORITY ) ).isFailure() ) {
982 log <<
MSG::ERROR <<
"decodeExtSvcNameList: Cannot create service " << item.type() <<
"/" << item.name()
986 if ( ( result =
svcManager()->declareSvcType( item.name(), item.type() ) ).isFailure() ) {
988 log <<
MSG::ERROR <<
"decodeExtSvcNameList: Cannot declare service " << item.type() <<
"/" << item.name()
◆ dllNameListHandler()
◆ empty()
bool ApplicationMgr::empty |
( |
| ) |
const |
|
override |
◆ evtLoopPropertyHandler()
◆ executeEvent()
implementation of IEventProcessor::executeEvent(void*)
Definition at line 799 of file ApplicationMgr.cpp.
◆ executeRun()
StatusCode ApplicationMgr::executeRun |
( |
int |
evtmax | ) |
|
|
override |
◆ extSvcNameListHandler()
◆ finalize()
◆ FSMState()
◆ getManager()
◆ GoToState()
Reach a state from current state (whichever it is) going through the correct transitions.
By default, if a transition fails, the chain is interrupted, but the behavior can be changed with the parameter "gnoreFailures"
Definition at line 687 of file ApplicationMgr.cpp.
761 if ( ignoreFailures ) {
◆ i_delegateToEvtProc()
template<typename SELF , typename PIMPL , typename METHOD , typename... ARGS>
static auto ApplicationMgr::i_delegateToEvtProc |
( |
SELF * |
self, |
|
|
PIMPL & |
member, |
|
|
std::string_view |
method_name, |
|
|
METHOD && |
method, |
|
|
ARGS &&... |
args |
|
) |
| |
|
inlinestaticprivate |
Helper to delegate calls to event processor implementation.
Definition at line 317 of file ApplicationMgr.h.
320 if (
bool( member ) ) {
321 return std::invoke( method, *member.get(), std::forward<ARGS>(
args )... );
324 s << method_name <<
": event processor is not a \""
330 s << method_name <<
": Invalid state \"" <<
self->FSMState() <<
'"';
◆ i_startup()
Internal startup routine.
Definition at line 150 of file ApplicationMgr.cpp.
181 s_originalRootErrorHandler = SetErrorHandler( ROOTErrorHandlerAdapter );
184 <<
"ROOT not yet initialized, we cannot override the error handler are requested "
185 "(UseMessageSvcForROOTMessages==true)"
197 auto jobOptsIProp = jobsvc.as<
IProperty>();
198 if ( !jobOptsIProp ) {
211 log <<
MSG::FATAL <<
"Error setting JobOptionsPreAction option in JobOptionsSvc" <<
endmsg;
219 log <<
MSG::FATAL <<
"Error setting JobOptionsPostAction option in JobOptionsSvc" <<
endmsg;
230 }
else if (
isEnvSet(
"JOBOPTPATH" ) ) {
243 jobOptsIProp.reset();
247 auto msgSvcIProp = msgsvc.as<
IProperty>();
251 sc = jobsvc->sysInitialize();
256 sc = msgsvc->sysInitialize();
◆ initialize()
◆ monitoringHub()
◆ name()
◆ nextEvent()
StatusCode ApplicationMgr::nextEvent |
( |
int |
maxevt | ) |
|
|
override |
◆ outputLevelUpdate()
void ApplicationMgr::outputLevelUpdate |
( |
| ) |
|
|
override |
Function to call to update the outputLevel of the components (after a change in MessageSvc).
Definition at line 1082 of file ApplicationMgr.cpp.
1084 for (
auto& mgrItem :
m_managers ) { mgrItem.second->outputLevelUpdate(); }
◆ pluginDebugPropertyHandler()
◆ pop()
◆ printAlgsSequences()
void ApplicationMgr::printAlgsSequences |
( |
| ) |
|
Print the sequence of algorithms that have been loaded.
Definition at line 1108 of file ApplicationMgr.cpp.
1110 log <<
MSG::ALWAYS <<
"****************************** Algorithm Sequence ****************************" <<
endmsg;
1112 log <<
MSG::ALWAYS <<
"******************************************************************************" <<
endmsg;
◆ push()
◆ queryInterface()
◆ reinitialize()
◆ restart()
◆ run()
◆ serviceLocator()
◆ setServiceManager()
void ApplicationMgr::setServiceManager |
( |
ISvcManager * |
| ) |
|
|
inlineoverrideprotected |
◆ start()
◆ stop()
◆ stopRun()
◆ svcManager()
◆ sysFinalize()
◆ sysInitialize()
◆ sysReinitialize()
◆ sysRestart()
◆ sysStart()
◆ sysStop()
◆ targetFSMState()
◆ terminate()
Definition at line 625 of file ApplicationMgr.cpp.
642 log <<
MSG::INFO <<
"Application Manager Terminated successfully with a user requested ScheduledStop" <<
endmsg;
650 opts.set(
"MessageSvc.AuditFinalize",
"false" );
652 opts.set(
"JobOptionsSvc.AuditFinalize",
"false" );
656 if ( s_originalRootErrorHandler ) {
657 SetErrorHandler( s_originalRootErrorHandler );
658 s_originalRootErrorHandler =
nullptr;
661 s_messageSvcInstance =
nullptr;
667 svc->sysFinalize().ignore();
674 log <<
MSG::ERROR <<
"Could not get the IService interface of the JobOptionsSvc" <<
endmsg;
676 svc->sysFinalize().ignore();
◆ m_actHistory
◆ m_algManager
◆ m_appName
◆ m_appVersion
◆ m_auditAlgs
Gaudi::Property<bool> ApplicationMgr::m_auditAlgs { this, "AuditAlgorithms", false } |
|
protected |
◆ m_auditSvcs
Gaudi::Property<bool> ApplicationMgr::m_auditSvcs { this, "AuditServices", false } |
|
protected |
◆ m_auditTools
Gaudi::Property<bool> ApplicationMgr::m_auditTools { this, "AuditTools", false } |
|
protected |
◆ m_classManager
◆ m_createSvcNameList
Initial value:{
this, "CreateSvc", {}, "List of extra services to be created" }
Definition at line 276 of file ApplicationMgr.h.
◆ m_declaredManagers
Property to declare the list of known managers.
Definition at line 180 of file ApplicationMgr.h.
◆ m_dllNameList
◆ m_environment
Initial value:{
this, "Environment", {}, "Environment variables to set" }
Definition at line 284 of file ApplicationMgr.h.
◆ m_eventLoopMgr
Initial value:{ this, "EventLoop", "EventLoopMgr", "Processing manager type",
"Service:IEventProcessor" }
Definition at line 255 of file ApplicationMgr.h.
◆ m_evtMax
Gaudi::Property<int> ApplicationMgr::m_evtMax { this, "EvtMax", -1, "Number of events to be processed (-1 means all events)" } |
|
protected |
◆ m_evtsel
◆ m_extSvcCreates
Initial value:{ this, "ExtSvcCreates", true,
"LHCb (default) or ATLAS definition of \"ExtSvc\"" }
Definition at line 244 of file ApplicationMgr.h.
◆ m_extSvcNameList
Initial value:{
this, "ExtSvc", {}, "List of external services names", "vector<Service>" }
Definition at line 242 of file ApplicationMgr.h.
◆ m_histPersName
◆ m_jobOptionsPath
Gaudi::Property<std::string> ApplicationMgr::m_jobOptionsPath { this, "JobOptionsPath", {}, "The \"file\" to look for properties" } |
|
protected |
◆ m_jobOptionsPostAction
Initial value:{
this, "JobOptionsPreAction", {}, "additional command to run on config" }
Definition at line 252 of file ApplicationMgr.h.
◆ m_jobOptionsPreAction
Initial value:{
this, "JobOptionsPostAction", {}, "additional command to run on config" }
Definition at line 250 of file ApplicationMgr.h.
◆ m_jobOptionsSvcType
Initial value:{ this, "JobOptionsSvcType", "JobOptionsSvc", "JobOptionsSvc type",
"Service:Gaudi::Interfaces::IOptionsSvc" }
Definition at line 218 of file ApplicationMgr.h.
◆ m_jobOptionsType
Gaudi::Property<std::string> ApplicationMgr::m_jobOptionsType { this, "JobOptionsType", "FILE", "Source type (e.g. dbase, file...)" } |
|
protected |
◆ m_loopCheck
Initial value:{ this, "InitializationLoopCheck", true,
"For ServiceMgr initialization loop checking" }
Definition at line 287 of file ApplicationMgr.h.
◆ m_managers
◆ m_messageSvc
◆ m_messageSvcType
Initial value:{ this, "MessageSvcType", "MessageSvc", "MessageSvc type",
"Service:IMessageSvc" }
Definition at line 216 of file ApplicationMgr.h.
◆ m_monitoringHub
◆ m_name
◆ m_okDlls
◆ m_outputLevel
Gaudi::Property<int> ApplicationMgr::m_outputLevel { this, "OutputLevel", MSG::INFO, "Message output level" } |
|
protected |
◆ m_outStreamNameList
◆ m_pluginDebugLevel
Initial value:{ this, "PluginDebugLevel", 0,
[this]( auto& ) {
<< "Updating Gaudi::PluginService::SetDebug(level) to level="
}
},
"Debug level for the plugin system" }
Definition at line 263 of file ApplicationMgr.h.
◆ m_printAlgsSequence
Initial value:{ this, "PrintAlgsSequence", false,
"Print the sequence of algorithms that have been loaded." }
Definition at line 303 of file ApplicationMgr.h.
◆ m_processingMgr
◆ m_propertiesPrint
Initial value:{ this, "PropertiesPrint", false,
"Flag to activate the printout of properties" }
Definition at line 296 of file ApplicationMgr.h.
◆ m_queueingProcessor
SmartIF<IQueueingEventProcessor> ApplicationMgr::m_queueingProcessor |
|
protected |
Reference to a queueing processing manager object.
Definition at line 233 of file ApplicationMgr.h.
◆ m_returnCode
Initial value:
"Return code of the application. Set internally in case of error conditions." }
Property to record the error conditions occurring during the running.
Definition at line 300 of file ApplicationMgr.h.
◆ m_runable
◆ m_runableType
◆ m_SIExit
Initial value:{ this, "Exit", 0,
[this]( auto& ) {
::exit( 0 );
},
"For SI's \"Exit\" command via callback" }
Definition at line 201 of file ApplicationMgr.h.
◆ m_SIGo
Initial value:{ this, "Go", 0,
[this]( auto& ) {
},
"For SI's \"Go\" command via callback" }
Definition at line 193 of file ApplicationMgr.h.
◆ m_state
◆ m_stopOnSignal
Initial value:{
this, "StopOnSignal", false, "Flag to enable/disable the signal handler that schedule a stop of the event loop" }
Property to enable/disable the "stop on signal" service.
- See also
- Gaudi::Utils::StopSignalHandler
Definition at line 293 of file ApplicationMgr.h.
◆ m_svcLocator
Reference to its own service locator (must be instantiated prior to any service!)
Definition at line 189 of file ApplicationMgr.h.
◆ m_svcManager
◆ m_svcMapping
◆ m_svcOptMapping
Initial value:{
this, "SvcOptMapping", {}, "Default mapping of optional services" }
Definition at line 226 of file ApplicationMgr.h.
◆ m_targetState
◆ m_topAlgNameList
Initial value:{ this,
"TopAlg",
{},
"List of top level algorithms names",
"vector<Algorithm>" }
Definition at line 208 of file ApplicationMgr.h.
◆ m_useHiveAlgorithmManager
bool ApplicationMgr::m_useHiveAlgorithmManager |
|
protected |
◆ m_useMessageSvcForROOTMessages
Initial value:{ this, "UseMessageSvcForROOTMessages", true,
"Replace ROOT error handler with MessageSvc." }
Definition at line 306 of file ApplicationMgr.h.
The documentation for this class was generated from the following files:
void printAlgsSequences()
Print the sequence of algorithms that have been loaded.
const std::string name() const
property name
SmartIF< IAlgManager > m_algManager
Cached pointer to the manager of algorithms.
virtual std::optional< ResultType > pop()=0
Get the next available result.
constexpr int FinalizationFailure
Error codes for operation failures.
Gaudi::Property< bool > m_propertiesPrint
StatusCode decodeDllNameList()
MSG::Level resetMessaging()
Reinitialize internal states.
void outputLevelUpdate() override
Function to call to update the outputLevel of the components (after a change in MessageSvc).
SmartIF< IRunable > m_runable
Reference to the runable object.
StatusCode i_startup()
Internal startup routine.
StatusCode stop() override
GAUDI_API std::string getEnv(const char *var)
get a particular environment variable (returning "UNKNOWN" if not set)
Gaudi::Property< std::string > m_messageSvcType
StatusCode setProperty(const Gaudi::Details::PropertyBase &p)
Set the property from a property.
#define GAUDI_MINOR_VERSION
const std::string & name() const override
Gaudi::StateMachine::State FSMState() const override
StatusCode sysStop() override
Gaudi::Property< bool > m_stopOnSignal
Property to enable/disable the "stop on signal" service.
GAUDI_API int setEnv(const std::string &name, const std::string &value, int overwrite=1)
Set an environment variables.
std::vector< std::string > m_okDlls
names of successfully loaded dlls
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
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.
StatusCode terminate() override
StatusCode executeRun(int evtmax) override
implementation of IEventProcessor::executeRun(int)
StatusCode finalize() override
void bindPropertiesTo(Gaudi::Interfaces::IOptionsSvc &optsSvc)
Gaudi::Property< std::string > m_jobOptionsSvcType
Gaudi::Details::PropertyBase * property(std::string_view name) const
\fixme property and bindPropertiesTo should be protected
void createSvcNameListHandler(Gaudi::Details::PropertyBase &)
const std::vector< Gaudi::Details::PropertyBase * > & getProperties() const override
get all properties
SmartIF< ISvcManager > & svcManager()
Gaudi::Property< std::vector< std::string > > m_dllNameList
void dllNameListHandler(Gaudi::Details::PropertyBase &theProp)
Helper class to parse a string of format "type/name".
Gaudi::Property< int > m_returnCode
Property to record the error conditions occurring during the running.
std::string format(bool local, std::string spec="%c") const
Format the time using strftime.
StatusCode configure() override
static const InterfaceID & interfaceID()
Return an instance of InterfaceID identifying the interface.
Gaudi::Property< std::string > m_jobOptionsPostAction
virtual void push(EventContext &&ctx)=0
Schedule the processing of an event.
Details::PropertyBase & declareUpdateHandler(std::function< void(Details::PropertyBase &)> fun) override
set new callback for update
Gaudi::Property< std::string > m_jobOptionsPreAction
const ValueType & value() const
constexpr int ScheduledStop
SmartIF< ISvcLocator > m_svcLocator
Reference to its own service locator (must be instantiated prior to any service!)
Gaudi::Property< std::string > m_appVersion
StatusCode sysReinitialize() override
Gaudi::Property< std::string > m_jobOptionsType
StatusCode sysRestart() override
SmartIF< ISvcManager > m_svcManager
Cached pointer to the manager of services.
Gaudi::Property< std::string > m_runableType
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
GAUDI_API bool isEnvSet(const char *var)
Check if an environment variable is set or not.
Gaudi::Property< std::vector< std::string > > m_topAlgNameList
SmartIF< IEventProcessor > m_processingMgr
Reference to processing manager object.
Gaudi::Property< std::vector< std::string > > m_svcMapping
GAUDIPS_API void SetDebug(int debugLevel)
Backward compatibility with Reflex.
Gaudi::Property< std::vector< std::string > > m_svcOptMapping
StatusCode decodeExtSvcNameList()
Gaudi::Property< std::vector< std::string > > m_extSvcNameList
Gaudi::Property< std::string > m_eventLoopMgr
const StatusCode & ignore() const
Allow discarding a StatusCode without warning.
SmartIF< IFace > as() const
return a new SmartIF instance to another interface
Gaudi::Property< bool > m_extSvcCreates
Gaudi::Property< bool > m_useMessageSvcForROOTMessages
Gaudi::Property< std::vector< std::string > > m_createSvcNameList
Gaudi::Property< bool > m_actHistory
SmartIF< ISvcLocator > & serviceLocator() const override
Needed to locate the message service.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Details::PropertyBase &prop)
Declare a property.
Gaudi::Monitoring::Hub m_monitoringHub
constexpr static const auto SUCCESS
StatusCode decodeCreateSvcNameList()
TYPE * get() const
Get interface pointer.
Gaudi::Property< std::string > m_appName
static Time current()
Returns the current time.
void evtLoopPropertyHandler(Gaudi::Details::PropertyBase &theProp)
SmartIF< IQueueingEventProcessor > m_queueingProcessor
Reference to a queueing processing manager object.
Gaudi::Property< int > m_outputLevel
SmartIF< IMessageSvc > m_messageSvc
Reference to the message service.
ManagersMap m_managers
Map of known component managers.
Gaudi::StateMachine::State m_state
Internal State.
StatusCode sysStart() override
Gaudi::Property< std::string > m_jobOptionsPath
Gaudi::Property< bool > m_printAlgsSequence
GAUDI_API const std::string & hostName()
Host name.
void extSvcNameListHandler(Gaudi::Details::PropertyBase &theProp)
StatusCode GoToState(Gaudi::StateMachine::State state, bool ignoreFailures=false)
Reach a state from current state (whichever it is) going through the correct transitions.
#define GAUDI_MAJOR_VERSION
StatusCode reinitialize() override
Gaudi::Property< bool > m_loopCheck
constexpr static const auto FAILURE
virtual bool empty() const =0
Tell if the processor has events in the queues.
Gaudi::Property< std::map< std::string, std::string > > m_environment
AlgTypeAliasesMap & typeAliases()
Gaudi::Property< int > m_pluginDebugLevel
SmartIF< IAlgManager > & algManager()
SmartIF< DLLClassManager > m_classManager
Reference to the class manager.
StatusCode start() override
Gaudi::Property< int > m_evtMax
Gaudi::StateMachine::State m_targetState
Internal State.
StatusCode initialize() override
StatusCode setProperty(const Gaudi::Details::PropertyBase &p)
Set the property from a property.
#define GAUDI_PATCH_VERSION