00001 #ifndef __PXXEngineeringFormatHitDataPayload__H__ 00002 #define __PXXEngineeringFormatHitDataPayload__H__ 00003 00012 00013 #include "payloads-unpacker/payloads/PXXEngineeringFormatTriggerPayload.h" 00014 #include "payloads-unpacker/payloads/PXXIHitPayload.h" 00015 #include "payloads-unpacker/payloads/PXXIHitDataPayload.h" 00016 #include "payloads-unpacker/payloads/PXXIDOMID.h" 00017 #include "payloads-unpacker/payloads/PXXIHitDataRecord.h" 00018 00019 00020 class PXXEngineeringFormatHitDataPayload : public PXXEngineeringFormatTriggerPayload, 00021 public PXXIHitPayload 00022 ,public PXXIHitDataPayload 00023 { 00024 public: 00025 00026 SET_LOGGER("PXXXEngineeringFormatHitDataPayload"); 00027 00031 PXXEngineeringFormatHitDataPayload(const PXXPayloadEnvelope &envelope); 00032 //------------------------------------------------------------------------------ 00033 00036 PXXEngineeringFormatHitDataPayload(); 00037 //------------------------------------------------------------------------------ 00041 virtual ~PXXEngineeringFormatHitDataPayload(); 00042 //------------------------------------------------------------------------------ 00043 00048 virtual const PXXIUTCTime &GetHitTimeUTC() { return GetPayloadTimeUTC(); } 00049 //------------------------------------------------------------------------------ 00050 00054 virtual Double64b_t GetIntegratedCharge() const { return -1.0; } 00055 //------------------------------------------------------------------------------ 00056 00060 virtual const PXXIDOMID& GetDOMID(); 00061 //------------------------------------------------------------------------------ 00062 00066 virtual const PXXIHitDataRecord& GetHitDataRecord(); 00067 //------------------------------------------------------------------------------ 00068 00069 private: 00070 00076 private: 00077 00078 00079 ClassDef(PXXEngineeringFormatHitDataPayload, 0) // interface to HitPayload 00080 00081 }; 00082 00083 #ifdef __USEROOT__ // compile with ROOT 00084 typedef PXXEngineeringFormatHitDataPayload* PXXEngineeringFormatHitDataPayloadPtr; 00085 #else // compile with IceTray 00086 typedef shared_ptr<PXXEngineeringFormatHitDataPayload> PXXEngineeringFormatHitDataPayloadPtr; 00087 #endif 00088 00089 #endif // PXXEngineeringFormatHitDataPayload_H