00001 #ifndef __PXXIHitPayload__H__ 00002 #define __PXXIHitPayload__H__ 00003 00013 00014 #include "payloads-unpacker/base/PXXTypes.h" 00015 #include "payloads-unpacker/base/PXXPointerCasts.h" 00016 #include "payloads-unpacker/payloads/PXXIUTCTime.h" 00017 #include "payloads-unpacker/payloads/PXXIDOMID.h" 00018 00019 class PXXIHitPayload 00020 { 00021 public: 00022 00026 virtual ~PXXIHitPayload(); 00027 //------------------------------------------------------------------------------ 00028 00032 virtual const PXXIUTCTime& GetHitTimeUTC() = 0; 00033 //------------------------------------------------------------------------------ 00034 00038 virtual Double64b_t GetIntegratedCharge() const = 0; 00039 //------------------------------------------------------------------------------ 00040 00044 virtual const PXXIDOMID& GetDOMID()= 0; 00045 //------------------------------------------------------------------------------ 00046 00047 protected: 00048 00053 PXXIHitPayload(); 00054 //------------------------------------------------------------------------------ 00055 00056 private: 00057 00058 ClassDef(PXXIHitPayload, 0) // interface to HitPayload 00059 00060 }; 00061 00062 #ifdef __USEROOT__ // compile with ROOT 00063 typedef PXXIHitPayload* PXXIHitPayloadPtr; 00064 #else // compile with IceTray 00065 typedef shared_ptr<PXXIHitPayload> PXXIHitPayloadPtr; 00066 #endif 00067 00068 #endif // __PXXIHitPayload__H__