00001 00009 #ifndef _QRAWEVENT_R_01_HH_ 00010 #define _QRAWEVENT_R_01_HH_ 00011 00012 #include "QBaseRawEventR.hh" 00013 #include "QTimeR.hh" 00014 #include "QPulseR.hh" 00015 #include "QMainPulseR.hh" 00016 #include "QiMuonVetoR.hh" 00017 00018 #include <vector> 00019 #include <string> 00020 00021 #include <Rtypes.h> 00022 00023 namespace Cuore {class QEvent;} 00024 00025 class QRawEventR_01 : public QBaseRawEventR { 00026 00027 public: 00029 QRawEventR_01() {}; 00031 ~QRawEventR_01 () {}; 00032 00034 Int_t GetRun() const { return fRun; } 00035 00037 Int_t GetEventNumber() const { return fEventNumber; } 00038 00040 const QTimeR& GetTime() const {return fTime;} 00041 00043 double GetNsTime() const {return fTime.GetFromStartRunNs();} 00044 00046 UInt_t GetStartTimeUnix() const {return fTime.GetStartRunUnix();} 00047 00049 const QMainPulseR& GetPulse() const {return fPulse; } 00050 QMainPulseR& GetPulse() {return fPulse; } 00051 00053 Int_t GetChannelId() const { return fPulse.GetChannelId(); } 00054 00056 const QVectorIR& GetSamples() const {return fPulse.GetSamples(); } 00057 00059 const std::vector<QPulseR>& GetSidePulses() const {return fSidePulses; } 00060 00062 const QPulseR& GetSidePulse(Int_t pulseNumber) const {return fSidePulses[pulseNumber]; } 00063 00065 UInt_t GetNSidePulses() const { return fSidePulses.size();} 00066 00068 Bool_t GetIsBolometer() const {return fIsBolometer;} 00069 00071 const QiMuonVetoR& GetQiMuonVeto() const {return fQiMuonVeto;} 00072 00074 Bool_t GetIsMuonVeto() const {return fIsMuonVeto;} 00075 00076 UInt_t GetTimedSample() const {return fPulse.GetTimedSample();} 00077 UInt_t GetTriggerPosition() const {return fPulse.GetMasterSample().GetSampleIndex();} 00079 bool GetIsHeater() const {return fPulse.GetMasterSample().GetIsHeater();} 00081 bool GetIsSignal() const {return fPulse.GetMasterSample().GetIsSignal();} 00083 bool GetIsNoise() const {return fPulse.GetMasterSample().GetIsNoise();} 00085 Bool_t GetIsApollo() const {return fIsApollo;} 00086 00088 void SetIsApollo(Bool_t isApollo) { fIsApollo = isApollo; } 00089 00090 private: 00091 void Assign(const Cuore::QEvent& ev); 00092 00093 void Fill(Cuore::QEvent& ev) const ; 00094 00095 void SetSpecificAliases(const std::string& myPath); 00096 00098 UInt_t fRun; 00100 UInt_t fEventNumber; 00102 QTimeR fTime; 00104 QiMuonVetoR fQiMuonVeto; 00106 Bool_t fIsBolometer; 00108 Bool_t fIsMuonVeto;; 00110 std::vector<QPulseR> fSidePulses; 00112 QMainPulseR fPulse; 00114 Bool_t fIsApollo; 00115 ClassDef(QRawEventR_01,2); 00116 00117 }; 00118 00119 00120 #endif