QBaseRawEventR.hh
Go to the documentation of this file.00001
00009 #ifndef _QBASERAWEVENT_R_HH_
00010 #define _QBASERAWEVENT_R_HH_
00011
00012 #include "QEventDataR.hh"
00013 #include <Rtypes.h>
00014
00015 namespace Cuore {class QEvent;}
00016 class QVectorIR;
00017 class QPulseR;
00018
00019 class QBaseRawEventR : public QEventDataR
00020 {
00021 public:
00023 virtual ~QBaseRawEventR() {};
00024
00026 virtual const QVectorIR& GetSamples() const = 0;
00028 virtual Int_t GetRun() const = 0;
00030 virtual Int_t GetEventNumber() const = 0;
00032 virtual Int_t GetChannelId() const = 0;
00034 virtual double GetNsTime() const = 0;
00036 virtual UInt_t GetStartTimeUnix() const = 0;
00038 virtual Bool_t GetIsBolometer() const = 0;
00040 virtual Bool_t GetIsMuonVeto() const = 0;
00042 virtual UInt_t GetTimedSample() const = 0;
00044 virtual UInt_t GetTriggerPosition() const = 0;
00046 virtual bool GetIsHeater() const = 0;
00048 virtual bool GetIsSignal() const = 0;
00050 virtual bool GetIsNoise() const =0;
00052 virtual const QPulseR& GetSidePulse(Int_t pulseNumber) const = 0;
00054 virtual UInt_t GetNSidePulses() const = 0;
00055
00056 void SetAliases(const std::string& myPath);
00057
00058 virtual Bool_t GetIsApollo() const = 0;
00059
00060 virtual void SetIsApollo(Bool_t isApollo) = 0;
00061 protected:
00062 virtual void Assign(const Cuore::QEvent& qrawevent) = 0;
00063 virtual void Fill(Cuore::QEvent& qrawevent) const = 0;
00064 virtual void SetSpecificAliases(const std::string& myPath);
00066 QBaseRawEventR() {};
00067 private:
00068
00069 friend class QAEventR;
00070 ClassDef(QBaseRawEventR,1);
00071
00072 };
00073
00074 #endif