BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/RootCnvSvc/include/RootCnvSvc/EvtNavigatorCnv.h
Go to the documentation of this file.
1#ifndef EvtNavigatorCnv_H
2#define EvtNavigatorCnv_H 1
3
4#include "RootCnvSvc/RootEventBaseCnv.h"
5#include <iostream>
6#include <map>
7
8#include "RootCnvSvc/commonData.h"
9#include "RootEventData/TEvtNavigator.h"
10
11// extern const CLID& CLID_Event;
12extern const CLID CLID_EventNavigator;
13
14// Abstract factory to create the converter
15template <class TYPE> class CnvFactory;
16
17/** @class EvtNavigatorCnv
18 * @brief Concrete converter for the EvtNavigator branch
19 */
20
22
23 friend class CnvFactory<EvtNavigatorCnv>;
24
25public:
26 static const CLID& classID() { return CLID_EventNavigator; }
27
28 virtual ~EvtNavigatorCnv(){};
29
30 virtual StatusCode initialize();
31
32 /// returns object to be written (maintained here for all DIGI-converters)
33 static TEvtNavigator* getWriteObject() { return m_evtNavigatorW; }
34
35 EvtNavigatorCnv( ISvcLocator* svc );
36
37 /// transformation from TDS object to ROOT
38 virtual StatusCode DataObjectToTObject( DataObject* obj, RootAddress* addr );
39
40 /// do the transformation from ROOT to TDS object
41 virtual StatusCode TObjectToDataObject( DataObject*& refpObject );
42
43private:
44 /// Root objects` to be read/written
45 static TEvtNavigator* m_evtNavigatorR;
46 static TEvtNavigator* m_evtNavigatorW;
47
48 std::multimap<int, int> m_mcMdcMcHits;
49 std::multimap<int, int> m_mcMdcTracks;
50 std::multimap<int, int> m_mcEmcMcHits;
51 std::multimap<int, int> m_mcEmcRecShowers;
52
53 commonData m_common;
54};
55
56#endif // EvtNavigatorCnv_H
const CLID CLID_EventNavigator
EvtNavigatorCnv(ISvcLocator *svc)
static TEvtNavigator * getWriteObject()
returns object to be written (maintained here for all DIGI-converters)
virtual StatusCode TObjectToDataObject(DataObject *&refpObject)
do the transformation from ROOT to TDS object
virtual StatusCode DataObjectToTObject(DataObject *obj, RootAddress *addr)
transformation from TDS object to ROOT
virtual StatusCode initialize()
Definition of a Root address, derived from IOpaqueAddress.
RootEventBaseCnv(const CLID &clid, ISvcLocator *svc)