1 #ifndef GAUDISVC_DATAONDEMANDSVC_H
2 #define GAUDISVC_DATAONDEMANDSVC_H
95 typedef std::vector<std::string>
Setup;
135 const std::string&
n )
165 Leaf(
const std::string& t,
const std::string&
n)
187 (
const std::string&
name ,
283 typedef std::map<std::string,std::string>
Map ;
314 #endif // GAUDISVC_DATAONDEMANDSVC_H
void i_setNodeHandler(const std::string &name, const std::string &type)
Internal method to initialize a node handler.
Definition of the MsgStream class used to transmit messages.
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
The DataOnDemandSvc listens to incidents typically triggered by the data service of the configurable ...
ChronoEntity m_timer_algs
a small helper class for implementation of ChronoStatSvc service, It also could be used as some local...
std::list< IDODNodeMapper * > m_nodeMappers
SmartIF< IMessageSvc > & msgSvc() const
The standard message service.
MsgStream & stream() const
get the message stream
SmartIF< IIncidentSvc > m_incSvc
Incident service.
virtual StatusCode reinitialize()
Inherited Service overrides: Service reinitialization.
std::vector< std::string > Setup
The IAlgManager is the interface implemented by the Algorithm Factory in the Application Manager to s...
std::vector< std::string > m_algMapTools
std::string m_trapType
Trap name.
std::string m_dataSvcName
Data service name.
Setup m_nodeMapping
Mapping to nodes.
Map m_algMap
the major configuration property { 'data' : 'algorithm' }
Data provider interface definition.
virtual StatusCode initialize()
Inherited Service overrides: Service initialization.
SmartIF< IDataProviderSvc > m_dataSvc
Data provider reference.
ClassH clazz
the actual class
std::list< IDODAlgMapper * > m_algMappers
Setup m_algMapping
Mapping to algorithms.
Helper class to parse a string of format "type/name".
StatusCode setup()
Setup routine (called by (re-) initialize.
virtual void handle(const Incident &incident)
IIncidentListener interfaces overrides: incident handling.
bool m_allowInitFailure
flag to allow DataOnDemand initialization to succeed even if the (pre)initialization of the algorithm...
StatusCode execHandler(const std::string &tag, Leaf &leaf)
Execute leaf handler (algorithm)
This class is used for returning status codes from appropriate routines.
void update_dump(Property &)
update handler for 'Dump' property
StatusCode setupNodeHandlers()
Initialize node handlers.
Base class used to extend a class implementing other interfaces.
Helper class of the DataOnDemandSvc.
std::vector< std::string > m_nodeMapTools
NodeMap m_nodes
Map of "empty" objects to be placed as intermediate nodes.
void dump(const MSG::Level level, const bool mode=true) const
dump the content of DataOnDemand service
The IAlgorithm is the interface implemented by the Algorithm base class.
virtual const std::string & name() const
Retrieve name of the service.
bool m_partialPath
Flag to allow for the creation of partial leaves.
std::map< std::string, std::string > Map
Leaf(const std::string &t, const std::string &n)
Property base class allowing Property* collections to be "homogeneous".
SmartIF< IAlgManager > m_algMgr
Algorithm manager.
SmartIF< IToolSvc > m_toolSvc
Data provider reference.
AlgMap m_algs
Map of algorithms to handle incidents.
bool m_dump
flag to force the printout
bool m_init
flag to warm up the configuration
ChronoEntity m_timer_nodes
Base class for all Incidents (computing events).
bool dataObject
trivial object? DataObject?
DataOnDemandSvc(const std::string &name, ISvcLocator *svc)
Standard initializing service constructor.
virtual StatusCode finalize()
Inherited Service overrides: Service finalization.
GaudiUtils::HashMap< Gaudi::StringKey, Node > NodeMap
Map m_nodeMap
the major configuration property { 'data' : 'type' }
StatusCode setupAlgHandlers()
Initialize leaf handlers.
Helper class of the DataOnDemandSvc.
virtual ~DataOnDemandSvc()
Standard destructor.
StatusCode i_setAlgHandler(const std::string &name, const Gaudi::Utils::TypeNameString &alg)
Internal method to initialize an algorithm handler.
Node(ClassH c, bool e, const std::string &n)
StatusCode configureHandler(Leaf &leaf)
Configure handler for leaf.
void update_2(Property &p)
The interface implemented by the IncidentSvc service.
void update_3(Property &p)
void update_1(Property &p)
StatusCode update()
update the handlers
GaudiUtils::HashMap< Gaudi::StringKey, Leaf > AlgMap