GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TZeroDegree.h
Go to the documentation of this file.
1#ifndef TZERODEGREE_H
2#define TZERODEGREE_H
3
4/** \addtogroup Detectors
5 * @{
6 */
7
8/////////////////////////////////////////////////////////////
9///
10/// \class TZeroDegree
11///
12/// The TZeroDegree class defines the observables and algorithms used
13/// when analyzing GRIFFIN data. It includes detector positions,
14/// etc.
15///
16/////////////////////////////////////////////////////////////
17
18#include <vector>
19#include <cstdio>
20
21#include "TVector3.h"
22
23#include "Globals.h"
24#include "TDetector.h"
25#include "TZeroDegreeHit.h"
26
27class TZeroDegree : public TDetector {
28public:
30 TZeroDegree(const TZeroDegree& rhs);
31 TZeroDegree(TZeroDegree&&) noexcept = default;
32 TZeroDegree& operator=(const TZeroDegree&); //!<!
33 TZeroDegree& operator=(TZeroDegree&&) = default;
34 ~TZeroDegree() override = default;
35
36 TZeroDegreeHit* GetZeroDegreeHit(const int& i) const { return static_cast<TZeroDegreeHit*>(GetHit(i)); }
37
38 static TVector3 GetPosition(double dist) { return {0, 0, dist}; } //!<!
39
40#ifndef __CINT__
41 void AddFragment(const std::shared_ptr<const TFragment>&, TChannel*) override; //!<!
42#endif
43 void BuildHits() override {} // no need to build any hits, everything already done in AddFragment
44
45private:
46 static bool fSetWave; ///< Flag for Waveforms ON/OFF
47
48public:
49 static bool SetWave() { return fSetWave; } //!<!
50
51 void Print(Option_t* opt = "") const override; //!<!
52 void Print(std::ostream& out) const override; //!<!
53
54 /// \cond CLASSIMP
55 ClassDefOverride(TZeroDegree, 2) // ZeroDegree Physics structure // NOLINT(readability-else-after-return)
56 /// \endcond
57};
58/*! @} */
59#endif
virtual TDetectorHit * GetHit(const int &index) const
Definition TDetector.cxx:61
static bool fSetWave
Flag for Waveforms ON/OFF.
Definition TZeroDegree.h:46
static TVector3 GetPosition(double dist)
!
Definition TZeroDegree.h:38
void Print(Option_t *opt="") const override
!
void AddFragment(const std::shared_ptr< const TFragment > &, TChannel *) override
!
TZeroDegree(TZeroDegree &&) noexcept=default
void BuildHits() override
!
Definition TZeroDegree.h:43
TZeroDegreeHit * GetZeroDegreeHit(const int &i) const
Definition TZeroDegree.h:36
static bool SetWave()
!
Definition TZeroDegree.h:49