GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TEmmaHit.h
Go to the documentation of this file.
1#ifndef EMMAHIT_H
2#define EMMAHIT_H
3
4/** \addtogroup Detectors
5 * @{
6 */
7
8#include <cstdio>
9#include <cmath>
10
11#include "TVector3.h"
12
13#include "TFragment.h"
14#include "TChannel.h"
15
16#include "TDetectorHit.h"
17
18class TEmmaHit : public TDetectorHit {
19public:
20 TEmmaHit();
21 TEmmaHit(const TEmmaHit&);
22 TEmmaHit(TEmmaHit&&) noexcept = default;
23 TEmmaHit& operator=(const TEmmaHit&) = default;
24 TEmmaHit& operator=(TEmmaHit&&) noexcept = default;
25 explicit TEmmaHit(const TFragment& frag) { frag.Copy(*this); }
26 ~TEmmaHit() override = default;
27
28 ///////////////////////// Setters /////////////////////////////////////
29 inline void SetFilterPattern(const int& x) { fFilter = x; } //!<!
30 // void SetHit();
31 void SetLeft(double q) { fLeft = q; }
32 void SetRight(double q) { fRight = q; }
33 void SetTop(double q) { fTop = q; }
34 void SetBottom(double q) { fBottom = q; }
35 void SetAnodeTrigger(double q) { fAnodeTrigger = q; }
36 void SetTdcNumber(int n) { fTdcNumber = n; }
37 void SetFailedFill(int n) { fFail = n; }
38
39 ///////////////////////// Getters /////////////////////////////////////
40 inline Int_t GetFilterPattern() const { return fFilter; } //!<!
41
42 TVector3 GetPosition() const override; //!<!
43 TVector3 GetPosition(Double_t) const override { return GetPosition(); } //!<!
44 TVector3 GetPosition(double delayL, double delayR, double delayT, double delayB) const; //!<!
45 Double_t GetLeft() const { return fLeft; }
46 Double_t GetRight() const { return fRight; }
47 Double_t GetTop() const { return fTop; }
48 Double_t GetBottom() const { return fBottom; }
49 Short_t GetTdcNumber() const { return fTdcNumber; }
50
51 Short_t GetFailedFill() const { return fFail; }
52
53 ///////////////////////// TChannel Helpers /////////////////////////////////////
54 bool InFilter(Int_t); //!<!
55
56 void Clear(Option_t* opt = "") override; //!<!
57 void Print(Option_t* opt = "") const override; //!<!
58 void Print(std::ostream& out) const override; //!<!
59 void Copy(TObject&) const override; //!<!
60 void Copy(TObject&, bool) const override; //!<!
61
62private:
63 Int_t fFilter{0};
64
65 Double_t fLeft{0}; // Left Cathode
66 Double_t fRight{0}; // Right Cathode
67 Double_t fTop{0}; // Top Cathode
68 Double_t fBottom{0}; // Bottom Cathode
69 Double_t fAnodeTrigger{0}; // Trigger Anode
70 Short_t fTdcNumber{0}; // Used in BuildHits
71 Double_t fICSum{0}; // IC Sum
72 Short_t fFail{0}; // Check BuildHits is working
73 Double_t fSiE{0}; // Si at focal plane
74 static double fLdelay;
75 static double fRdelay;
76 static double fTdelay;
77 static double fBdelay;
78
79 /// \cond CLASSIMP
80 ClassDefOverride(TEmmaHit, 3); // NOLINT(readability-else-after-return)
81 /// \endcond
82};
83/*! @} */
84#endif
Short_t fFail
Definition TEmmaHit.h:72
void SetBottom(double q)
Definition TEmmaHit.h:34
Double_t GetLeft() const
Definition TEmmaHit.h:45
Double_t fLeft
Definition TEmmaHit.h:65
void Clear(Option_t *opt="") override
!
Definition TEmmaHit.cxx:50
~TEmmaHit() override=default
bool InFilter(Int_t)
!
Definition TEmmaHit.cxx:43
Double_t fICSum
Definition TEmmaHit.h:71
static double fRdelay
Definition TEmmaHit.h:75
void SetFailedFill(int n)
Definition TEmmaHit.h:37
void Print(Option_t *opt="") const override
!
Definition TEmmaHit.cxx:56
static double fTdelay
Definition TEmmaHit.h:76
Short_t fTdcNumber
Definition TEmmaHit.h:70
Short_t GetFailedFill() const
Definition TEmmaHit.h:51
Double_t GetRight() const
Definition TEmmaHit.h:46
void SetAnodeTrigger(double q)
Definition TEmmaHit.h:35
Double_t fRight
Definition TEmmaHit.h:66
Int_t GetFilterPattern() const
!
Definition TEmmaHit.h:40
void SetLeft(double q)
Definition TEmmaHit.h:31
Double_t GetTop() const
Definition TEmmaHit.h:47
Short_t GetTdcNumber() const
Definition TEmmaHit.h:49
void SetRight(double q)
Definition TEmmaHit.h:32
void SetTop(double q)
Definition TEmmaHit.h:33
void SetTdcNumber(int n)
Definition TEmmaHit.h:36
TEmmaHit(TEmmaHit &&) noexcept=default
Double_t GetBottom() const
Definition TEmmaHit.h:48
Double_t fSiE
Definition TEmmaHit.h:73
Int_t fFilter
Definition TEmmaHit.h:63
Double_t fTop
Definition TEmmaHit.h:67
Double_t fAnodeTrigger
Definition TEmmaHit.h:69
void Copy(TObject &) const override
!
Definition TEmmaHit.cxx:21
TVector3 GetPosition() const override
!
Definition TEmmaHit.cxx:70
static double fLdelay
Definition TEmmaHit.h:74
Double_t fBottom
Definition TEmmaHit.h:68
TVector3 GetPosition(Double_t) const override
!
Definition TEmmaHit.h:43
static double fBdelay
Definition TEmmaHit.h:77
void SetFilterPattern(const int &x)
!
Definition TEmmaHit.h:29