1#ifndef _RootEventBaseCnv_H
2#define _RootEventBaseCnv_H 1
8#include "GaudiKernel/Converter.h"
9#include "GaudiKernel/CnvFactory.h"
10#include "GaudiKernel/IDataProviderSvc.h"
97 void declareObject(
const std::string& fullPath,
const CLID& clid,
98 const std::string& treename,
99 const std::string& branchname );
102 virtual StatusCode
createObj(IOpaqueAddress* addr,
106 virtual StatusCode
createRep(DataObject* pObject,
107 IOpaqueAddress*& refpAddress);
110 virtual StatusCode
fillRepRefs(IOpaqueAddress* pAddress,
111 DataObject* pObject);
114 virtual StatusCode
fillObjRefs(IOpaqueAddress* pAddress,
115 DataObject* pObject);
const long int ROOT_StorageType
Definition of a Root address, derived from IOpaqueAddress.
Root Event Conversion Service which coordinates all of our converters.
Base class for all Root Converters.
virtual StatusCode DataObjectToTObject(DataObject *dat, RootAddress *addr)=0
Do the concrete conversion from TDS to ROOT.
virtual StatusCode fillObjRefs(IOpaqueAddress *pAddress, DataObject *pObject)
Resolve the references of the converted object.
std::string m_rootTreename
each converter knows it's treename
std::vector< void * > m_adresses
each converter knows the corresponding adresses
virtual StatusCode createObj(IOpaqueAddress *addr, DataObject *&dat)
Convert the persistent object to transient.
static const unsigned char storageType()
Storage type and class ID.
RootEvtSelector * m_evtsel
TObject * m_objRead
the object that was read
virtual StatusCode initialize()
RootInterface * m_rootInterface
pointer to the RootInterface
TObject * getReadObject() const
get the object to be read
int m_branchNrEvtNavigator
TArrayS * m_branchNumbers
array with number of branches for reading
virtual StatusCode finalize()
virtual ~RootEventBaseCnv()
virtual StatusCode TObjectToDataObject(DataObject *&dat)=0
Do the concrete conversion from ROOT to TDS.
virtual long repSvcType() const
void declareObject(const std::string &fullPath, const CLID &clid, const std::string &treename, const std::string &branchname)
Store TDS path to link a particular converter to an object on the TDS.
std::string m_currentFileName
IDataProviderSvc * m_eds
pointer to eventdataservice
int m_branchNr
the branchNr of this converter for writing
std::string m_rootBranchname
root branchname (may be concatenated of severals)
CLID CLID_top
the CLID of the upper converter if any
virtual StatusCode fillRepRefs(IOpaqueAddress *pAddress, DataObject *pObject)
Resolve the references of the converted object.
std::vector< RootCnvSvc::Leaf > m_leaves
virtual StatusCode createRep(DataObject *pObject, IOpaqueAddress *&refpAddress)
Convert the transient object to the requested representation.
RootEvtSelector performs the function of controlling the ApplicationMgr loop.