![]() |
ATLAS Offline Software
|
Athena service for Interval Of Validity database. The IOVDbSvc may be in one of three time states which determines from where the IOV time is coming: initialization - IOV time must be set from the EventSelector begin run - IOV time should have been set with signalBeginRun event loop - IOV time is from EventInfo. More...
#include <IOVDbSvc.h>
Classes | |
class | SvcFactory |
Public Types | |
typedef IAddressProvider::tadList | tadList |
typedef IAddressProvider::tadListIterator | tadListIterator |
Public Member Functions | |
virtual | ~IOVDbSvc () |
virtual StatusCode | initialize () override |
Service init. More... | |
StatusCode | io_reinit () override final |
virtual StatusCode | finalize () override |
Service finalize. More... | |
StatusCode | io_finalize () override final |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvInterface) override |
Query the interfaces. More... | |
virtual cool::IDatabasePtr | getDatabase (bool readOnly) override |
Access to COOL database for a given folder. More... | |
DeclareInterfaceID (IAddressProvider, 1, 0) | |
MsgStream & | msg () const |
MsgStream & | msg (const MSG::Level lvl) const |
bool | msgLvl (const MSG::Level lvl) const |
Address use | |
virtual StatusCode | preLoadAddresses (StoreID::type storeID, tadList &list) override |
Get all addresses that the provider wants to preload in SG maps. More... | |
virtual StatusCode | loadAddresses (StoreID::type storeID, tadList &list) override |
Get all new addresses from Provider for this Event. More... | |
virtual StatusCode | updateAddress (StoreID::type storeID, SG::TransientAddress *tad, const EventContext &ctx) override |
Update a transient Address. More... | |
Static Public Member Functions | |
static const InterfaceID & | interfaceID () |
IOV range access | |
enum | IOVDbSvc_state { INITIALIZATION = 0, BEGIN_RUN, EVENT_LOOP, FINALIZE_ALG } |
typedef std::vector< IOVDbConn * > | ConnVec |
typedef std::map< std::string, IOVDbFolder * > | FolderMap |
Gaudi::Property< std::string > | m_par_defaultConnection {this,"dbConnection","sqlite://;schema=cooldummy.db;dbname=OFLP200","default DB connection string"} |
Gaudi::Property< std::string > | m_par_globalTag {this,"GlobalTag","","Global database tag"} |
Gaudi::Property< std::string > | m_par_dbinst {this,"DBInstance","","Database instance (like OFLP200)"} |
Gaudi::Property< std::vector< std::string > > | m_par_folders {this,"Folders",{},"List of database folders to preload","OrderedSet<std::string>"} |
Gaudi::Property< std::vector< std::string > > | m_par_overrideTags {this,"overrideTags",{},"List of foolder-tag overrides","OrderedSet<std::string>"} |
Gaudi::Property< std::vector< std::string > > | m_par_foldersToWrite {this,"FoldersToMetaData",{},"list of folders to write to file meta data","OrderedSet<std::string>"} |
BooleanProperty | m_par_manageConnections {this,"ManageConnections",true,"flag to trigger the connections management"} |
BooleanProperty | m_par_managePoolConnections {this,"ManagePoolConnections",true,"flag to manage pool connections"} |
IntegerProperty | m_par_forceRunNumber {this,"forceRunNumber",0,"globally force run-number (default: no force)"} |
IntegerProperty | m_par_forceLumiblockNumber {this,"forceLumiblockNumber",0,"globally force LB-number (default: no force)"} |
IntegerProperty | m_par_forceTimestamp {this,"forceTimeStamp",0,"globally force time-stamp (default: no force)"} |
IntegerProperty | m_par_maxNumPoolFiles {this,"MaxPoolFilesOpen",5,"max number of pool files open allowed (0 means no limit)"} |
FloatProperty | m_par_timeStampSlop {this,"TimeStampSlop",0.0,"backdata timestamp IOVs by this many seconds"} |
IntegerProperty | m_par_cacheRun {this,"CacheRun",0,"force larger numbers of runs to be cached"} |
IntegerProperty | m_par_cacheTime {this,"CacheTime",0,"force larger timeranges to be cached (seconds)"} |
UnsignedIntegerProperty | m_par_cacheAlign {this,"CacheAlign",0,"cache alignment - divide cache into N slices and align queries on slice"} |
BooleanProperty | m_par_onlineMode {this,"OnlineMode",false,"online mode flag to ignore missing channels outside cache range"} |
BooleanProperty | m_par_checklock {this,"CheckLock",false,"check to ensure global/HVS tags are locked (for production)"} |
StringProperty | m_par_source {this,"Source","COOL_DATABASE","source of data as a string (default COOL_DATABASE)"} |
StringProperty | m_par_crestServer {this,"crestServer","http://crest-undertow-api.web.cern.ch","CREST URL with the port number as a string (default http://crest-undertow-api.web.cern.ch)"} |
std::map< std::string, std::string > | m_cresttagmap |
StringProperty | m_par_format {this,"Format",{},"Format of data; default is empty string (default for a given source)"} |
BooleanProperty | m_outputToFile {this,"OutputToFile",false,"output to file for debugging purposes"} |
BooleanProperty | m_crestToFile {this,"CrestToFile",false,"output to file crest data for debugging purposes"} |
BooleanProperty | m_crestCoolToFile {this,"CrestCoolToFile",false,"output to file crest or cool data in the same format for debugging purposes"} |
ServiceHandle< IIOVSvc > | m_h_IOVSvc {this,"IOVSvc","IOVSvc"} |
ServiceHandle< StoreGateSvc > | m_h_sgSvc {this,"StoreGateSvc","StoreGateSvc"} |
ServiceHandle< StoreGateSvc > | m_h_detStore {this,"DetectorStore","DetectorStore"} |
ServiceHandle< StoreGateSvc > | m_h_metaDataStore {this,"MetaDataStore","StoreGateSvc/MetaDataStore"} |
ServiceHandle< IAddressCreator > | m_h_persSvc {this,"EventPersistencySvc","EventPersistencySvc"} |
ServiceHandle< IClassIDSvc > | m_h_clidSvc {this,"ClassIDSvc","ClassIDSvc"} |
ServiceHandle< IPoolSvc > | m_h_poolSvc {this,"PoolSvc","PoolSvc"} |
PublicToolHandle< IIOVDbMetaDataTool > | m_h_metaDataTool {this,"IOVDbMetaDataTool","IOVDbMetaDataTool"} |
ServiceHandle< ITagInfoMgr > | m_h_tagInfoMgr {this,"TagInfoMgr","TagInfoMgr"} |
bool | m_poolPayloadRequested {false} |
int | m_poolSvcContext {-1} |
IOVDbSvc_state | m_state {INITIALIZATION} |
IOVTime | m_iovTime {} |
std::string | m_globalTag {} |
cool::ValidityKey | m_iovslop {} |
ConnVec | m_connections |
FolderMap | m_foldermap |
bool | m_abort {false} |
virtual StatusCode | getRange (const CLID &clid, const std::string &dbKey, const IOVTime &time, IOVRange &range, std::string &tag, std::unique_ptr< IOpaqueAddress > &ioa) override |
Get range for a particular data object identified by its clid and key and a requested IOVTime. More... | |
virtual StatusCode | setRange (const CLID &clid, const std::string &dbKey, const IOVRange &range, const std::string &tag) override |
Set range for a particular data object. More... | |
virtual StatusCode | signalBeginRun (const IOVTime &beginRunTime, const EventContext &ctx) override |
Set time for begin run. More... | |
virtual void | signalEndProxyPreload () override |
Signal that callback has been fired. More... | |
virtual void | postConditionsLoad () override |
May be called once conditions are loaded to let IOVDbSvc release resources. More... | |
virtual void | handle (const Incident &incident) override |
Incident service handle for EndEvent. More... | |
virtual StatusCode | processTagInfo () override |
Process TagInfo. More... | |
virtual std::vector< std::string > | getKeyList () override |
return list of SG keys being provided by IOVDbSvc More... | |
virtual bool | getKeyInfo (const std::string &key, IIOVDbSvc::KeyInfo &info) override |
Return information about SG key return false if this key is not known to IOVDbSvc. More... | |
virtual bool | dropObject (const std::string &key, const bool resetCache=false) override |
StatusCode | checkConfigConsistency () const |
StatusCode | checkEventSel () |
StatusCode | setupFolders () |
StatusCode | fillTagInfo () |
StatusCode | loadCaches (IOVDbConn *conn, const IOVTime *time=nullptr) |
int | poolSvcContext () |
Athena service for Interval Of Validity database. The IOVDbSvc may be in one of three time states which determines from where the IOV time is coming: initialization - IOV time must be set from the EventSelector begin run - IOV time should have been set with signalBeginRun event loop - IOV time is from EventInfo.
Definition at line 77 of file IOVDbSvc.h.
|
private |
Definition at line 286 of file IOVDbSvc.h.
|
private |
Definition at line 289 of file IOVDbSvc.h.
Definition at line 110 of file IOVDbSvc.h.
Definition at line 111 of file IOVDbSvc.h.
|
private |
Enumerator | |
---|---|
INITIALIZATION | |
BEGIN_RUN | |
EVENT_LOOP | |
FINALIZE_ALG |
Definition at line 268 of file IOVDbSvc.h.
|
virtualdefault |
|
private |
Definition at line 1177 of file IOVDbSvc.cxx.
|
private |
Definition at line 886 of file IOVDbSvc.cxx.
|
inherited |
|
overridevirtual |
|
private |
Definition at line 1096 of file IOVDbSvc.cxx.
|
overridevirtual |
|
overridevirtual |
Access to COOL database for a given folder.
Implements IIOVCondDbSvc.
Definition at line 309 of file IOVDbSvc.cxx.
|
overridevirtual |
Return information about SG key return false if this key is not known to IOVDbSvc.
Implements IIOVDbSvc.
Definition at line 838 of file IOVDbSvc.cxx.
|
overridevirtual |
return list of SG keys being provided by IOVDbSvc
Implements IIOVDbSvc.
Definition at line 830 of file IOVDbSvc.cxx.
|
overridevirtual |
|
overridevirtual |
Incident service handle for EndEvent.
Definition at line 768 of file IOVDbSvc.cxx.
|
overridevirtual |
Service init.
Definition at line 173 of file IOVDbSvc.cxx.
|
static |
|
finaloverride |
Definition at line 267 of file IOVDbSvc.cxx.
|
finaloverride |
Definition at line 260 of file IOVDbSvc.cxx.
|
overridevirtual |
Get all new addresses from Provider for this Event.
Reimplemented from IAddressProvider.
Definition at line 453 of file IOVDbSvc.cxx.
Definition at line 1131 of file IOVDbSvc.cxx.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 27 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
private |
Definition at line 154 of file IOVDbSvc.cxx.
|
overridevirtual |
May be called once conditions are loaded to let IOVDbSvc release resources.
Implements IIOVDbSvc.
Definition at line 743 of file IOVDbSvc.cxx.
|
overridevirtual |
Get all addresses that the provider wants to preload in SG maps.
Reimplemented from IAddressProvider.
Definition at line 327 of file IOVDbSvc.cxx.
|
overridevirtual |
Process TagInfo.
Implements IIOVDbSvc.
Definition at line 788 of file IOVDbSvc.cxx.
|
overridevirtual |
Query the interfaces.
Identify interfaces to which this service is responsive.
Definition at line 142 of file IOVDbSvc.cxx.
|
overridevirtual |
Set range for a particular data object.
Implements IIOVDbSvc.
Definition at line 660 of file IOVDbSvc.cxx.
|
private |
Definition at line 946 of file IOVDbSvc.cxx.
|
overridevirtual |
Set time for begin run.
Implements IIOVDbSvc.
Definition at line 668 of file IOVDbSvc.cxx.
|
overridevirtual |
Signal that callback has been fired.
Implements IIOVDbSvc.
Definition at line 739 of file IOVDbSvc.cxx.
|
overridevirtual |
Update a transient Address.
Implements IAddressProvider.
Definition at line 459 of file IOVDbSvc.cxx.
|
private |
Definition at line 292 of file IOVDbSvc.h.
|
private |
Definition at line 287 of file IOVDbSvc.h.
|
private |
Definition at line 240 of file IOVDbSvc.h.
|
private |
Definition at line 234 of file IOVDbSvc.h.
|
private |
Definition at line 239 of file IOVDbSvc.h.
|
private |
Definition at line 290 of file IOVDbSvc.h.
|
private |
Definition at line 280 of file IOVDbSvc.h.
|
private |
Definition at line 248 of file IOVDbSvc.h.
|
private |
Definition at line 245 of file IOVDbSvc.h.
|
private |
Definition at line 243 of file IOVDbSvc.h.
|
private |
Definition at line 246 of file IOVDbSvc.h.
|
private |
Definition at line 250 of file IOVDbSvc.h.
|
private |
Definition at line 247 of file IOVDbSvc.h.
|
private |
Definition at line 249 of file IOVDbSvc.h.
|
private |
Definition at line 244 of file IOVDbSvc.h.
|
private |
Definition at line 251 of file IOVDbSvc.h.
|
private |
Definition at line 283 of file IOVDbSvc.h.
|
private |
Definition at line 277 of file IOVDbSvc.h.
|
private |
Definition at line 238 of file IOVDbSvc.h.
|
private |
Definition at line 224 of file IOVDbSvc.h.
|
private |
Definition at line 219 of file IOVDbSvc.h.
|
private |
Definition at line 221 of file IOVDbSvc.h.
|
private |
Definition at line 228 of file IOVDbSvc.h.
|
private |
Definition at line 232 of file IOVDbSvc.h.
|
private |
Definition at line 197 of file IOVDbSvc.h.
|
private |
Definition at line 193 of file IOVDbSvc.h.
|
private |
Definition at line 199 of file IOVDbSvc.h.
|
private |
Definition at line 203 of file IOVDbSvc.h.
|
private |
Definition at line 211 of file IOVDbSvc.h.
|
private |
Definition at line 209 of file IOVDbSvc.h.
|
private |
Definition at line 213 of file IOVDbSvc.h.
|
private |
Definition at line 236 of file IOVDbSvc.h.
|
private |
Definition at line 195 of file IOVDbSvc.h.
|
private |
Definition at line 205 of file IOVDbSvc.h.
|
private |
Definition at line 207 of file IOVDbSvc.h.
|
private |
Definition at line 215 of file IOVDbSvc.h.
|
private |
Definition at line 226 of file IOVDbSvc.h.
|
private |
Definition at line 201 of file IOVDbSvc.h.
|
private |
Definition at line 230 of file IOVDbSvc.h.
|
private |
Definition at line 217 of file IOVDbSvc.h.
|
private |
Definition at line 256 of file IOVDbSvc.h.
|
private |
Definition at line 260 of file IOVDbSvc.h.
|
private |
Definition at line 274 of file IOVDbSvc.h.