20#include "GaudiKernel/StatusCode.h"
21#include "GaudiKernel/ClassID.h"
22#include "GaudiKernel/MsgStream.h"
36#include "GaudiKernel/ServiceHandle.h"
37#include "GaudiKernel/ICondSvc.h"
53class IOVSvc:
public extends<AthService, IIOVSvc>
57 IOVSvc(
const std::string& name, ISvcLocator* svc );
62 virtual StatusCode
finalize()
override;
64 virtual StatusCode
createIOVTool(
const std::string& storeName )
override;
65 virtual std::vector<std::string>
getStoreNames()
const override;
75 bool trigger)
override;
78 StatusCode
regFcn(
const std::string& toolName,
80 bool trigger)
override;
83 virtual StatusCode
setRange(
const CLID& clid,
const std::string& key,
85 virtual StatusCode
setRange(
const CLID& clid,
const std::string& key,
87 const std::string& storeName)
override;
89 virtual StatusCode
getRange(
const CLID& clid,
const std::string& key,
94 const std::string& key,
95 const std::string& storeName)
override;
100 const std::string& storeName)
override;
104 virtual StatusCode
regProxy(
const CLID& clid,
const std::string& key,
105 const std::string& storeName )
override;
109 virtual StatusCode
deregProxy(
const CLID& clid,
const std::string& key )
override;
116 std::unique_ptr<IOpaqueAddress>& ioa,
117 const EventIDBase& now)
const override;
123 std::unique_ptr<IOpaqueAddress>& ioa)
const override;
128 const std::string &tag)
override;
132 const std::string& storeName)
override;
136 const std::string& storeName )
override;
140 const std::string& storeName )
override;
145 std::set<std::string>&
tools,
146 const std::string& storeName)
override;
151 const std::string& storeName)
override;
154 const EventIDBase&)
override;
161 bool createIF=
true );
170 typedef std::map< std::string, IIOVSvcTool* >
toolMap;
uint32_t CLID
The Class ID type.
defines and typedefs for IOVSvc
boost::function< StatusCode(IOVSVC_CALLBACK_ARGS) > IOVSvcCallBackFcn
the type of an IOVSvc call back: it wraps both the method and the object the method is called on
Basic time unit for IOVSvc.
Base class for all conditions containers.
virtual StatusCode preLoadDataTAD(const SG::TransientAddress *, const std::string &storeName) override
supply a list of TADs whose data will be preloaded
virtual std::vector< std::string > getStoreNames() const override
virtual StatusCode createIOVTool(const std::string &storeName) override
ServiceHandle< StoreGateSvc > p_detStore
virtual StatusCode preLoadTAD(const SG::TransientAddress *, const std::string &storeName) override
supply a list of TADs whose proxies will be preloaded
std::map< std::string, IIOVSvcTool * > toolMap
std::string m_updateInterval
virtual StatusCode finalize() override
IOVSvc(const std::string &name, ISvcLocator *svc)
virtual StatusCode getRange(const CLID &clid, const std::string &key, IOVRange &io) const override
BooleanProperty m_sortKeys
BooleanProperty m_preLoadData
virtual StatusCode replaceProxy(SG::DataProxy *pOld, SG::DataProxy *pNew, const std::string &storeName) override
replace a registered DataProxy with a new version
BooleanProperty m_partialPreLoadData
ServiceHandle< IClassIDSvc > p_CLIDSvc
virtual void resetAllProxies() override
virtual StatusCode deregProxy(SG::DataProxy *proxy) override
Deregister a DataProxy with the service.
virtual StatusCode setRange(const CLID &clid, const std::string &key, IOVRange &) override
Update Range from dB.
std::recursive_mutex m_lock
IIOVSvcTool * getTool(const std::string &storeName, bool createIF=true)
virtual StatusCode regFcn(SG::DataProxy *dp, const CallBackID &c, const IOVSvcCallBackFcn &fcn, bool trigger=false) override
register callback functions
virtual StatusCode getRangeFromDB(const CLID &clid, const std::string &key, IOVRange &range, std::string &tag, std::unique_ptr< IOpaqueAddress > &ioa, const EventIDBase &now) const override
Get IOVRange from db for current event.
ServiceHandle< StoreGateSvc > p_sgs
virtual StatusCode setRangeInDB(const CLID &clid, const std::string &key, const IOVRange &range, const std::string &tag) override
Set a particular IOVRange in db (and memory)
virtual StatusCode regProxy(SG::DataProxy *proxy, const std::string &key, const std::string &storeName) override
Subscribe method for DataProxy. key StoreGate key.
virtual StatusCode getTriggeredTools(const std::string &key, std::set< std::string > &tools, const std::string &storeName) override
return list of tools (or functions) that have been triggered by key will return FAILURE if no tools f...
virtual StatusCode createCondObj(CondContBase *, const DataObjID &, const EventIDBase &) override
BooleanProperty m_forceReset
ServiceHandle< IToolSvc > p_toolSvc
virtual void ignoreProxy(const CLID &clid, const std::string &key, const std::string &storeName) override
ignore proxy
virtual StatusCode reinitialize() override
BooleanProperty m_preLoadRanges
virtual StatusCode initialize() override
std::string fullProxyName(const SG::DataProxy *proxy) const
virtual StatusCode dropObjectFromDB(const CLID &clid, const std::string &key, const std::string &storeName) override
Drop the associated object from the db and trigger reload.
BooleanProperty m_preLoadExtensibleFolders
ServiceHandle< ICondSvc > p_condSvc
Basic time unit for IOVSvc.
The Athena Transient Store API.