00001 #ifndef McParticleCnv_H 00002 #define McParticleCnv_H 1 00003 00004 #include "RootCnvSvc/RootEventBaseCnv.h" 00005 #include "RootCnvSvc/commonData.h" 00006 00007 class RootAddress; 00008 00009 extern const CLID& CLID_McParticleCol; 00010 00011 // Abstract factory to create the converter 00012 template <class TYPE> class CnvFactory; 00013 00019 class McParticleCnv : public RootEventBaseCnv { 00020 00021 friend class CnvFactory<McParticleCnv>; 00022 00023 public: 00024 static const CLID& classID() 00025 { 00026 return CLID_McParticleCol; 00027 } 00028 00029 virtual ~McParticleCnv() { }; 00030 00031 protected: 00032 McParticleCnv(ISvcLocator* svc); 00033 00035 virtual StatusCode DataObjectToTObject(DataObject* obj, RootAddress* addr); 00036 00038 virtual StatusCode TObjectToDataObject(DataObject*& obj); 00039 00040 private: 00042 commonData m_common; 00043 00045 TObjArray *m_mcParticleCol; 00046 }; 00047 00048 00049 00050 #endif // MdcMcCnv_H 00051 00052 00053 00054 00055 00056 00057 00058 00059