FEvent/Pixel.h
Go to the documentation of this file.
1 #ifndef _fevt_Pixel_h_
2 #define _fevt_Pixel_h_
3 
4 #include <fevt/PixelSimData.h>
5 #include <fevt/PixelRecData.h>
6 #include <fevt/PixelTriggerData.h>
7 #include <utl/ShadowPtr.h>
8 
9 #include <fevt/FdComponentSelector.h>
10 
11 
12 namespace fevt {
13 
25  class Telescope;
26  class EyeRecData;
27 
28  class Pixel {
29 
30  public:
31  unsigned int GetId() const { return fId; }
32  unsigned int GetTelescopeId() const { return fTelescopeId; }
33  unsigned int GetEyeId() const { return fEyeId; }
34 
36  const PixelSimData& GetSimData() const { return *fSimData; }
37  void MakeSimData();
38  bool HasSimData() const { return bool(fSimData); }
39 
41  const PixelRecData& GetRecData() const { return *fRecData; }
42  void MakeRecData();
43  bool HasRecData() const { return bool(fRecData); }
44 
46  const PixelTriggerData& GetTriggerData() const { return *fTriggerData; }
47  void MakeTriggerData();
48  bool HasTriggerData() const { return bool(fTriggerData); }
49 
50  bool operator==(const Pixel& pixel) const;
51  bool operator!=(const Pixel& pixel) const { return !operator==(pixel); }
52 
55 
57  bool IsNoSaturation() const { return fSatStatus == eNoSaturation; }
58  bool IsLowGainSaturation() const { return fSatStatus == eLowGainSat; }
59  bool IsHighGainSaturation() const { return fSatStatus == eHighGainSat; }
60  bool IsSaturationRecovered() const { return fSatStatus == eRecovered; }
61 
66 
67  private:
68  Pixel(const unsigned int eye, const unsigned int telescope, const unsigned int id,
70  fId(id),
71  fTelescopeId(telescope),
72  fEyeId(eye),
73  fStatus(status),
75  { }
76 
77  ~Pixel() { }
78 
79  void CorrectIds(const unsigned int eyeId, const unsigned int telescopeId)
80  { fTelescopeId = telescopeId; fEyeId = eyeId; }
81 
82  unsigned int fId;
83  unsigned int fTelescopeId;
84  unsigned int fEyeId;
85 
89 
95  };
96 
99 
100  friend class fevt::Telescope;
101  friend class fevt::EyeRecData;
102 
103  };
104 
105 }
106 
107 
108 #endif
pointer with built-in initialization, deletion, deep copying
Definition: ShadowPtr.h:163
ComponentSelector::Status GetStatus() const
Definition: FEvent/Pixel.h:54
void SetNoSaturation()
Definition: FEvent/Pixel.h:62
unsigned int fTelescopeId
Definition: FEvent/Pixel.h:83
Fluorescence Detector Pixel Trigger Data.
bool HasRecData() const
Definition: FEvent/Pixel.h:43
PixelTriggerData & GetTriggerData()
Definition: FEvent/Pixel.h:45
PixelSimData & GetSimData()
Definition: FEvent/Pixel.h:35
void MakeSimData()
Definition: FEvent/Pixel.cc:10
void SetLowGainSaturation()
Definition: FEvent/Pixel.h:63
Pixel(const unsigned int eye, const unsigned int telescope, const unsigned int id, const ComponentSelector::Status status=ComponentSelector::eHasData)
Definition: FEvent/Pixel.h:68
ComponentSelector::Status fStatus
Definition: FEvent/Pixel.h:97
unsigned int GetId() const
Definition: FEvent/Pixel.h:31
Fluorescence Detector Pixel event.
Definition: FEvent/Pixel.h:28
bool IsLowGainSaturation() const
Definition: FEvent/Pixel.h:58
unsigned int fId
Definition: FEvent/Pixel.h:82
unsigned int fEyeId
Definition: FEvent/Pixel.h:84
utl::ShadowPtr< PixelTriggerData > fTriggerData
Definition: FEvent/Pixel.h:88
bool HasSimData() const
Definition: FEvent/Pixel.h:38
Status
Possible component status.
Eye-specific shower reconstruction data.
Definition: EyeRecData.h:65
bool IsNoSaturation() const
Check if the pixel is saturated.
Definition: FEvent/Pixel.h:57
unsigned int GetEyeId() const
Definition: FEvent/Pixel.h:33
bool operator!=(const Pixel &pixel) const
Definition: FEvent/Pixel.h:51
unsigned int GetTelescopeId() const
Definition: FEvent/Pixel.h:32
void SetStatus(ComponentSelector::Status status)
Definition: FEvent/Pixel.h:53
bool IsSaturationRecovered() const
Definition: FEvent/Pixel.h:60
const PixelRecData & GetRecData() const
Definition: FEvent/Pixel.h:41
void SetHighGainSaturation()
Definition: FEvent/Pixel.h:64
SaturationStatus fSatStatus
Definition: FEvent/Pixel.h:98
utl::ShadowPtr< PixelRecData > fRecData
Definition: FEvent/Pixel.h:87
void SetSaturationRecovered()
Definition: FEvent/Pixel.h:65
void MakeTriggerData()
Definition: FEvent/Pixel.cc:31
Fluorescence Detector Telescope Event.
void CorrectIds(const unsigned int eyeId, const unsigned int telescopeId)
Definition: FEvent/Pixel.h:79
bool IsHighGainSaturation() const
Definition: FEvent/Pixel.h:59
const PixelTriggerData & GetTriggerData() const
Definition: FEvent/Pixel.h:46
void MakeRecData()
Definition: FEvent/Pixel.cc:21
const PixelSimData & GetSimData() const
Definition: FEvent/Pixel.h:36
Fluorescence Detector Pixel Reconstructed Data.
Definition: PixelRecData.h:27
utl::ShadowPtr< PixelSimData > fSimData
Definition: FEvent/Pixel.h:86
PixelRecData & GetRecData()
Definition: FEvent/Pixel.h:40
bool operator==(const Pixel &pixel) const
Definition: FEvent/Pixel.cc:42
Fluorescence Detector Pixel Simulated Data.
Definition: PixelSimData.h:28
bool HasTriggerData() const
Definition: FEvent/Pixel.h:48

, generated on Tue Sep 26 2023.