00001 #ifndef RecTrackCnv_H 00002 #define RecTrackCnv_H 1 00003 00004 #include "RootCnvSvc/RootEventBaseCnv.h" 00005 00006 #include "RootEventData/TRecTrackEvent.h" 00007 00008 #include "RootCnvSvc/commonData.h" 00009 00010 extern const CLID& CLID_ReconEvent; //CLID_ReconEvent 3000 liangyt -->6000//? 00011 00012 // Abstract factory to create the converter 00013 template <class TYPE> class CnvFactory; 00014 00021 class RecTrackCnv : public RootEventBaseCnv { 00022 00023 friend class CnvFactory<RecTrackCnv>; 00024 00025 public: 00026 static const CLID& classID() 00027 { 00028 return CLID_ReconEvent; 00029 } 00030 00031 virtual ~RecTrackCnv() { }; 00032 00033 virtual StatusCode initialize(); 00034 00036 static TRecTrackEvent* getWriteObject() { return m_objWrite;} 00037 00038 protected: 00039 RecTrackCnv(ISvcLocator* svc); 00040 00042 virtual StatusCode DataObjectToTObject(DataObject* obj, RootAddress* addr); 00043 00045 virtual StatusCode TObjectToDataObject(DataObject*& refpObject); 00046 00047 private: 00049 static TRecTrackEvent* m_objWrite; 00050 //TDstEvent* m_objWrite; //use TDstEvent temp 00051 00053 Int_t m_runId; 00055 Int_t m_eventId; 00056 00057 00058 commonData m_common; 00059 }; 00060 00061 #endif // RecTrackCnv_H