|
| StatusCode | initialize () override |
| | Inherited Service overrides: Service initialization.
|
| StatusCode | finalize () override |
| | Inherited Service overrides: Service finalization.
|
| StatusCode | reinitialize () override |
| | Inherited Service overrides: Service reinitialization.
|
| void | handle (const Incident &incident) override |
| | IIncidentListener interfaces overrides: incident handling.
|
| void const * | i_cast (const InterfaceID &tid) const override |
| | Implementation of IInterface::i_cast.
|
| StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
| | Implementation of IInterface::queryInterface.
|
| std::vector< std::string > | getInterfaceNames () const override |
| | Implementation of IInterface::getInterfaceNames.
|
| const std::string & | name () const override |
| | Retrieve name of the service.
|
| StatusCode | configure () override |
| StatusCode | initialize () override |
| StatusCode | start () override |
| StatusCode | stop () override |
| StatusCode | finalize () override |
| StatusCode | terminate () override |
| Gaudi::StateMachine::State | FSMState () const override |
| Gaudi::StateMachine::State | targetFSMState () const override |
| StatusCode | reinitialize () override |
| StatusCode | restart () override |
| StatusCode | sysInitialize () override |
| | Initialize Service.
|
| StatusCode | sysStart () override |
| | Initialize Service.
|
| StatusCode | sysStop () override |
| | Initialize Service.
|
| StatusCode | sysFinalize () override |
| | Finalize Service.
|
| StatusCode | sysReinitialize () override |
| | Re-initialize the Service.
|
| StatusCode | sysRestart () override |
| | Re-initialize the Service.
|
| | Service (std::string name, ISvcLocator *svcloc) |
| | Standard Constructor.
|
| SmartIF< ISvcLocator > & | serviceLocator () const override |
| | Retrieve pointer to service locator.
|
| template<typename IFace = IService> |
| SmartIF< IFace > | service (const std::string &name, bool createIf=true) const |
| template<class T> |
| Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, ToolHandle< T > &hndl, const std::string &doc="none") |
| template<class T> |
| StatusCode | declareTool (ToolHandle< T > &handle, bool createIf=true) |
| template<class T> |
| StatusCode | declareTool (ToolHandle< T > &handle, const std::string &toolTypeAndName, bool createIf=true) |
| | Declare used tool.
|
| template<class T> |
| Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, ToolHandleArray< T > &hndlArr, const std::string &doc="none") |
| template<class T> |
| void | addToolsArray (ToolHandleArray< T > &hndlArr) |
| const std::vector< IAlgTool * > & | tools () const |
| SmartIF< IAuditorSvc > & | auditorSvc () const |
| | The standard auditor service.May not be invoked before sysInitialize() has been invoked.
|
| StatusCode | setProperty (const Gaudi::Details::PropertyBase &p) |
| | Set the property from a property.
|
| StatusCode | setProperty (const std::string &name, const char *v) |
| | Special case for string literals.
|
| StatusCode | setProperty (const std::string &name, const std::string &v) |
| | Special case for std::string.
|
| StatusCode | setProperty (const std::string &name, const TYPE &value) |
| | set the property form the value
|
| | PropertyHolder ()=default |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Details::PropertyBase &prop) |
| | Declare a property.
|
| Gaudi::Details::PropertyBase * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") |
| | Declare a remote property.
|
| StatusCode | setPropertyRepr (const std::string &n, const std::string &r) override |
| | set the property from name and value string representation
|
| StatusCode | getProperty (Gaudi::Details::PropertyBase *p) const override |
| | get the property
|
| const std::vector< Gaudi::Details::PropertyBase * > & | getProperties () const override |
| | get all properties
|
| bool | hasProperty (std::string_view name) const override |
| | Return true if we have a property with the given name.
|
| Gaudi::Details::PropertyBase * | property (std::string_view name) const |
| | \fixme property and bindPropertiesTo should be protected
|
| void | bindPropertiesTo (Gaudi::Interfaces::IOptionsSvc &optsSvc) |
| PropertyHolder & | operator= (const PropertyHolder &)=delete |
| virtual | ~CommonMessagingBase ()=default |
| | Virtual destructor.
|
| const SmartIF< IMessageSvc > & | msgSvc () const |
| | The standard message service.
|
| MsgStream & | msgStream () const |
| | Return an uninitialized MsgStream.
|
| MsgStream & | msgStream (const MSG::Level level) const |
| | Predefined configurable message stream for the efficient printouts.
|
| MsgStream & | always () const |
| | shortcut for the method msgStream(MSG::ALWAYS)
|
| MsgStream & | fatal () const |
| | shortcut for the method msgStream(MSG::FATAL)
|
| MsgStream & | err () const |
| | shortcut for the method msgStream(MSG::ERROR)
|
| MsgStream & | error () const |
| | shortcut for the method msgStream(MSG::ERROR)
|
| MsgStream & | warning () const |
| | shortcut for the method msgStream(MSG::WARNING)
|
| MsgStream & | info () const |
| | shortcut for the method msgStream(MSG::INFO)
|
| MsgStream & | debug () const |
| | shortcut for the method msgStream(MSG::DEBUG)
|
| MsgStream & | verbose () const |
| | shortcut for the method msgStream(MSG::VERBOSE)
|
| MsgStream & | msg () const |
| | shortcut for the method msgStream(MSG::INFO)
|
| MSG::Level | msgLevel () const |
| | get the cached level (originally extracted from the embedded MsgStream)
|
| bool | msgLevel (MSG::Level lvl) const |
| | get the output level from the embedded MsgStream
|
|
| SmartIF< IIncidentSvc > | m_incSvc = nullptr |
| | Incident service.
|
| SmartIF< IAlgManager > | m_algMgr = nullptr |
| | Algorithm manager.
|
| SmartIF< IDataProviderSvc > | m_dataSvc = nullptr |
| | Data provider reference.
|
| SmartIF< IToolSvc > | m_toolSvc |
| | Data provider reference.
|
| AlgMap | m_algs |
| | Map of algorithms to handle incidents.
|
| NodeMap | m_nodes |
| | Map of "empty" objects to be placed as intermediate nodes.
|
| bool | m_updateRequired = true |
| ChronoEntity | m_total |
| unsigned long long | m_statAlg = 0 |
| unsigned long long | m_statNode = 0 |
| unsigned long long | m_stat = 0 |
| ChronoEntity | m_timer_nodes |
| ChronoEntity | m_timer_algs |
| ChronoEntity | m_timer_all |
| bool | m_locked_nodes = false |
| bool | m_locked_algs = false |
| bool | m_locked_all = false |
| std::vector< IDODNodeMapper * > | m_nodeMappers |
| std::vector< IDODAlgMapper * > | m_algMappers |
| Gaudi::Property< std::string > | m_trapType { this, "IncidentName", "DataFault", "the type of handled Incident" } |
| Gaudi::Property< std::string > | m_dataSvcName { this, "DataSvc", "EventDataSvc", "DataSvc name" } |
| Gaudi::Property< bool > | m_partialPath { this, "UsePreceedingPath", true, "allow creation of partial leaves" } |
| Gaudi::Property< bool > | m_dump |
| Gaudi::Property< bool > | m_init { this, "PreInitialize", false, "(pre)initialize all algorithms" } |
| Gaudi::Property< bool > | m_allowInitFailure |
| Gaudi::Property< Setup > | m_algMapping |
| Gaudi::Property< Setup > | m_nodeMapping |
| Gaudi::Property< Map > | m_algMap { this, "AlgMap", {}, &DataOnDemandSvc::force_update, "mapping {'data': 'algorithm'}" } |
| Gaudi::Property< Map > | m_nodeMap { this, "NodeMap", {}, &DataOnDemandSvc::force_update, "mapping {'data': 'type'}" } |
| Gaudi::Property< std::string > | m_prefix { this, "Prefix", "/Event/" } |
| Gaudi::Property< std::vector< std::string > > | m_nodeMapTools |
| Gaudi::Property< std::vector< std::string > > | m_algMapTools |
|
| Gaudi::StateMachine::State | m_state = Gaudi::StateMachine::OFFLINE |
| | Service state.
|
| Gaudi::StateMachine::State | m_targetState = Gaudi::StateMachine::OFFLINE |
| | Service state.
|
| Gaudi::Property< int > | m_outputLevel { this, "OutputLevel", MSG::NIL, "output level" } |
| | flag indicating whether ToolHandle tools have been added to m_tools
|
| Gaudi::Property< bool > | m_auditorInitialize { this, "AuditInitialize", false, "trigger auditor on initialize()" } |
| Gaudi::Property< bool > | m_auditorStart { this, "AuditStart", false, "trigger auditor on start()" } |
| Gaudi::Property< bool > | m_auditorStop { this, "AuditStop", false, "trigger auditor on stop()" } |
| Gaudi::Property< bool > | m_auditorFinalize { this, "AuditFinalize", false, "trigger auditor on finalize()" } |
| Gaudi::Property< bool > | m_auditorReinitialize { this, "AuditReinitialize", false, "trigger auditor on reinitialize()" } |
| Gaudi::Property< bool > | m_auditorRestart { this, "AuditRestart", false, "trigger auditor on restart()" } |
| Gaudi::Property< bool > | m_autoRetrieveTools |
| Gaudi::Property< bool > | m_checkToolDeps |
| SmartIF< IAuditorSvc > | m_pAuditorSvc |
| | Auditor Service.
|
The DataOnDemandSvc listens to incidents typically triggered by the data service of the configurable name "IncidentName".
In the job options handlers can be declared, which allow to configure this service. Such handlers are either:
- Node handlers, if objects other than the default object type have to be instantiated. DataOnDemandSvc.Nodes = { "DATA='/Event/Rec' TYPE='DataObject'", "DATA='/Event/Rec/Muon' TYPE='DataObject'" };
- Leaf handlers (Algorithms), which get instantiated and executed on demand. DataOnDemandSvc.Algorithms = { "DATA='/Event/Rec/Muon/Digits' TYPE='MuonDigitAlg/MyMuonDigits'" }; If the algorithm name is omitted the class name will be the instance name.
The handlers only get called if the exact path matches. In the event already the partial path to any handler is missing a leaf handler may be triggered, which includes the partial paths ( DataOnDemandSvc.UsePreceedingPath = true )
2006-10-15: New options (using map-like semantics:)
{ "Phys/StdLoosePions/Particles" : "PreLoadParticles/StdLoosePions" ,
"Phys/StdLoosePions/Vertioces" : "PreLoadParticles/StdLoosePions" } ;
{ "Phys" : "DataObject" ,
"MC" : "DataObject" } ;
The DataOnDemandSvc listens to incidents typically triggered by the data service of the configurable ...
GaudiUtils::HashMap< Gaudi::StringKey, Leaf > AlgMap
GaudiUtils::HashMap< Gaudi::StringKey, Node > NodeMap
New treatment of preceding paths. for each registered leaf or node the all parent nodes are added into the node-map with default directory type 'DataObject'
The major properties are equipped with handlers (more or less mandatory for interactive work in python)
From now the default prefix ( "/Event/" ) could be omitted from any data-item. It will be added automatically.
- Author
- M.Frank
- Version
- 1.0
Definition at line 87 of file DataOnDemandSvc.h.