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 class MThermalResponse;
00036 class MFixTTTChannels;
00037 class MOTAmplitude;
00038 class MOTShiftBack;
00039 
00040 Q_BEGIN_NAMESPACE
00041 
00042 class QRawEventBase : public QEventData {
00043 
00044     public:
00046         virtual ~QRawEventBase ();
00047 
00049         int GetRun() const { return fRun;   }
00050 
00052         int GetEventNumber() const { return fEventNumber; }
00053 
00055         const QTime& GetTime() const {return fTime;}
00056 
00058         const QMainPulse& GetPulse() const {return fPulse; } 
00059 
00061         const std::vector<QPulse>& GetSidePulses() const {return fSidePulses; }
00062 
00064         const QiMuonVeto& GetQiMuonVeto() const {return fQiMuonVeto;}
00065 
00067         const bool& GetIsBolometer() const { return fIsBolometer; }
00068 
00070         const bool& GetIsMuonVeto() const { return fIsMuonVeto; }
00071 
00072     protected:
00073 
00075         QRawEventBase();
00076 
00078         void Clear();
00079 
00081         void SetRun(unsigned int run) { fRun = run; SetIsSet(true); }        
00083         void SetEventNumber(unsigned int eventNumber) { fEventNumber = eventNumber; SetIsSet(true); } 
00085         void SetIsBolometer(const bool& isBolometer) { fIsBolometer = isBolometer; SetIsSet(true); }
00087         void SetIsMuonVeto(const bool& isMuonVeto) { fIsMuonVeto = isMuonVeto; SetIsSet(true); }
00089         QTime& GetTime() { return fTime; }        
00091         QMainPulse& GetPulse() {return fPulse;}
00093         std::vector<QPulse>& GetSidePulses() {return fSidePulses; }
00095         QiMuonVeto& GetQiMuonVeto() {return fQiMuonVeto;}
00097         void SetIsApollo(const bool& isApollo) { fIsApollo = isApollo; SetIsSet(true); }
00099         bool GetIsApollo() const {return fIsApollo;}
00100 
00101     private:
00102 
00104         unsigned int fRun;
00106         unsigned int fEventNumber;
00108         QTime fTime;
00110         QMainPulse fPulse;;
00112         std::vector<QPulse> fSidePulses;
00114         QiMuonVeto fQiMuonVeto;
00116         bool fIsBolometer;
00118         bool fIsMuonVeto;
00120         bool fIsApollo;
00121 
00122         friend class ::QRawEventR_01;
00123 
00124 };
00125 
00133 class QRawEvent : public QRawEventBase {
00134 
00135     public:
00137         QRawEvent();
00138 
00140         ~QRawEvent();
00141 
00142     private:
00143         friend class ::MQinoDataReader;
00144         friend class ::MQinoMiCompleteDataReaderFast;
00145         friend class ::MQinoNtpReader;
00146         friend class ::MQinoMiNtpReader;
00147         friend class ::MSetHeaterFlag;
00148         friend class ::MPulseGenerator;
00149         friend class ::MLCEventBuilder;
00150         friend class ::MDefaults;
00151         friend class ::MOpenApolloFlag;
00152         friend class ::QEventFiller;
00153         friend class ::MCalSimulationReader;
00154         friend class ::MQuickFileReader;
00155         friend class ::MClearEvent;
00156         friend class ::MThermalResponse;
00157         friend class ::MFixTTTChannels;
00158         friend class ::MOTAmplitude;
00159         friend class ::MOTShiftBack;
00160 };
00161 
00162 Q_END_NAMESPACE
00163 
00164 #endif

Generated on Tue Nov 16 10:49:56 2010 for CUORE Software by  doxygen 1.5.6