6#ifndef EvtNavigatorCnv_CXX
7#define EvtNavigatorCnv_CXX
9#include "GaudiKernel/DataObject.h"
10#include "GaudiKernel/IDataProviderSvc.h"
11#include "GaudiKernel/ISvcLocator.h"
12#include "GaudiKernel/MsgStream.h"
13#include "GaudiKernel/PropertyMgr.h"
14#include "GaudiKernel/RegistryEntry.h"
15#include "GaudiKernel/SmartDataPtr.h"
17#include "GaudiKernel/IOpaqueAddress.h"
19#include "EventModel/EventModel.h"
20#include "EventNavigator/EventNavigator.h"
21#include "RootCnvSvc/EvtNavigatorCnv.h"
22#include "RootCnvSvc/RootAddress.h"
23#include "RootCnvSvc/RootEvtSelector.h"
24#include "RootEventData/TEvtNavigator.h"
27using namespace DataSvcHelpers;
34 MsgStream log(
msgSvc(),
"EvtNavigatorCnv" );
35 m_rootBranchname =
"m_mcMdcMcHits:m_mcMdcTracks:m_mcEmcMcHits:m_mcEmcRecShowers";
47 StatusCode sc = StatusCode::SUCCESS;
49 MsgStream log(
msgSvc(),
"EvtNavigatorCnv" );
60 delete m_evtNavigatorR;
69 m_cnvSvc->setEvtNavigatorCnv(
this );
76 MsgStream log(
msgSvc(),
"EvtNavigatorCnv" );
81 log << MSG::ERROR <<
"Could not downcast to TDS EventNavigator" << endmsg;
82 return StatusCode::FAILURE;
86 m_common.m_EvtNavigator = m_evtNavigatorW;
99 m_evtNavigatorW->ClassName(),
101 if ( sc.isFailure() )
103 delete m_evtNavigatorW;
104 log << MSG::ERROR <<
"Could not create branch TEvtNavigator in "
106 return StatusCode::SUCCESS;
111 return StatusCode::SUCCESS;
IndexMap & getMcMdcMcHitsIdx()
void setMcEmcRecShowersIdx(IndexMap &map)
void setMcMdcMcHitsIdx(IndexMap &map)
IndexMap & getMcEmcMcHitsIdx()
void setMcEmcMcHitsIdx(IndexMap &map)
IndexMap & getMcEmcRecShowersIdx()
IndexMap & getMcMdcTracksIdx()
void setMcMdcTracksIdx(IndexMap &map)
EvtNavigatorCnv(ISvcLocator *svc)
virtual StatusCode TObjectToDataObject(DataObject *&refpObject)
do the transformation from ROOT to TDS object
static const CLID & classID()
virtual StatusCode DataObjectToTObject(DataObject *obj, RootAddress *addr)
transformation from TDS object to ROOT
virtual StatusCode initialize()
Definition of a Root address, derived from IOpaqueAddress.
std::string getTreename() const
virtual StatusCode initialize()
int m_branchNrEvtNavigator
std::vector< void * > m_adresses
each converter knows the corresponding adresses
RootInterface * m_rootInterface
pointer to the RootInterface
std::string m_rootBranchname
root branchname (may be concatenated of severals)
RootEventBaseCnv(const CLID &clid, ISvcLocator *svc)