/home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/ds/include/RAT/DS/MCPhoton.hh Source File

Ratpac-two: /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/ds/include/RAT/DS/MCPhoton.hh Source File
Ratpac-two
MCPhoton.hh
1 
16 #ifndef __RAT_DS_MCPhoton__
17 #define __RAT_DS_MCPhoton__
18 
19 #include <TObject.h>
20 #include <TVector3.h>
21 
22 namespace RAT {
23 namespace DS {
24 
25 class MCPhoton : public TObject {
26  public:
27  MCPhoton() : TObject(), isDarkHit(false) {}
28  virtual ~MCPhoton() {}
29 
31  virtual Double_t GetHitTime() const { return hitTime; }
32  virtual void SetHitTime(Double_t _hitTime) { hitTime = _hitTime; }
33 
35  virtual Double_t GetFrontEndTime() const { return frontEndTime; }
36  virtual void SetFrontEndTime(Double_t _frontEndTime) { frontEndTime = _frontEndTime; }
37 
39  virtual TVector3 GetPosition() const { return pos; }
40  virtual void SetPosition(const TVector3 &_pos) { pos = _pos; }
41 
43  virtual Double_t GetLambda() const { return lambda; }
44  virtual void SetLambda(Double_t _lambda) { lambda = _lambda; }
45 
47  virtual TVector3 GetMomentum() const { return mom; }
48  virtual void SetMomentum(const TVector3 &_mom) { mom = _mom; }
49 
51  virtual TVector3 GetPolarization() const { return pol; }
52  virtual void SetPolarization(const TVector3 &_pol) { pol = _pol; }
53 
59  virtual Double_t GetCharge() const { return charge; }
60  virtual void SetCharge(Double_t _charge) { charge = _charge; }
61 
63  virtual void SetDarkHit(Bool_t _isDarkHit) { isDarkHit = _isDarkHit; }
64  virtual Bool_t IsDarkHit() const { return isDarkHit; }
65 
67  virtual void SetAfterPulse(Bool_t _isAfterPulse) { isAfterPulse = _isAfterPulse; }
68  virtual Bool_t IsAfterPulse() const { return isAfterPulse; }
69 
71  virtual void SetTrackID(Int_t _trackID) { trackID = _trackID; }
72  virtual Int_t GetTrackID() const { return trackID; }
73 
77  virtual std::string GetCreatorProcess() const { return process; }
78  virtual void SetCreatorProcess(const std::string &_process) { process = _process; }
79 
81  virtual void SetCreationTime(Double_t _creationTime) { creationTime = _creationTime; }
82  virtual Double_t GetCreationTime() const { return creationTime; }
83 
85  bool operator<(const MCPhoton &mcp) const { return (frontEndTime < mcp.frontEndTime); }
86  bool operator>(const MCPhoton &mcp) const { return (frontEndTime > mcp.frontEndTime); }
87 
88  ClassDef(MCPhoton, 4);
89 
90  protected:
91  Double_t hitTime;
92  Double_t frontEndTime;
93  Double_t creationTime;
94  Double_t lambda;
95  TVector3 pos;
96  TVector3 mom;
97  TVector3 pol;
98 
99  Double_t charge;
100  Bool_t isDarkHit;
101  Bool_t isAfterPulse;
102  Int_t trackID;
103  std::string process;
104 };
105 
106 } // namespace DS
107 } // namespace RAT
108 
109 #endif
Definition: MCPhoton.hh:25
virtual void SetDarkHit(Bool_t _isDarkHit)
Definition: MCPhoton.hh:63
virtual std::string GetCreatorProcess() const
Definition: MCPhoton.hh:77
virtual Double_t GetHitTime() const
Definition: MCPhoton.hh:31
virtual TVector3 GetPosition() const
Definition: MCPhoton.hh:39
virtual void SetAfterPulse(Bool_t _isAfterPulse)
Definition: MCPhoton.hh:67
virtual void SetTrackID(Int_t _trackID)
Definition: MCPhoton.hh:71
virtual Double_t GetLambda() const
Definition: MCPhoton.hh:43
virtual TVector3 GetMomentum() const
Definition: MCPhoton.hh:47
virtual Double_t GetCharge() const
Definition: MCPhoton.hh:59
virtual void SetCreationTime(Double_t _creationTime)
Definition: MCPhoton.hh:81
virtual TVector3 GetPolarization() const
Definition: MCPhoton.hh:51
bool operator<(const MCPhoton &mcp) const
Definition: MCPhoton.hh:85
virtual Double_t GetFrontEndTime() const
Definition: MCPhoton.hh:35
Definition: CCCrossSecMessenger.hh:29