BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
RootEventBaseCnv Class Referenceabstract

Base class for all Root Converters. More...

#include <RootEventBaseCnv.h>

Inheritance diagram for RootEventBaseCnv:

Public Member Functions

 RootEventBaseCnv (const CLID &clid, ISvcLocator *svc)
virtual ~RootEventBaseCnv ()
virtual long repSvcType () const
virtual StatusCode initialize ()
virtual StatusCode finalize ()
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.
virtual StatusCode createObj (IOpaqueAddress *addr, DataObject *&dat)
 Convert the persistent object to transient.
virtual StatusCode createRep (DataObject *pObject, IOpaqueAddress *&refpAddress)
 Convert the transient object to the requested representation.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode fillObjRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode DataObjectToTObject (DataObject *dat, RootAddress *addr)=0
 Do the concrete conversion from TDS to ROOT.
virtual StatusCode TObjectToDataObject (DataObject *&dat)=0
 Do the concrete conversion from ROOT to TDS.
TObject * getReadObject () const
 get the object to be read
 RootEventBaseCnv (const CLID &clid, ISvcLocator *svc)
virtual ~RootEventBaseCnv ()
virtual long repSvcType () const
virtual StatusCode initialize ()
virtual StatusCode finalize ()
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.
virtual StatusCode createObj (IOpaqueAddress *addr, DataObject *&dat)
 Convert the persistent object to transient.
virtual StatusCode createRep (DataObject *pObject, IOpaqueAddress *&refpAddress)
 Convert the transient object to the requested representation.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode fillObjRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode DataObjectToTObject (DataObject *dat, RootAddress *addr)=0
 Do the concrete conversion from TDS to ROOT.
virtual StatusCode TObjectToDataObject (DataObject *&dat)=0
 Do the concrete conversion from ROOT to TDS.
TObject * getReadObject () const
 get the object to be read
 RootEventBaseCnv (const CLID &clid, ISvcLocator *svc)
virtual ~RootEventBaseCnv ()
virtual long repSvcType () const
virtual StatusCode initialize ()
virtual StatusCode finalize ()
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.
virtual StatusCode createObj (IOpaqueAddress *addr, DataObject *&dat)
 Convert the persistent object to transient.
virtual StatusCode createRep (DataObject *pObject, IOpaqueAddress *&refpAddress)
 Convert the transient object to the requested representation.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode fillObjRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode DataObjectToTObject (DataObject *dat, RootAddress *addr)=0
 Do the concrete conversion from TDS to ROOT.
virtual StatusCode TObjectToDataObject (DataObject *&dat)=0
 Do the concrete conversion from ROOT to TDS.
TObject * getReadObject () const
 get the object to be read
Public Member Functions inherited from Converter< Ty1, Ty2 >
destinationoperator (const source &) const
destinationoperator (const source &) const
destinationoperator (const source &) const

Static Public Member Functions

static const unsigned char storageType ()
 Storage type and class ID.
static const unsigned char storageType ()
 Storage type and class ID.
static const unsigned char storageType ()
 Storage type and class ID.

Protected Attributes

IRootCnvSvcm_cnvSvc
std::vector< RootCnvSvc::Leafm_leaves
RootInterfacem_rootInterface
 pointer to the RootInterface
IDataProviderSvc * m_eds
 pointer to eventdataservice
int m_branchNr
 the branchNr of this converter for writing
int m_branchNrDst
int m_branchNrMc
int m_branchNrRecon
int m_branchNrEvtRec
int m_branchNrEvtHeader
int m_branchNrEvtNavigator
TObject * m_objRead
 the object that was read
CLID CLID_top
 the CLID of the upper converter if any
TArrayS * m_branchNumbers
 array with number of branches for reading
std::string m_rootBranchname
 root branchname (may be concatenated of severals)
std::string m_rootTreename
 each converter knows it's treename
std::string m_currentFileName
std::vector< void * > m_adresses
 each converter knows the corresponding adresses
RootEvtSelectorm_evtsel

Additional Inherited Members

Public Types inherited from Converter< Ty1, Ty2 >
typedef Ty1 source
typedef Ty2 destination
typedef Ty1 source
typedef Ty2 destination
typedef Ty1 source
typedef Ty2 destination
Protected Member Functions inherited from Converter< Ty1, Ty2 >
virtual destinationconvert (const source &) const =0
virtual destinationconvert (const source &) const =0
virtual destinationconvert (const source &) const =0

Detailed Description

Base class for all Root Converters.

Based on SICb's SicbBaseCnv all specific converters inherit from this base class. The basic functions they have to implement are the pure conversions to and from DataObjects/Root Objects. In case there is more to do ( calling of upper converters, creation of branches for writing, reading of subbranches) they may also override the methods createObj/createRep. Based on the RootEventBaseCnv of Glast.

Definition at line 38 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Constructor & Destructor Documentation

◆ RootEventBaseCnv() [1/3]

RootEventBaseCnv::RootEventBaseCnv ( const CLID & clid,
ISvcLocator * svc )

Definition at line 30 of file RootEventBaseCnv.cxx.

31 : Converter( ROOT_StorageType, clid, svc )
32 , m_cnvSvc( 0 )
33 , m_rootBranchname( "" )
34 , m_rootTreename( "Event" )
35 , m_evtsel( 0 ) {
36
37 m_branchNr = -1;
38 m_branchNrDst = -1;
39 m_branchNrMc = -1;
40 m_branchNrRecon = -1;
44 m_objRead = 0;
45 CLID_top = 0;
46 m_branchNumbers = new TArrayS( 0 );
47}
const long int ROOT_StorageType
std::string m_rootTreename
each converter knows it's treename
TArrayS * m_branchNumbers
array with number of branches for reading
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

Referenced by createObj(), DigiCnv::DigiCnv(), DstCnv::DstCnv(), DstHltInfCnv::DstHltInfCnv(), EmcDigiCnv::EmcDigiCnv(), EmcMcHitCnv::EmcMcHitCnv(), EmcTrackCnv::EmcTrackCnv(), EventCnv::EventCnv(), EvtHeaderCnv::EvtHeaderCnv(), EvtNavigatorCnv::EvtNavigatorCnv(), EvtRecCnv::EvtRecCnv(), EvtRecDTagCnv::EvtRecDTagCnv(), EvtRecEtaToGGCnv::EvtRecEtaToGGCnv(), EvtRecEventCnv::EvtRecEventCnv(), EvtRecPi0Cnv::EvtRecPi0Cnv(), EvtRecPrimaryVertexCnv::EvtRecPrimaryVertexCnv(), EvtRecTrackCnv::EvtRecTrackCnv(), EvtRecVeeVertexCnv::EvtRecVeeVertexCnv(), ExtTrackCnv::ExtTrackCnv(), HltCnv::HltCnv(), HltInfCnv::HltInfCnv(), HltRawCnv::HltRawCnv(), LumiDigiCnv::LumiDigiCnv(), McCnv::McCnv(), McParticleCnv::McParticleCnv(), MdcDedxCnv::MdcDedxCnv(), MdcDigiCnv::MdcDigiCnv(), MdcKalTrackCnv::MdcKalTrackCnv(), MdcMcHitCnv::MdcMcHitCnv(), MdcTrackCnv::MdcTrackCnv(), MucDigiCnv::MucDigiCnv(), MucMcHitCnv::MucMcHitCnv(), MucTrackCnv::MucTrackCnv(), RecBTofCalHitCnv::RecBTofCalHitCnv(), RecEmcClusterCnv::RecEmcClusterCnv(), RecEmcHitCnv::RecEmcHitCnv(), RecEmcShowerCnv::RecEmcShowerCnv(), RecETofCalHitCnv::RecETofCalHitCnv(), RecEvTimeCnv::RecEvTimeCnv(), RecExtTrackCnv::RecExtTrackCnv(), RecMdcDedxCnv::RecMdcDedxCnv(), RecMdcDedxHitCnv::RecMdcDedxHitCnv(), RecMdcHitCnv::RecMdcHitCnv(), RecMdcKalHelixSegCnv::RecMdcKalHelixSegCnv(), RecMdcKalTrackCnv::RecMdcKalTrackCnv(), RecMdcTrackCnv::RecMdcTrackCnv(), RecMucRecHitCnv::RecMucRecHitCnv(), RecMucTrackCnv::RecMucTrackCnv(), RecTofTrackCnv::RecTofTrackCnv(), RecTrackCnv::RecTrackCnv(), RecZddChannelCnv::RecZddChannelCnv(), TofDigiCnv::TofDigiCnv(), TofMcHitCnv::TofMcHitCnv(), TofTrackCnv::TofTrackCnv(), TrigCnv::TrigCnv(), and TrigDataCnv::TrigDataCnv().

◆ ~RootEventBaseCnv() [1/3]

virtual RootEventBaseCnv::~RootEventBaseCnv ( )
inlinevirtual

◆ RootEventBaseCnv() [2/3]

RootEventBaseCnv::RootEventBaseCnv ( const CLID & clid,
ISvcLocator * svc )

◆ ~RootEventBaseCnv() [2/3]

virtual RootEventBaseCnv::~RootEventBaseCnv ( )
inlinevirtual

◆ RootEventBaseCnv() [3/3]

RootEventBaseCnv::RootEventBaseCnv ( const CLID & clid,
ISvcLocator * svc )

◆ ~RootEventBaseCnv() [3/3]

virtual RootEventBaseCnv::~RootEventBaseCnv ( )
inlinevirtual

Member Function Documentation

◆ createObj() [1/3]

StatusCode RootEventBaseCnv::createObj ( IOpaqueAddress * addr,
DataObject *& dat )
virtual

Convert the persistent object to transient.

Reimplemented in EventCnv, EventCnv, and EventCnv.

Definition at line 176 of file RootEventBaseCnv.cxx.

176 {
177 // transform ROOT object to TDS object
178 MsgStream log( msgSvc(), "RootEventBaseCnv" );
179 log << MSG::DEBUG << "RootEventBaseCnv::createObj with clid " << addr->clID() << endmsg;
180 StatusCode sc;
181
182 // add 2005-11-29
183 // log<<MSG::INFO<<"######### RootEventBaseCnv ::createObj begin of createObj:
184 // m_branchNumbers
185 // "<<m_branchNumbers->GetSize()<<"###############"<<endmsg;
186
187 RootAddress* raddr = dynamic_cast<RootAddress*>( addr );
188 if ( !raddr )
189 {
190 log << MSG::ERROR << "Could not downcast to Root address" << endmsg;
191 return StatusCode::FAILURE;
192 }
193
194 static int temp = 0; // control the begin of each files 2005-12-01
195 static int entryN = 0; // control the event number of each files 2005-21-01
196 static int brN = 0; // control munber of branch of the tree;
197 int lastBrn = brN;
198 // lastBrn = brN;
199 static int branchN = 0;
200 static bool isSet = true;
201
202 static int entryBefore = 0;
203 static bool addEntryEachFile = true;
204
205 if ( m_rootInterface->getENDFILE() || ( temp > 0 && temp < branchN ) )
206 { // if the file has get the end:y the go to next file to create a new tree
207
208 if ( m_rootInterface->getENDFILE() ) { entryN = 0; }
209
210 temp++;
211
212 delete m_branchNumbers;
213 m_branchNumbers = new TArrayS( 0 );
214
215 if ( temp == branchN ) { temp = 0; }
216 }
217
218 if ( m_rootInterface->getENDFILE() ) addEntryEachFile = true;
219 // the 2nd method
220 if ( m_evtsel->getRecId() - entryBefore == 0 )
221 { // first event in this file
222 delete m_branchNumbers;
223 m_branchNumbers = new TArrayS( 0 );
224 }
225
226 // new method to initialize the branchNumber
227 if ( m_currentFileName == "" ) m_currentFileName = m_rootInterface->getCurrentFileName();
228 if ( !( m_currentFileName == m_rootInterface->getCurrentFileName() ) )
229 {
230 m_currentFileName = m_rootInterface->getCurrentFileName();
231 delete m_branchNumbers;
232 m_branchNumbers = new TArrayS( 0 );
233 }
234 //----------------------------------------
235
236 if ( m_branchNumbers->GetSize() <= 0 )
237 {
238 if ( isSet ) brN++;
239 int branchNumber;
240 for ( int nb = 0; nb < raddr->getNrBranches(); nb++ )
241 {
242 sc = m_rootInterface->setBranchAddress( raddr->getTreename().c_str(),
243 raddr->getBranchname( nb ).c_str(),
244 m_adresses[nb], branchNumber );
245 if ( !sc.isSuccess() )
246 {
247 if ( isSet )
248 brN--; // liangyt: if fail to retrieve this branch, this will be not a effective
249 // branch.
250 // entryN++; //liangyt: this is the second method
251 if ( temp > 0 ) temp--; // temp > 0 means recording effective branch number.
252 return sc;
253 }
254 m_branchNumbers->Set( nb + 1 );
255 m_branchNumbers->AddAt( branchNumber, nb );
256 }
257 }
258
259 //// after a file initialized, m_rootInterface get entries
260 if ( addEntryEachFile && ( m_evtsel->getRecId() > entryBefore ) )
261 { // for a new file, add entry for ONLY one time.
262 entryBefore += m_rootInterface->getEntries();
263 addEntryEachFile = false;
264 }
265
266 if ( lastBrn == brN && isSet )
267 {
268 branchN = brN;
269 isSet = false;
270 }
271
272 if ( isSet == false )
273 log << MSG::INFO << " 1st method set event as : " << int( entryN / branchN ) << endmsg;
274 if ( isSet == false )
275 raddr->setEntryNr( int( entryN / branchN ) ); // former method, keep it to be backup.
276 if ( m_evtsel ) log << MSG::INFO << " event id = " << m_evtsel->getRecId() << endmsg;
277
278 int eventID = 0;
279 if ( entryBefore > m_evtsel->getRecId() )
280 eventID = m_evtsel->getRecId() + m_rootInterface->getEntries() - entryBefore;
281 else if ( entryBefore == m_evtsel->getRecId() ) eventID = 0;
282 else log << MSG::ERROR << "eventId error!!!" << endmsg;
283
284 log << MSG::INFO << " 2nd method set event as : " << eventID << endmsg;
285
286 if ( m_evtsel ) raddr->setEntryNr( eventID );
287
288 // add dengzy
289 if ( m_rootInterface->getSelectFromTag() != 0 )
290 {
291 if ( m_evtsel ) raddr->setEntryNr( m_evtsel->getRecId() );
292 } // end of add by dengzy
293
294 // read branch
295
296 if ( m_branchNumbers->GetSize() > 0 )
297 {
298 int nbtot = 0, nb;
299 for ( int ib = 0; ib < m_branchNumbers->GetSize(); ib++ )
300 {
301 // sc=m_rootInterface->getBranchEntry(m_branchNumbers->At(ib),raddr->getEntryNr(),nb);
302 // change to get branch entry with addr(set address for each entry) liangyt
303 sc = m_rootInterface->getBranchEntry( m_branchNumbers->At( ib ), raddr->getEntryNr(),
304 m_adresses[ib], nb );
305 if ( sc.isFailure() )
306 {
307 log << MSG::ERROR << "Could not read branch " << raddr->getBranchname( nb ) << endmsg;
308 return sc;
309 }
310 nbtot += nb;
311 }
312 }
313
314 else
315 { // get ROOT object
316 if ( CLID_top )
317 {
318 IConverter* p = conversionSvc()->converter( CLID_top );
319 RootEventBaseCnv* cnv = dynamic_cast<RootEventBaseCnv*>( p );
320 if ( !cnv )
321 {
322 log << MSG::ERROR << "Could not downcast to RootEventBaseCnv " << endmsg;
323 return StatusCode::FAILURE;
324 }
325 m_objRead = cnv->getReadObject();
326 }
327 }
328
329 // do concrete transformation in derived converter
330 sc = TObjectToDataObject( refpObject );
331 if ( sc.isFailure() )
332 {
333 log << MSG::ERROR << "Could not transform object" << endmsg;
334 return sc;
335 }
336
337 // verify if we have to register
338 IRegistry* ent = addr->registry();
339 if ( ent == 0 )
340 {
341 sc = m_eds->registerObject( raddr->getPath(), refpObject );
342 if ( sc.isFailure() )
343 {
344 log << MSG::ERROR << "Could not register object " << raddr->getPath() << " status "
345 << sc.getCode() << endmsg;
346 }
347 // }
348 }
349
350 entryN++;
351 return StatusCode::SUCCESS;
352}
IMessageSvc * msgSvc()
std::string getBranchname(int i) const
IDataProviderSvc * m_eds
pointer to eventdataservice
TObject * getReadObject() const
get the object to be read
std::vector< void * > m_adresses
each converter knows the corresponding adresses
virtual StatusCode TObjectToDataObject(DataObject *&dat)=0
Do the concrete conversion from ROOT to TDS.
RootInterface * m_rootInterface
pointer to the RootInterface
RootEventBaseCnv(const CLID &clid, ISvcLocator *svc)

◆ createObj() [2/3]

virtual StatusCode RootEventBaseCnv::createObj ( IOpaqueAddress * addr,
DataObject *& dat )
virtual

Convert the persistent object to transient.

Reimplemented in EventCnv, EventCnv, and EventCnv.

◆ createObj() [3/3]

virtual StatusCode RootEventBaseCnv::createObj ( IOpaqueAddress * addr,
DataObject *& dat )
virtual

Convert the persistent object to transient.

Reimplemented in EventCnv, EventCnv, and EventCnv.

◆ createRep() [1/3]

StatusCode RootEventBaseCnv::createRep ( DataObject * pObject,
IOpaqueAddress *& refpAddress )
virtual

Convert the transient object to the requested representation.

Definition at line 49 of file RootEventBaseCnv.cxx.

49 {
50 // Purpose and Method: Convert the transient object to ROOT
51
52 MsgStream log( msgSvc(), "RootEventBaseCnv" );
53
54 StatusCode sc = StatusCode::SUCCESS;
55 // get the corresponding address
56 RootAddress* rootaddr;
57 sc = m_cnvSvc->createAddress( obj, addr );
58
59 rootaddr = dynamic_cast<RootAddress*>( addr );
60
61 if ( sc.isFailure() || !rootaddr )
62 {
63 log << MSG::ERROR << "Could not create address for clid " << obj->clID() << ", objname "
64 << obj->name() << endmsg;
65 return StatusCode::FAILURE;
66 }
67
68 // do the real conversion in the derived converter
69 sc = DataObjectToTObject( obj, rootaddr );
70
71 delete addr;
72 addr = NULL;
73
74 if ( sc.isFailure() )
75 {
76 log << MSG::ERROR << "Could not transform object" << endmsg;
77 return sc;
78 }
79
80 return StatusCode::SUCCESS;
81}
virtual StatusCode DataObjectToTObject(DataObject *dat, RootAddress *addr)=0
Do the concrete conversion from TDS to ROOT.

◆ createRep() [2/3]

virtual StatusCode RootEventBaseCnv::createRep ( DataObject * pObject,
IOpaqueAddress *& refpAddress )
virtual

Convert the transient object to the requested representation.

◆ createRep() [3/3]

virtual StatusCode RootEventBaseCnv::createRep ( DataObject * pObject,
IOpaqueAddress *& refpAddress )
virtual

Convert the transient object to the requested representation.

◆ DataObjectToTObject() [1/3]

virtual StatusCode RootEventBaseCnv::DataObjectToTObject ( DataObject * dat,
RootAddress * addr )
pure virtual

Do the concrete conversion from TDS to ROOT.

Implemented in DigiCnv, DigiCnv, DigiCnv, DstCnv, DstCnv, DstCnv, DstHltInfCnv, DstHltInfCnv, DstHltInfCnv, EmcDigiCnv, EmcDigiCnv, EmcDigiCnv, EmcMcHitCnv, EmcMcHitCnv, EmcMcHitCnv, EmcTrackCnv, EmcTrackCnv, EmcTrackCnv, EventCnv, EventCnv, EventCnv, EvtHeaderCnv, EvtHeaderCnv, EvtHeaderCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtRecCnv, EvtRecCnv, EvtRecCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, ExtTrackCnv, ExtTrackCnv, ExtTrackCnv, HltCnv, HltCnv, HltCnv, HltInfCnv, HltInfCnv, HltInfCnv, HltRawCnv, HltRawCnv, HltRawCnv, LumiDigiCnv, LumiDigiCnv, LumiDigiCnv, McCnv, McCnv, McCnv, McParticleCnv, McParticleCnv, McParticleCnv, MdcDedxCnv, MdcDedxCnv, MdcDedxCnv, MdcDigiCnv, MdcDigiCnv, MdcDigiCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcMcHitCnv, MdcMcHitCnv, MdcMcHitCnv, MdcTrackCnv, MdcTrackCnv, MdcTrackCnv, MucDigiCnv, MucDigiCnv, MucDigiCnv, MucMcHitCnv, MucMcHitCnv, MucMcHitCnv, MucTrackCnv, MucTrackCnv, MucTrackCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecEvTimeCnv, RecEvTimeCnv, RecEvTimeCnv, RecExtTrackCnv, RecExtTrackCnv, RecExtTrackCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucTrackCnv, RecMucTrackCnv, RecMucTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTrackCnv, RecTrackCnv, RecTrackCnv, RecZddChannelCnv, RecZddChannelCnv, RecZddChannelCnv, TofDigiCnv, TofDigiCnv, TofDigiCnv, TofMcHitCnv, TofMcHitCnv, TofMcHitCnv, TofTrackCnv, TofTrackCnv, TofTrackCnv, TrigCnv, TrigCnv, TrigCnv, TrigDataCnv, TrigDataCnv, and TrigDataCnv.

Referenced by createRep().

◆ DataObjectToTObject() [2/3]

virtual StatusCode RootEventBaseCnv::DataObjectToTObject ( DataObject * dat,
RootAddress * addr )
pure virtual

Do the concrete conversion from TDS to ROOT.

Implemented in DigiCnv, DigiCnv, DigiCnv, DstCnv, DstCnv, DstCnv, DstHltInfCnv, DstHltInfCnv, DstHltInfCnv, EmcDigiCnv, EmcDigiCnv, EmcDigiCnv, EmcMcHitCnv, EmcMcHitCnv, EmcMcHitCnv, EmcTrackCnv, EmcTrackCnv, EmcTrackCnv, EventCnv, EventCnv, EventCnv, EvtHeaderCnv, EvtHeaderCnv, EvtHeaderCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtRecCnv, EvtRecCnv, EvtRecCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, ExtTrackCnv, ExtTrackCnv, ExtTrackCnv, HltCnv, HltCnv, HltCnv, HltInfCnv, HltInfCnv, HltInfCnv, HltRawCnv, HltRawCnv, HltRawCnv, LumiDigiCnv, LumiDigiCnv, LumiDigiCnv, McCnv, McCnv, McCnv, McParticleCnv, McParticleCnv, McParticleCnv, MdcDedxCnv, MdcDedxCnv, MdcDedxCnv, MdcDigiCnv, MdcDigiCnv, MdcDigiCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcMcHitCnv, MdcMcHitCnv, MdcMcHitCnv, MdcTrackCnv, MdcTrackCnv, MdcTrackCnv, MucDigiCnv, MucDigiCnv, MucDigiCnv, MucMcHitCnv, MucMcHitCnv, MucMcHitCnv, MucTrackCnv, MucTrackCnv, MucTrackCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecEvTimeCnv, RecEvTimeCnv, RecEvTimeCnv, RecExtTrackCnv, RecExtTrackCnv, RecExtTrackCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucTrackCnv, RecMucTrackCnv, RecMucTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTrackCnv, RecTrackCnv, RecTrackCnv, RecZddChannelCnv, RecZddChannelCnv, RecZddChannelCnv, TofDigiCnv, TofDigiCnv, TofDigiCnv, TofMcHitCnv, TofMcHitCnv, TofMcHitCnv, TofTrackCnv, TofTrackCnv, TofTrackCnv, TrigCnv, TrigCnv, TrigCnv, TrigDataCnv, TrigDataCnv, and TrigDataCnv.

◆ DataObjectToTObject() [3/3]

virtual StatusCode RootEventBaseCnv::DataObjectToTObject ( DataObject * dat,
RootAddress * addr )
pure virtual

Do the concrete conversion from TDS to ROOT.

Implemented in DigiCnv, DigiCnv, DigiCnv, DstCnv, DstCnv, DstCnv, DstHltInfCnv, DstHltInfCnv, DstHltInfCnv, EmcDigiCnv, EmcDigiCnv, EmcDigiCnv, EmcMcHitCnv, EmcMcHitCnv, EmcMcHitCnv, EmcTrackCnv, EmcTrackCnv, EmcTrackCnv, EventCnv, EventCnv, EventCnv, EvtHeaderCnv, EvtHeaderCnv, EvtHeaderCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtRecCnv, EvtRecCnv, EvtRecCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, ExtTrackCnv, ExtTrackCnv, ExtTrackCnv, HltCnv, HltCnv, HltCnv, HltInfCnv, HltInfCnv, HltInfCnv, HltRawCnv, HltRawCnv, HltRawCnv, LumiDigiCnv, LumiDigiCnv, LumiDigiCnv, McCnv, McCnv, McCnv, McParticleCnv, McParticleCnv, McParticleCnv, MdcDedxCnv, MdcDedxCnv, MdcDedxCnv, MdcDigiCnv, MdcDigiCnv, MdcDigiCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcMcHitCnv, MdcMcHitCnv, MdcMcHitCnv, MdcTrackCnv, MdcTrackCnv, MdcTrackCnv, MucDigiCnv, MucDigiCnv, MucDigiCnv, MucMcHitCnv, MucMcHitCnv, MucMcHitCnv, MucTrackCnv, MucTrackCnv, MucTrackCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecEvTimeCnv, RecEvTimeCnv, RecEvTimeCnv, RecExtTrackCnv, RecExtTrackCnv, RecExtTrackCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucTrackCnv, RecMucTrackCnv, RecMucTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTrackCnv, RecTrackCnv, RecTrackCnv, RecZddChannelCnv, RecZddChannelCnv, RecZddChannelCnv, TofDigiCnv, TofDigiCnv, TofDigiCnv, TofMcHitCnv, TofMcHitCnv, TofMcHitCnv, TofTrackCnv, TofTrackCnv, TofTrackCnv, TrigCnv, TrigCnv, TrigCnv, TrigDataCnv, TrigDataCnv, and TrigDataCnv.

◆ declareObject() [1/3]

void RootEventBaseCnv::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.

Definition at line 168 of file RootEventBaseCnv.cxx.

170 {
171 // Purpose and Method: Save the path on the TDS, treename, pathname in the m_leaves vector,
172 // corresponding to the DataObject that the converter handles.
173 m_leaves.push_back( RootCnvSvc::Leaf( path, cl, treename, branchname ) );
174}

Referenced by RecMucRecHitCnv::RecMucRecHitCnv().

◆ declareObject() [2/3]

void RootEventBaseCnv::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.

◆ declareObject() [3/3]

void RootEventBaseCnv::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.

◆ fillObjRefs() [1/3]

StatusCode RootEventBaseCnv::fillObjRefs ( IOpaqueAddress * pAddress,
DataObject * pObject )
virtual

Resolve the references of the converted object.

Definition at line 89 of file RootEventBaseCnv.cxx.

89 {
90 // Purpose and Method: Resolve the references of the converted object.
91 // It is expected that derived classes will override this method.
92 MsgStream log( msgSvc(), "RootEventBaseCnv" );
93 return StatusCode::SUCCESS;
94}

◆ fillObjRefs() [2/3]

virtual StatusCode RootEventBaseCnv::fillObjRefs ( IOpaqueAddress * pAddress,
DataObject * pObject )
virtual

Resolve the references of the converted object.

◆ fillObjRefs() [3/3]

virtual StatusCode RootEventBaseCnv::fillObjRefs ( IOpaqueAddress * pAddress,
DataObject * pObject )
virtual

Resolve the references of the converted object.

◆ fillRepRefs() [1/3]

StatusCode RootEventBaseCnv::fillRepRefs ( IOpaqueAddress * pAddress,
DataObject * pObject )
virtual

Resolve the references of the converted object.

Definition at line 82 of file RootEventBaseCnv.cxx.

82 {
83 // Purpose and Method: Resolve the references of the converted object.
84 // It is expected that derived classes will override this method.
85 MsgStream log( msgSvc(), "RootEventBaseCnv" );
86 return StatusCode::SUCCESS;
87}

◆ fillRepRefs() [2/3]

virtual StatusCode RootEventBaseCnv::fillRepRefs ( IOpaqueAddress * pAddress,
DataObject * pObject )
virtual

Resolve the references of the converted object.

◆ fillRepRefs() [3/3]

virtual StatusCode RootEventBaseCnv::fillRepRefs ( IOpaqueAddress * pAddress,
DataObject * pObject )
virtual

Resolve the references of the converted object.

◆ finalize() [1/3]

StatusCode RootEventBaseCnv::finalize ( )
virtual

Definition at line 159 of file RootEventBaseCnv.cxx.

159 {
160 if ( m_cnvSvc )
161 {
162 m_cnvSvc->release();
163 m_cnvSvc = 0;
164 }
165 return Converter::finalize();
166}

◆ finalize() [2/3]

virtual StatusCode RootEventBaseCnv::finalize ( )
virtual

◆ finalize() [3/3]

virtual StatusCode RootEventBaseCnv::finalize ( )
virtual

◆ getReadObject() [1/3]

TObject * RootEventBaseCnv::getReadObject ( ) const
inline

get the object to be read

Definition at line 116 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

116{ return m_objRead; }

Referenced by createObj().

◆ getReadObject() [2/3]

TObject * RootEventBaseCnv::getReadObject ( ) const
inline

get the object to be read

Definition at line 116 of file InstallArea/x86_64-el9-gcc13-dbg/include/RootCnvSvc/RootEventBaseCnv.h.

116{ return m_objRead; }

◆ getReadObject() [3/3]

TObject * RootEventBaseCnv::getReadObject ( ) const
inline

get the object to be read

Definition at line 116 of file InstallArea/x86_64-el9-gcc13-opt/include/RootCnvSvc/RootEventBaseCnv.h.

116{ return m_objRead; }

◆ initialize() [1/3]

StatusCode RootEventBaseCnv::initialize ( )
virtual

/ the former method to retrieve the event number of one branch is to calculate/////////////////// / division of branch number of one event (brN) and total readed branch num(entryN)/////////////// / there are some disadvantages for this method. NOW, we try to get event id from evt selector////

Reimplemented in DigiCnv, DigiCnv, DigiCnv, DstCnv, DstCnv, DstCnv, EvtHeaderCnv, EvtHeaderCnv, EvtHeaderCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtRecCnv, EvtRecCnv, EvtRecCnv, HltCnv, HltCnv, HltCnv, McCnv, McCnv, McCnv, RecTrackCnv, RecTrackCnv, RecTrackCnv, TrigCnv, TrigCnv, and TrigCnv.

Definition at line 96 of file RootEventBaseCnv.cxx.

96 {
97
98 MsgStream log( msgSvc(), "RootEventBaseCnv" );
99 log << MSG::INFO << "RootEventBaseCnv::initialize" << endmsg;
100
101 StatusCode status = Converter::initialize();
102
103 m_rootInterface = RootInterface::Instance( "RootEventBaseCnv" );
104 if ( !m_rootInterface )
105 log << MSG::ERROR << "Unable to start Root interface within RootCnvSvc" << endmsg;
106
107 StatusCode sc;
108 // MsgStream log( msgSvc(), "RootEventBaseCnv" );
109
110 // Get DataSvc
111 IService* isvc = 0;
112 sc = serviceLocator()->getService( "EventDataSvc", isvc, true );
113 if ( sc.isSuccess() )
114 { sc = isvc->queryInterface( IDataProviderSvc::interfaceID(), (void**)&m_eds ); }
115 if ( sc.isFailure() )
116 { log << MSG::ERROR << "Unable start EventData service within RootEventBaseCnv" << endmsg; }
117
118 ///////////////////// liangyt, try to get event id from evt selector
119 ////////////////////////////////// / the former method to retrieve the event number of one
120 /// branch is to calculate/////////////////// / division of branch number of one event (brN)
121 /// and total readed branch num(entryN)/////////////// / there are some disadvantages for
122 /// this method. NOW, we try to get event id from evt selector////
123
124 sc = serviceLocator()->getService( "RootEvtSelector", isvc, false );
125 if ( !sc.isSuccess() ) sc = serviceLocator()->getService( "EventSelector", isvc, false );
126 if ( sc.isSuccess() )
127 { sc = isvc->queryInterface( IID_IRootEvtSelector, (void**)&m_evtsel ); }
128 if ( sc.isFailure() )
129 {
130 log << MSG::WARNING << "Unable to start event selector service within RootCnvSvc"
131 << endmsg;
132 }
133 ////////////////////////
134
135 // if ( status.isSuccess() )
136 // {
137 // IService* isvc = 0;
138 // status = serviceLocator()->service( "RootCnvSvc", isvc, false );
139 // if ( !status.isSuccess() )
140 // {
141 // log << MSG::DEBUG << "retrieved RootCnvSvc" << endmsg;
142 // status = serviceLocator()->service( "EventCnvSvc", isvc, true );
143 // }
144 // else
145 // {
146 // log << MSG::DEBUG << "failed to retrieved RootCnvSvc" << endmsg;
147 // status = isvc->queryInterface( IID_IRootCnvSvc, (void**)&m_cnvSvc );
148 // }
149 // }
150
151 if ( !status.isSuccess() ) return status;
152
153 status = service( "RootCnvSvc", m_cnvSvc, false );
154 if ( !status.isSuccess() ) status = service( "EventCnvSvc", m_cnvSvc, true );
155
156 return status;
157}
static RootInterface * Instance(const std::string &name)
singleton behaviour

Referenced by DigiCnv::initialize(), DstCnv::initialize(), EvtHeaderCnv::initialize(), EvtNavigatorCnv::initialize(), EvtRecCnv::initialize(), HltCnv::initialize(), McCnv::initialize(), RecTrackCnv::initialize(), and TrigCnv::initialize().

◆ initialize() [2/3]

◆ initialize() [3/3]

◆ repSvcType() [1/3]

virtual long RootEventBaseCnv::repSvcType ( ) const
inlinevirtual

◆ repSvcType() [2/3]

virtual long RootEventBaseCnv::repSvcType ( ) const
inlinevirtual

◆ repSvcType() [3/3]

virtual long RootEventBaseCnv::repSvcType ( ) const
inlinevirtual

◆ storageType() [1/3]

const unsigned char RootEventBaseCnv::storageType ( )
inlinestatic

Storage type and class ID.

Definition at line 85 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

85{ return ROOT_StorageType; }

◆ storageType() [2/3]

const unsigned char RootEventBaseCnv::storageType ( )
inlinestatic

Storage type and class ID.

Definition at line 85 of file InstallArea/x86_64-el9-gcc13-dbg/include/RootCnvSvc/RootEventBaseCnv.h.

85{ return ROOT_StorageType; }

◆ storageType() [3/3]

const unsigned char RootEventBaseCnv::storageType ( )
inlinestatic

Storage type and class ID.

Definition at line 85 of file InstallArea/x86_64-el9-gcc13-opt/include/RootCnvSvc/RootEventBaseCnv.h.

85{ return ROOT_StorageType; }

◆ TObjectToDataObject() [1/3]

virtual StatusCode RootEventBaseCnv::TObjectToDataObject ( DataObject *& dat)
pure virtual

Do the concrete conversion from ROOT to TDS.

Implemented in DigiCnv, DigiCnv, DigiCnv, DstCnv, DstCnv, DstCnv, DstHltInfCnv, DstHltInfCnv, DstHltInfCnv, EmcDigiCnv, EmcDigiCnv, EmcDigiCnv, EmcMcHitCnv, EmcMcHitCnv, EmcMcHitCnv, EmcTrackCnv, EmcTrackCnv, EmcTrackCnv, EventCnv, EventCnv, EventCnv, EvtHeaderCnv, EvtHeaderCnv, EvtHeaderCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtRecCnv, EvtRecCnv, EvtRecCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, ExtTrackCnv, ExtTrackCnv, ExtTrackCnv, HltCnv, HltCnv, HltCnv, HltInfCnv, HltInfCnv, HltInfCnv, HltRawCnv, HltRawCnv, HltRawCnv, LumiDigiCnv, LumiDigiCnv, LumiDigiCnv, McCnv, McCnv, McCnv, McParticleCnv, McParticleCnv, McParticleCnv, MdcDedxCnv, MdcDedxCnv, MdcDedxCnv, MdcDigiCnv, MdcDigiCnv, MdcDigiCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcMcHitCnv, MdcMcHitCnv, MdcMcHitCnv, MdcTrackCnv, MdcTrackCnv, MdcTrackCnv, MucDigiCnv, MucDigiCnv, MucDigiCnv, MucMcHitCnv, MucMcHitCnv, MucMcHitCnv, MucTrackCnv, MucTrackCnv, MucTrackCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecEvTimeCnv, RecEvTimeCnv, RecEvTimeCnv, RecExtTrackCnv, RecExtTrackCnv, RecExtTrackCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucTrackCnv, RecMucTrackCnv, RecMucTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTrackCnv, RecTrackCnv, RecTrackCnv, RecZddChannelCnv, RecZddChannelCnv, RecZddChannelCnv, TofDigiCnv, TofDigiCnv, TofDigiCnv, TofMcHitCnv, TofMcHitCnv, TofMcHitCnv, TofTrackCnv, TofTrackCnv, TofTrackCnv, TrigCnv, TrigCnv, TrigCnv, TrigDataCnv, TrigDataCnv, and TrigDataCnv.

Referenced by createObj().

◆ TObjectToDataObject() [2/3]

virtual StatusCode RootEventBaseCnv::TObjectToDataObject ( DataObject *& dat)
pure virtual

Do the concrete conversion from ROOT to TDS.

Implemented in DigiCnv, DigiCnv, DigiCnv, DstCnv, DstCnv, DstCnv, DstHltInfCnv, DstHltInfCnv, DstHltInfCnv, EmcDigiCnv, EmcDigiCnv, EmcDigiCnv, EmcMcHitCnv, EmcMcHitCnv, EmcMcHitCnv, EmcTrackCnv, EmcTrackCnv, EmcTrackCnv, EventCnv, EventCnv, EventCnv, EvtHeaderCnv, EvtHeaderCnv, EvtHeaderCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtRecCnv, EvtRecCnv, EvtRecCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, ExtTrackCnv, ExtTrackCnv, ExtTrackCnv, HltCnv, HltCnv, HltCnv, HltInfCnv, HltInfCnv, HltInfCnv, HltRawCnv, HltRawCnv, HltRawCnv, LumiDigiCnv, LumiDigiCnv, LumiDigiCnv, McCnv, McCnv, McCnv, McParticleCnv, McParticleCnv, McParticleCnv, MdcDedxCnv, MdcDedxCnv, MdcDedxCnv, MdcDigiCnv, MdcDigiCnv, MdcDigiCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcMcHitCnv, MdcMcHitCnv, MdcMcHitCnv, MdcTrackCnv, MdcTrackCnv, MdcTrackCnv, MucDigiCnv, MucDigiCnv, MucDigiCnv, MucMcHitCnv, MucMcHitCnv, MucMcHitCnv, MucTrackCnv, MucTrackCnv, MucTrackCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecEvTimeCnv, RecEvTimeCnv, RecEvTimeCnv, RecExtTrackCnv, RecExtTrackCnv, RecExtTrackCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucTrackCnv, RecMucTrackCnv, RecMucTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTrackCnv, RecTrackCnv, RecTrackCnv, RecZddChannelCnv, RecZddChannelCnv, RecZddChannelCnv, TofDigiCnv, TofDigiCnv, TofDigiCnv, TofMcHitCnv, TofMcHitCnv, TofMcHitCnv, TofTrackCnv, TofTrackCnv, TofTrackCnv, TrigCnv, TrigCnv, TrigCnv, TrigDataCnv, TrigDataCnv, and TrigDataCnv.

◆ TObjectToDataObject() [3/3]

virtual StatusCode RootEventBaseCnv::TObjectToDataObject ( DataObject *& dat)
pure virtual

Do the concrete conversion from ROOT to TDS.

Implemented in DigiCnv, DigiCnv, DigiCnv, DstCnv, DstCnv, DstCnv, DstHltInfCnv, DstHltInfCnv, DstHltInfCnv, EmcDigiCnv, EmcDigiCnv, EmcDigiCnv, EmcMcHitCnv, EmcMcHitCnv, EmcMcHitCnv, EmcTrackCnv, EmcTrackCnv, EmcTrackCnv, EventCnv, EventCnv, EventCnv, EvtHeaderCnv, EvtHeaderCnv, EvtHeaderCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtNavigatorCnv, EvtRecCnv, EvtRecCnv, EvtRecCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecDTagCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEtaToGGCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecEventCnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPi0Cnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecPrimaryVertexCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecTrackCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, EvtRecVeeVertexCnv, ExtTrackCnv, ExtTrackCnv, ExtTrackCnv, HltCnv, HltCnv, HltCnv, HltInfCnv, HltInfCnv, HltInfCnv, HltRawCnv, HltRawCnv, HltRawCnv, LumiDigiCnv, LumiDigiCnv, LumiDigiCnv, McCnv, McCnv, McCnv, McParticleCnv, McParticleCnv, McParticleCnv, MdcDedxCnv, MdcDedxCnv, MdcDedxCnv, MdcDigiCnv, MdcDigiCnv, MdcDigiCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcKalTrackCnv, MdcMcHitCnv, MdcMcHitCnv, MdcMcHitCnv, MdcTrackCnv, MdcTrackCnv, MdcTrackCnv, MucDigiCnv, MucDigiCnv, MucDigiCnv, MucMcHitCnv, MucMcHitCnv, MucMcHitCnv, MucTrackCnv, MucTrackCnv, MucTrackCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecBTofCalHitCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcClusterCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcHitCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecEmcShowerCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecETofCalHitCnv, RecEvTimeCnv, RecEvTimeCnv, RecEvTimeCnv, RecExtTrackCnv, RecExtTrackCnv, RecExtTrackCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcDedxHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcHitCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalHelixSegCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcKalTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMdcTrackCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucRecHitCnv, RecMucTrackCnv, RecMucTrackCnv, RecMucTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTofTrackCnv, RecTrackCnv, RecTrackCnv, RecTrackCnv, RecZddChannelCnv, RecZddChannelCnv, RecZddChannelCnv, TofDigiCnv, TofDigiCnv, TofDigiCnv, TofMcHitCnv, TofMcHitCnv, TofMcHitCnv, TofTrackCnv, TofTrackCnv, TofTrackCnv, TrigCnv, TrigCnv, TrigCnv, TrigDataCnv, TrigDataCnv, and TrigDataCnv.

Member Data Documentation

◆ CLID_top

CLID RootEventBaseCnv::CLID_top
protected

the CLID of the upper converter if any

Definition at line 63 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by createObj(), and RootEventBaseCnv().

◆ m_adresses

std::vector< void * > RootEventBaseCnv::m_adresses
protected

each converter knows the corresponding adresses

Definition at line 75 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by createObj(), DigiCnv::DigiCnv(), DstHltInfCnv::DstHltInfCnv(), EmcDigiCnv::EmcDigiCnv(), EmcMcHitCnv::EmcMcHitCnv(), EmcTrackCnv::EmcTrackCnv(), EvtHeaderCnv::EvtHeaderCnv(), EvtNavigatorCnv::EvtNavigatorCnv(), EvtRecDTagCnv::EvtRecDTagCnv(), EvtRecEtaToGGCnv::EvtRecEtaToGGCnv(), EvtRecEventCnv::EvtRecEventCnv(), EvtRecPi0Cnv::EvtRecPi0Cnv(), EvtRecPrimaryVertexCnv::EvtRecPrimaryVertexCnv(), EvtRecTrackCnv::EvtRecTrackCnv(), EvtRecVeeVertexCnv::EvtRecVeeVertexCnv(), ExtTrackCnv::ExtTrackCnv(), HltInfCnv::HltInfCnv(), HltRawCnv::HltRawCnv(), LumiDigiCnv::LumiDigiCnv(), McParticleCnv::McParticleCnv(), MdcDedxCnv::MdcDedxCnv(), MdcDigiCnv::MdcDigiCnv(), MdcKalTrackCnv::MdcKalTrackCnv(), MdcMcHitCnv::MdcMcHitCnv(), MdcTrackCnv::MdcTrackCnv(), MucDigiCnv::MucDigiCnv(), MucMcHitCnv::MucMcHitCnv(), MucTrackCnv::MucTrackCnv(), RecBTofCalHitCnv::RecBTofCalHitCnv(), RecEmcClusterCnv::RecEmcClusterCnv(), RecEmcHitCnv::RecEmcHitCnv(), RecEmcShowerCnv::RecEmcShowerCnv(), RecETofCalHitCnv::RecETofCalHitCnv(), RecEvTimeCnv::RecEvTimeCnv(), RecExtTrackCnv::RecExtTrackCnv(), RecMdcDedxCnv::RecMdcDedxCnv(), RecMdcDedxHitCnv::RecMdcDedxHitCnv(), RecMdcHitCnv::RecMdcHitCnv(), RecMdcKalHelixSegCnv::RecMdcKalHelixSegCnv(), RecMdcKalTrackCnv::RecMdcKalTrackCnv(), RecMdcTrackCnv::RecMdcTrackCnv(), RecMucRecHitCnv::RecMucRecHitCnv(), RecMucTrackCnv::RecMucTrackCnv(), RecTofTrackCnv::RecTofTrackCnv(), RecZddChannelCnv::RecZddChannelCnv(), TofDigiCnv::TofDigiCnv(), TofMcHitCnv::TofMcHitCnv(), TofTrackCnv::TofTrackCnv(), and TrigDataCnv::TrigDataCnv().

◆ m_branchNr

int RootEventBaseCnv::m_branchNr
protected

◆ m_branchNrDst

int RootEventBaseCnv::m_branchNrDst
protected

◆ m_branchNrEvtHeader

int RootEventBaseCnv::m_branchNrEvtHeader
protected

◆ m_branchNrEvtNavigator

int RootEventBaseCnv::m_branchNrEvtNavigator
protected

◆ m_branchNrEvtRec

int RootEventBaseCnv::m_branchNrEvtRec
protected

◆ m_branchNrMc

int RootEventBaseCnv::m_branchNrMc
protected

◆ m_branchNrRecon

int RootEventBaseCnv::m_branchNrRecon
protected

◆ m_branchNumbers

TArrayS * RootEventBaseCnv::m_branchNumbers
protected

array with number of branches for reading

Definition at line 66 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by createObj(), and RootEventBaseCnv().

◆ m_cnvSvc

IRootCnvSvc * RootEventBaseCnv::m_cnvSvc
protected

Definition at line 40 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by createRep(), DstHltInfCnv::DataObjectToTObject(), EmcDigiCnv::DataObjectToTObject(), EmcMcHitCnv::DataObjectToTObject(), EmcTrackCnv::DataObjectToTObject(), EvtRecDTagCnv::DataObjectToTObject(), EvtRecEtaToGGCnv::DataObjectToTObject(), EvtRecEventCnv::DataObjectToTObject(), EvtRecPi0Cnv::DataObjectToTObject(), EvtRecPrimaryVertexCnv::DataObjectToTObject(), EvtRecTrackCnv::DataObjectToTObject(), EvtRecVeeVertexCnv::DataObjectToTObject(), ExtTrackCnv::DataObjectToTObject(), HltInfCnv::DataObjectToTObject(), HltRawCnv::DataObjectToTObject(), LumiDigiCnv::DataObjectToTObject(), McParticleCnv::DataObjectToTObject(), MdcDedxCnv::DataObjectToTObject(), MdcDigiCnv::DataObjectToTObject(), MdcKalTrackCnv::DataObjectToTObject(), MdcMcHitCnv::DataObjectToTObject(), MdcTrackCnv::DataObjectToTObject(), MucDigiCnv::DataObjectToTObject(), MucMcHitCnv::DataObjectToTObject(), MucTrackCnv::DataObjectToTObject(), RecEmcClusterCnv::DataObjectToTObject(), RecEmcHitCnv::DataObjectToTObject(), RecEmcShowerCnv::DataObjectToTObject(), RecEvTimeCnv::DataObjectToTObject(), RecExtTrackCnv::DataObjectToTObject(), RecMdcDedxCnv::DataObjectToTObject(), RecMdcDedxHitCnv::DataObjectToTObject(), RecMdcHitCnv::DataObjectToTObject(), RecMdcKalHelixSegCnv::DataObjectToTObject(), RecMdcKalTrackCnv::DataObjectToTObject(), RecMdcTrackCnv::DataObjectToTObject(), RecMucTrackCnv::DataObjectToTObject(), RecTofTrackCnv::DataObjectToTObject(), RecZddChannelCnv::DataObjectToTObject(), TofDigiCnv::DataObjectToTObject(), TofMcHitCnv::DataObjectToTObject(), TofTrackCnv::DataObjectToTObject(), TrigDataCnv::DataObjectToTObject(), finalize(), DigiCnv::initialize(), DstCnv::initialize(), EvtHeaderCnv::initialize(), EvtNavigatorCnv::initialize(), EvtRecCnv::initialize(), HltCnv::initialize(), McCnv::initialize(), RecTrackCnv::initialize(), initialize(), TrigCnv::initialize(), and RootEventBaseCnv().

◆ m_currentFileName

std::string RootEventBaseCnv::m_currentFileName
protected

Definition at line 73 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by createObj().

◆ m_eds

IDataProviderSvc * RootEventBaseCnv::m_eds
protected

pointer to eventdataservice

Definition at line 48 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by createObj(), DstHltInfCnv::DataObjectToTObject(), EmcDigiCnv::DataObjectToTObject(), EmcMcHitCnv::DataObjectToTObject(), EmcTrackCnv::DataObjectToTObject(), EvtRecDTagCnv::DataObjectToTObject(), EvtRecEtaToGGCnv::DataObjectToTObject(), EvtRecEventCnv::DataObjectToTObject(), EvtRecPi0Cnv::DataObjectToTObject(), EvtRecPrimaryVertexCnv::DataObjectToTObject(), EvtRecTrackCnv::DataObjectToTObject(), EvtRecVeeVertexCnv::DataObjectToTObject(), ExtTrackCnv::DataObjectToTObject(), HltInfCnv::DataObjectToTObject(), HltRawCnv::DataObjectToTObject(), LumiDigiCnv::DataObjectToTObject(), McParticleCnv::DataObjectToTObject(), MdcDedxCnv::DataObjectToTObject(), MdcDigiCnv::DataObjectToTObject(), MdcKalTrackCnv::DataObjectToTObject(), MdcMcHitCnv::DataObjectToTObject(), MdcTrackCnv::DataObjectToTObject(), MucDigiCnv::DataObjectToTObject(), MucMcHitCnv::DataObjectToTObject(), MucTrackCnv::DataObjectToTObject(), RecEmcClusterCnv::DataObjectToTObject(), RecEmcHitCnv::DataObjectToTObject(), RecEmcShowerCnv::DataObjectToTObject(), RecEvTimeCnv::DataObjectToTObject(), RecExtTrackCnv::DataObjectToTObject(), RecMdcDedxCnv::DataObjectToTObject(), RecMdcDedxHitCnv::DataObjectToTObject(), RecMdcHitCnv::DataObjectToTObject(), RecMdcKalHelixSegCnv::DataObjectToTObject(), RecMdcKalTrackCnv::DataObjectToTObject(), RecMdcTrackCnv::DataObjectToTObject(), RecMucTrackCnv::DataObjectToTObject(), RecTofTrackCnv::DataObjectToTObject(), RecZddChannelCnv::DataObjectToTObject(), TofDigiCnv::DataObjectToTObject(), TofMcHitCnv::DataObjectToTObject(), TofTrackCnv::DataObjectToTObject(), TrigDataCnv::DataObjectToTObject(), initialize(), and McCnv::TObjectToDataObject().

◆ m_evtsel

RootEvtSelector * RootEventBaseCnv::m_evtsel
protected

◆ m_leaves

std::vector< RootCnvSvc::Leaf > RootEventBaseCnv::m_leaves
protected

◆ m_objRead

TObject * RootEventBaseCnv::m_objRead
protected

the object that was read

Definition at line 60 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by createObj(), getReadObject(), and RootEventBaseCnv().

◆ m_rootBranchname

std::string RootEventBaseCnv::m_rootBranchname
protected

root branchname (may be concatenated of severals)

Definition at line 69 of file Event/RootCnvSvc/include/RootCnvSvc/RootEventBaseCnv.h.

Referenced by DigiCnv::DigiCnv(), DstCnv::DstCnv(), DstHltInfCnv::DstHltInfCnv(), EmcDigiCnv::EmcDigiCnv(), EmcMcHitCnv::EmcMcHitCnv(), EmcTrackCnv::EmcTrackCnv(), EvtHeaderCnv::EvtHeaderCnv(), EvtNavigatorCnv::EvtNavigatorCnv(), EvtRecCnv::EvtRecCnv(), EvtRecDTagCnv::EvtRecDTagCnv(), EvtRecEtaToGGCnv::EvtRecEtaToGGCnv(), EvtRecEventCnv::EvtRecEventCnv(), EvtRecPi0Cnv::EvtRecPi0Cnv(), EvtRecPrimaryVertexCnv::EvtRecPrimaryVertexCnv(), EvtRecTrackCnv::EvtRecTrackCnv(), EvtRecVeeVertexCnv::EvtRecVeeVertexCnv(), ExtTrackCnv::ExtTrackCnv(), HltInfCnv::HltInfCnv(), HltRawCnv::HltRawCnv(), LumiDigiCnv::LumiDigiCnv(), McParticleCnv::McParticleCnv(), MdcDedxCnv::MdcDedxCnv(), MdcDigiCnv::MdcDigiCnv(), MdcKalTrackCnv::MdcKalTrackCnv(), MdcMcHitCnv::MdcMcHitCnv(), MdcTrackCnv::MdcTrackCnv(), MucDigiCnv::MucDigiCnv(), MucMcHitCnv::MucMcHitCnv(), MucTrackCnv::MucTrackCnv(), RecBTofCalHitCnv::RecBTofCalHitCnv(), RecEmcClusterCnv::RecEmcClusterCnv(), RecEmcHitCnv::RecEmcHitCnv(), RecEmcShowerCnv::RecEmcShowerCnv(), RecETofCalHitCnv::RecETofCalHitCnv(), RecEvTimeCnv::RecEvTimeCnv(), RecExtTrackCnv::RecExtTrackCnv(), RecMdcDedxCnv::RecMdcDedxCnv(), RecMdcDedxHitCnv::RecMdcDedxHitCnv(), RecMdcHitCnv::RecMdcHitCnv(), RecMdcKalHelixSegCnv::RecMdcKalHelixSegCnv(), RecMdcKalTrackCnv::RecMdcKalTrackCnv(), RecMdcTrackCnv::RecMdcTrackCnv(), RecMucRecHitCnv::RecMucRecHitCnv(), RecMucTrackCnv::RecMucTrackCnv(), RecTrackCnv::RecTrackCnv(), RecZddChannelCnv::RecZddChannelCnv(), RootEventBaseCnv(), TofDigiCnv::TofDigiCnv(), TofMcHitCnv::TofMcHitCnv(), TofTrackCnv::TofTrackCnv(), and TrigDataCnv::TrigDataCnv().

◆ m_rootInterface

◆ m_rootTreename

std::string RootEventBaseCnv::m_rootTreename
protected

The documentation for this class was generated from the following files: