26#include "GaudiKernel/StatusCode.h"
27#include "GaudiKernel/ClassID.h"
28#include "GaudiKernel/ServiceHandle.h"
29#include "GaudiKernel/ICondSvc.h"
45class IOVSvc:
public extends<AthService, IIOVSvc>
49 IOVSvc(
const std::string& name, ISvcLocator* svc );
54 virtual StatusCode
createIOVTool(
const std::string& storeName )
override;
55 virtual std::vector<std::string>
getStoreNames()
const override;
58 virtual StatusCode
setRange(
const CLID& clid,
const std::string& key,
60 virtual StatusCode
setRange(
const CLID& clid,
const std::string& key,
62 const std::string& storeName)
override;
64 virtual StatusCode
getRange(
const CLID& clid,
const std::string& key,
69 const std::string& key,
70 const std::string& storeName)
override;
75 const std::string& storeName)
override;
79 virtual StatusCode
regProxy(
const CLID& clid,
const std::string& key,
80 const std::string& storeName )
override;
84 virtual StatusCode
deregProxy(
const CLID& clid,
const std::string& key )
override;
91 std::unique_ptr<IOpaqueAddress>& ioa,
92 const EventIDBase& now)
const override;
98 std::unique_ptr<IOpaqueAddress>& ioa)
const override;
103 const std::string &tag)
override;
107 const std::string& storeName)
override;
111 const std::string& storeName )
override;
115 const std::string& storeName )
override;
120 const std::string& storeName)
override;
123 const EventIDBase&)
override;
130 bool createIF=
true );
141 Gaudi::Property<bool>
m_forceReset{
this,
"forceResetAtBeginRun",
false};
uint32_t CLID
The Class ID type.
Basic time unit for IOVSvc.
Base class for all conditions containers.
Gaudi::Property< std::string > m_updateInterval
virtual StatusCode preLoadDataTAD(const SG::TransientAddress *, const std::string &storeName) override
supply a list of TADs whose data will be preloaded
std::map< std::string, IIOVSvcTool * > m_toolMap
Gaudi::Property< bool > m_preLoadRanges
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
Gaudi::Property< bool > m_preLoadExtensibleFolders
Gaudi::Property< bool > m_preLoadData
IOVSvc(const std::string &name, ISvcLocator *svc)
virtual StatusCode getRange(const CLID &clid, const std::string &key, IOVRange &io) const override
virtual StatusCode replaceProxy(SG::DataProxy *pOld, SG::DataProxy *pNew, const std::string &storeName) override
replace a registered DataProxy with a new version
ServiceHandle< IClassIDSvc > p_CLIDSvc
virtual void resetAllProxies() override
Gaudi::Property< bool > m_partialPreLoadData
virtual StatusCode deregProxy(SG::DataProxy *proxy) override
Deregister a DataProxy with the service.
Gaudi::Property< bool > m_forceReset
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 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 createCondObj(CondContBase *, const DataObjID &, const EventIDBase &) override
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
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.
Gaudi::Property< bool > m_sortKeys
ServiceHandle< ICondSvc > p_condSvc
Basic time unit for IOVSvc.
The Athena Transient Store API.