QRawEvent.hh

Go to the documentation of this file.
00001 
00009 #ifndef _QRAWEVENT_HH_
00010 #define _QRAWEVENT_HH_
00011 
00012 #include "QEventData.hh"
00013 #include "QTime.hh"
00014 #include "QPulse.hh"
00015 #include "QMainPulse.hh"
00016 #include "QSampleInfo.hh"
00017 #include "QiMuonVeto.hh"
00018 
00019 #include <vector>
00020 
00021 class QRawEventR_01;
00022 class MQinoDataReader;
00023 class MQinoMiCompleteDataReaderFast;
00024 class MQinoNtpReader;
00025 class MQinoMiNtpReader;
00026 class MSetHeaterFlag;
00027 class MPulseGenerator;
00028 class MLCEventBuilder;
00029 class MDefaults;
00030 class MOpenApolloFlag;
00031 class QEventFiller;
00032 class MCalSimulationReader;
00033 class MQuickFileReader;
00034 class MClearEvent;
00035 
00036 Q_BEGIN_NAMESPACE
00037 
00038 class QRawEventBase : public QEventData {
00039 
00040     public:
00042         virtual ~QRawEventBase ();
00043 
00045         int GetRun() const { return fRun;   }
00046 
00048         int GetEventNumber() const { return fEventNumber; }
00049 
00051         const QTime& GetTime() const {return fTime;}
00052 
00054         const QMainPulse& GetPulse() const {return fPulse; } 
00055 
00057         const std::vector<QPulse>& GetSidePulses() const {return fSidePulses; }
00058 
00060         const QiMuonVeto& GetQiMuonVeto() const {return fQiMuonVeto;}
00061 
00063         const bool& GetIsBolometer() const { return fIsBolometer; }
00064 
00066         const bool& GetIsMuonVeto() const { return fIsMuonVeto; }
00067 
00068     protected:
00069 
00071         QRawEventBase();
00072 
00074         void Clear();
00075 
00077         void SetRun(unsigned int run) { fRun = run; SetIsSet(true); }        
00079         void SetEventNumber(unsigned int eventNumber) { fEventNumber = eventNumber; SetIsSet(true); } 
00081         void SetIsBolometer(const bool& isBolometer) { fIsBolometer = isBolometer; SetIsSet(true); }
00083         void SetIsMuonVeto(const bool& isMuonVeto) { fIsMuonVeto = isMuonVeto; SetIsSet(true); }
00085         QTime& GetTime() { return fTime; }        
00087         QMainPulse& GetPulse() {return fPulse;}
00089         std::vector<QPulse>& GetSidePulses() {return fSidePulses; }
00091         QiMuonVeto& GetQiMuonVeto() {return fQiMuonVeto;}
00093         void SetIsApollo(const bool& isApollo) { fIsApollo = isApollo; SetIsSet(true); }
00095         bool GetIsApollo() const {return fIsApollo;}
00096 
00097     private:
00098 
00100         unsigned int fRun;
00102         unsigned int fEventNumber;
00104         QTime fTime;
00106         QMainPulse fPulse;;
00108         std::vector<QPulse> fSidePulses;
00110         QiMuonVeto fQiMuonVeto;
00112         bool fIsBolometer;
00114         bool fIsMuonVeto;
00116         bool fIsApollo;
00117 
00118         friend class ::QRawEventR_01;
00119 
00120 };
00121 
00129 class QRawEvent : public QRawEventBase {
00130 
00131     public:
00133         QRawEvent();
00134 
00136         ~QRawEvent();
00137 
00138     private:
00139         friend class ::MQinoDataReader;
00140         friend class ::MQinoMiCompleteDataReaderFast;
00141         friend class ::MQinoNtpReader;
00142         friend class ::MQinoMiNtpReader;
00143         friend class ::MSetHeaterFlag;
00144         friend class ::MPulseGenerator;
00145         friend class ::MLCEventBuilder;
00146         friend class ::MDefaults;
00147         friend class ::MOpenApolloFlag;
00148         friend class ::QEventFiller;
00149         friend class ::MCalSimulationReader;
00150         friend class ::MQuickFileReader;
00151         friend class ::MClearEvent;
00152 };
00153 
00154 Q_END_NAMESPACE
00155 
00156 #endif

Generated on Fri Mar 6 13:40:39 2009 for CUORE Software by  doxygen 1.5.1