00001 #ifndef __PXXIHitDataRecord__H__ 00002 #define __PXXIHitDataRecord__H__ 00003 00016 00017 #include "payloads-unpacker/base/PXXTypes.h" 00018 #include "payloads-unpacker/base/PXXPointerCasts.h" 00019 #include "payloads-unpacker/payloads/PXXVRecord.h" 00020 00021 class PXXIHitDataRecord 00022 { 00023 public: 00024 00028 virtual ~PXXIHitDataRecord() {} 00029 //------------------------------------------------------------------------------ 00030 00035 virtual Int32b_t GetVersion() const = 0; 00036 //------------------------------------------------------------------------------ 00037 00044 virtual const PXXVRecordPtr GetRecordPtr() = 0; 00045 //------------------------------------------------------------------------------ 00046 00047 protected: 00048 00053 PXXIHitDataRecord() {} 00054 //------------------------------------------------------------------------------ 00055 00056 private: 00057 00058 ClassDef(PXXIHitDataRecord, 0) // interface to HitPayload 00059 00060 }; 00061 00062 #ifdef __USEROOT__ // compile with ROOT 00063 typedef PXXIHitDataRecord* PXXIHitDataRecordPtr; 00064 #else // compile with IceTray 00065 typedef shared_ptr<PXXIHitDataRecord> PXXIHitDataRecordPtr; 00066 #endif 00067 00068 #endif // __PXXIHitDataRecord__H__