00001 00012 #ifndef GENHEADERCNV_H 00013 #define GENHEADERCNV_H 00014 00015 #include "RootIOSvc/RootIOTypedCnv.h" 00016 #include "PerGenEvent/PerGenHeader.h" 00017 #include "Event/GenHeader.h" 00018 00019 class GenHeaderCnv : public RootIOTypedCnv<PerGenHeader, 00020 DayaBay::GenHeader> 00021 { 00022 public: 00023 static const CLID& classID() { 00024 return DayaBay::CLID_GenHeader; 00025 } 00026 00027 GenHeaderCnv(ISvcLocator* svc); 00028 virtual ~GenHeaderCnv(); 00029 00030 00033 StatusCode PerToTran(const PerGenHeader& tobj, 00034 DayaBay::GenHeader& dobj); 00035 00038 StatusCode TranToPer(const DayaBay::GenHeader& dobj, 00039 PerGenHeader& tobj); 00040 00041 StatusCode fillRepRefs(IOpaqueAddress* addr, DataObject* dobj); 00042 StatusCode fillObjRefs(IOpaqueAddress* addr, DataObject* dobj); 00043 00044 private: 00045 // Threshold for maximum number of vertices to save. 00046 // GenEvents with more vertices won't be written out. 00047 // This is temporary for MDC10a 00048 int m_maxVertices; 00049 }; 00050 00051 #endif // GENHEADERCNV_H