5#ifndef ATHENAKERNEL_IIOVSVC_H
6#define ATHENAKERNEL_IIOVSVC_H
8#include "GaudiKernel/IService.h"
9#include "GaudiKernel/StatusCode.h"
10#include "GaudiKernel/ClassID.h"
11#include "GaudiKernel/IOpaqueAddress.h"
61 bool trigger=
false) = 0;
72 bool trigger=
false ) = 0;
83 bool trigger=
false) = 0;
87 const std::string& key,
88 const std::string& storeName=
"StoreGateSvc") = 0;
92 const std::string& storeName=
"StoreGateSvc") = 0;
95 virtual StatusCode
regProxy(
const CLID& clid,
const std::string& key,
96 const std::string& storeName=
"StoreGateSvc" ) = 0;
110 const std::string& storeName) = 0;
118 std::unique_ptr<IOpaqueAddress>& ioa,
119 const EventIDBase& now)
const =0;
125 std::unique_ptr<IOpaqueAddress>& ioa)
const=0;
130 const std::string &tag) = 0;
136 const std::string& storeName) = 0;
140 const std::string& storeName=
"StoreGateSvc" ) = 0;
144 const std::string& storeName=
"StoreGateSvc" ) = 0;
148 std::set<std::string>&
tools,
149 const std::string& storeName=
"StoreGateSvc") = 0;
155 const std::string& storeName=
"StoreGateSvc") = 0;
158 const EventIDBase&) = 0;
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
Base class for all conditions containers.
Abstract interface for IOVSvc.
virtual StatusCode getRange(const CLID &clid, const std::string &key, IOVRange &iov) const =0
virtual std::vector< std::string > getStoreNames() const =0
virtual StatusCode createIOVTool(const std::string &storeName)=0
virtual StatusCode createCondObj(CondContBase *, const DataObjID &, const EventIDBase &)=0
virtual StatusCode preLoadDataTAD(const SG::TransientAddress *, const std::string &storeName="StoreGateSvc")=0
virtual StatusCode getRangeFromDB(const CLID &clid, const std::string &key, const IOVTime &time, IOVRange &range, std::string &tag, std::unique_ptr< IOpaqueAddress > &ioa) const =0
Get IOVRange from db for a particular event.
virtual StatusCode getRangeFromDB(const CLID &clid, const std::string &key, IOVRange &range, std::string &tag, std::unique_ptr< IOpaqueAddress > &ioa, const EventIDBase &now) const =0
Get IOVRange from db for current event.
virtual StatusCode setRange(const CLID &clid, const std::string &key, IOVRange &, const std::string &storeName)=0
virtual StatusCode setRangeInDB(const CLID &clid, const std::string &key, const IOVRange &range, const std::string &tag)=0
Set a particular IOVRange in db (and memory)
virtual StatusCode dropObjectFromDB(const CLID &clid, const std::string &key, const std::string &storeName)=0
Drop the associated object from the db and trigger reload.
virtual StatusCode replaceProxy(SG::DataProxy *pOld, SG::DataProxy *pNew, const std::string &storeName="StoreGateSvc")=0
replace a registered proxy with a new version
virtual StatusCode setRange(const CLID &clid, const std::string &key, IOVRange &)=0
virtual StatusCode regFcn(const CallBackID &c1, const CallBackID &c2, const IOVSvcCallBackFcn &fcn2, bool trigger=false)=0
register callback function
virtual StatusCode preLoadTAD(const SG::TransientAddress *, const std::string &storeName="StoreGateSvc")=0
pre-load transient Addresses
virtual void resetAllProxies()=0
reset all proxies known to IOVSvc
virtual StatusCode regFcn(SG::DataProxy *dp, const CallBackID &c, const IOVSvcCallBackFcn &fcn, bool trigger=false)=0
register callback function
virtual StatusCode regFcn(const std::string &toolName, const CallBackID &c2, const IOVSvcCallBackFcn &fcn2, bool trigger=false)=0
register callback function
virtual void ignoreProxy(const CLID &clid, const std::string &key, const std::string &storeName="StoreGateSvc")=0
virtual StatusCode regProxy(SG::DataProxy *proxy, const std::string &key, const std::string &storeName="StoreGateSvc")=0
Subscribe method for DataProxy. key StoreGate key.
virtual StatusCode deregProxy(SG::DataProxy *proxy)=0
virtual StatusCode deregProxy(const CLID &clid, const std::string &key)=0
DeclareInterfaceID(IIOVSvc, 1, 0)
virtual StatusCode getTriggeredTools(const std::string &key, std::set< std::string > &tools, const std::string &storeName="StoreGateSvc")=0
get the names of the tools that have been triggered
virtual StatusCode regProxy(const CLID &clid, const std::string &key, const std::string &storeName="StoreGateSvc")=0
Another way to subscribe.
Basic time unit for IOVSvc.