00001 #ifndef DIGIPE_H 00002 #define DIGIPE_H 00003 00005 // DigiPE 00006 // 00007 // Class to hold a single photoelectron at a particlar place 00008 // on a PMT. 00009 // 00010 // First version: Nathaniel Tagg n.tagg1@physics.ox.ac.uk 00012 00013 #include <TObject.h> 00014 00015 #include "Plex/PlexPixelSpotId.h" 00016 00017 class DigiScintHit; 00018 00019 class DigiPE : public TObject 00020 { 00021 public: 00022 DigiPE(); 00023 DigiPE( const DigiPE& rhs ); 00024 DigiPE(Double_t time, PlexPixelSpotId& spot, const DigiScintHit* hitptr); 00025 DigiPE(Double_t time, PlexPixelSpotId& spot, Int_t source); 00026 00027 ~DigiPE(); 00028 00029 // Setters 00030 void SetTime(double time) { fTime = time; }; 00031 void SetPixelSpotId( PlexPixelSpotId& spot) { fPixelSpotId = spot; }; 00032 void SetHitPointer(const DigiScintHit* hitptr ) { fHitPointer = hitptr; }; 00033 00034 00035 // Getters 00036 Double_t GetTime() const { return fTime; }; 00037 PlexPixelSpotId GetPixelSpotId() const { return fPixelSpotId; }; 00038 const DigiScintHit* GetHitPointer() const { return fHitPointer; }; 00039 Double_t GetNpe() const { return 1.0; }; // For future expansion? 00040 Int_t GetSource() const { return fSource; }; 00041 Bool_t IsDarkNoise() const; 00042 Bool_t IsFibreLight() const; 00043 Bool_t IsAfterpulse() const; 00044 00045 private: 00046 // Data members. 00047 Float_t fTime; 00048 PlexPixelSpotId fPixelSpotId; 00049 const DigiScintHit* fHitPointer; 00050 Int_t fSource; 00051 00052 ClassDef(DigiPE,3) 00053 }; 00054 00055 00056 #endif
1.3.9.1