5#ifndef POOLROOTACCESS_TEVENT_H
6#define POOLROOTACCESS_TEVENT_H
10#include "GaudiKernel/Bootstrap.h"
12#include "GaudiKernel/IIncidentSvc.h"
13#include "Gaudi/Interfaces/IOptionsSvc.h"
17#include "GaudiKernel/IAppMgrUI.h"
37 IAppMgrUI*
Init(
const char* options =
"POOLRootAccess/basic.opts" );
51 static IAppMgrUI*
Init(
const char* options =
"POOLRootAccess/basic.opts" ) {
return POOL::Init(options); }
54 TEvent(
const std::string& name =
"StoreGateSvc" );
64 if constexpr (std::is_convertible_v<T, std::string>) {
74 template<
typename T> StatusCode
retrieve(
const T*& obj ) {
78 template<
typename T> StatusCode
retrieve( T*& obj ) {
82 template<
typename T> StatusCode
retrieve(
const T*& obj ,
const std::string& key ){
83 return evtStore()->retrieve( obj, key );
85 template<
typename T> StatusCode
retrieve( T*& obj ,
const std::string& key ){
86 return evtStore()->retrieve( obj, key );
90 template<
typename T> StatusCode
retrieveMetaInput(
const T*& obj,
const std::string& key ) {
Abstract interface for seeking within an event stream.
Extension to IEvtSelector to allow for seeking.
StatusCode readFrom(TFile *file)
TEvent(const std::string &name="StoreGateSvc")
PyObject * contains(PyObject *tp, PyObject *pykey)
ServiceHandle< IEvtSelectorSeek > m_evtSelect
PyObject * record(PyObject *obj, PyObject *pykey, bool allowMods=true, bool resetOnly=true, bool noHist=false)
static IAppMgrUI * Init(const char *options="POOLRootAccess/basic.opts")
StatusCode retrieve(const T *&obj)
ServiceHandle< Gaudi::Interfaces::IOptionsSvc > m_joSvc
ServiceHandle< StoreGateSvc > m_inputMetaStore
ServiceHandle< StoreGateSvc > & evtStore()
PyObject * get_item(PyObject *pykey)
StatusCode retrieveMetaInput(const T *&obj, const std::string &key)
StatusCode retrieve(T *&obj, const std::string &key)
void setActive()
ensure we are the active store, for the purpose of element links etc
ServiceHandle< StoreGateSvc > m_evtStore
ServiceHandle< IEventSeek > m_evtLoop
ServiceHandle< StoreGateSvc > & inputMetaStore()
StatusCode retrieve(T *&obj)
IEventProcessor * m_evtProcessor
ServiceHandle< IIncidentSvc > m_incSvc
void setEvtSelProperty(const char *name, const T &val)
ServiceHandle< IEventSeek > & evtLoop()
StatusCode retrieve(const T *&obj, const std::string &key)
std::vector< std::string > files
file names and file pointers
=============================================================================
IAppMgrUI * Init(const char *options="POOLRootAccess/basic.opts")
Bootstraps (creates and configures) the Gaudi Application with the provided options file.