GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TTdrCloverHit.h
Go to the documentation of this file.
1#ifndef TDRCLOVERHIT_H
2#define TDRCLOVERHIT_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#include "TRunInfo.h"
18
20public:
21 enum class ETdrCloverHitBits {
22 kTotalPU1 = 1<<0,
23 kTotalPU2 = 1<<1,
25 kPUHit1 = 1<<2,
26 kPUHit2 = 1<<3,
27 kBit4 = 1<<4,
28 kBit5 = 1<<5,
29 kBit6 = 1<<6,
30 kBit7 = 1<<7
31 };
32
36 ~TTdrCloverHit() override;
37
38private:
39 Int_t fFilter{0}; ///< The Filter Word
40 UInt_t fCrystal{0}; //!<! Crystal Number
41 Bool_t fBremSuppressed_flag{false}; //!<! Bremsstrahlung Suppression flag.
42
43public:
44 ///////////////////////// Setters /////////////////////////////////////
45 inline void SetFilterPattern(const int& x) { fFilter = x; } //!<!
46
47 ///////////////////////// Getters /////////////////////////////////////
48 inline Int_t GetFilterPattern() const { return fFilter; } //!<!
49
50 ///////////////////////// Recommended Functions/////////////////////////
51
52 ///////////////////////// TChannel Helpers /////////////////////////////////////
53 UShort_t NPileUps() const;
54 UShort_t PUHit() const;
55 void SetNPileUps(UChar_t npileups);
56 void SetPUHit(UChar_t puhit);
57
58 ///////////////////////// /////////////////////////////////////
59
60 inline UShort_t GetArrayNumber() const override { return (4 * (GetDetector() - 1) + (GetCrystal() + 1)); } //!<!
61 // returns a number 1-64 ( 1 = Detector 1 blue; 64 = Detector 16 white; )
62 Bool_t GetIsBremSuppressed() const { return fBremSuppressed_flag; }
63 void SetIsBremSuppressed(const Bool_t& supp_flag) { fBremSuppressed_flag = supp_flag; }
64 void MakeBremSuppressed(const Bool_t& supp_flag) { fBremSuppressed_flag |= supp_flag; }
65
66 bool InFilter(Int_t); //!<!
67
68 static bool CompareEnergy(const TTdrCloverHit*, const TTdrCloverHit*); //!<!
69 void Add(const TDetectorHit*) override; //!<!
70 // Bool_t BremSuppressed(TSceptarHit*);
71
72public:
73 void Clear(Option_t* opt = "") override; //!<!
74 void Print(Option_t* opt = "") const override; //!<!
75 void Print(std::ostream& out) const override;
76 void Copy(TObject&) const override; //!<!
77 void Copy(TObject&, bool) const override; //!<!
78
79 TVector3 GetPosition(double dist) const override; //!<!
80 TVector3 GetPosition() const override;
81
82private:
83 void SetTdrCloverFlag(ETdrCloverHitBits, Bool_t set);
84 Double_t GetDefaultDistance() const { return 110.; }
85
86 /// \cond CLASSIMP
87 ClassDefOverride(TTdrCloverHit, 1); // Information about a TDRCLOVER Hit
88 /// \endcond
89};
90/*! @} */
91#endif
virtual Int_t GetCrystal() const
!
virtual Int_t GetDetector() const
!
void SetPUHit(UChar_t puhit)
void MakeBremSuppressed(const Bool_t &supp_flag)
UShort_t GetArrayNumber() const override
!
void Clear(Option_t *opt="") override
!
void SetFilterPattern(const int &x)
!
Int_t fFilter
The Filter Word.
~TTdrCloverHit() override
void SetIsBremSuppressed(const Bool_t &supp_flag)
void Print(Option_t *opt="") const override
!
TVector3 GetPosition() const override
!
void Copy(TObject &) const override
!
UShort_t PUHit() const
UInt_t fCrystal
! Crystal Number
void SetTdrCloverFlag(ETdrCloverHitBits, Bool_t set)
UShort_t NPileUps() const
Bool_t fBremSuppressed_flag
! Bremsstrahlung Suppression flag.
void Add(const TDetectorHit *) override
!
Double_t GetDefaultDistance() const
void SetNPileUps(UChar_t npileups)
Bool_t GetIsBremSuppressed() const
bool InFilter(Int_t)
!
static bool CompareEnergy(const TTdrCloverHit *, const TTdrCloverHit *)
!
Int_t GetFilterPattern() const
!