ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtTabFF.h
Go to the documentation of this file.
1 #ifndef ATTABFF_H
2 #define ATTABFF_H
3 
4 #include "AtDataObserver.h"
5 #include "AtEvent.h"
6 #include "AtFissionEvent.h"
7 #include "AtRawEvent.h"
8 #include "AtTabCanvas.h"
9 #include "AtTabInfo.h" // for AtTabInfoFairRoot
10 
11 #include <Math/Point3D.h>
12 #include <Math/Point3Dfwd.h> // for XYZPoint
13 #include <Math/Vector3D.h>
14 #include <Math/Vector3Dfwd.h> // for XYZVector
15 #include <Rtypes.h> // for Color_t
16 
17 #include <array> // for array
18 #include <memory> // for unique_ptr
19 #include <set> // for set
20 #include <vector> // for vector
21 class AtHit;
22 class TBuffer;
23 class TClass;
24 class TH1F;
25 class TMemberInspector;
26 class THStack;
27 namespace DataHandling {
28 class AtBranch;
29 }
30 namespace DataHandling {
31 class AtSubject;
32 }
33 namespace DataHandling {
34 class AtTreeEntry;
35 }
36 
38 protected:
41  using TH1Ptr = std::unique_ptr<TH1F>;
42  using HitVector = std::vector<AtHit *>;
43  using THStackPtr = std::unique_ptr<THStack>;
44 
49 
50  std::array<TH1Ptr, 2> fSimdQdZ;
51  std::array<TH1Ptr, 2> fExpdQdZ;
52  std::array<TH1Ptr, 2> fExpADCSum;
53  std::array<std::set<int>, 2> fCurrPads;
54  std::array<THStackPtr, 4> fStacks;
55 
56 public:
57  AtTabFF(DataHandling::AtBranch &fissionBranch, bool plotADC = false);
58  ~AtTabFF();
59 
60  void Exec() override {}
61  void InitTab() override {}
62  void Update(DataHandling::AtSubject *sub) override;
63 
64 protected:
65  void UpdateEvent();
66  void DrawCanvas();
67 
68  std::vector<AtHit *> GetFragmentHits(AtEvent *event);
70 };
71 
72 #endif //#ifndef ATTABFF_H
AtTabCanvas.h
AtDataObserver.h
AtRawEvent.h
AtTabFF::InitTab
void InitTab() override
Definition: AtTabFF.h:61
AtTabFF::fEvent
AtTabInfoFairRoot< AtEvent > fEvent
Definition: AtTabFF.h:45
DataHandling::AtObserver
Definition: AtDataObserver.h:12
AtTabFF::Update
void Update(DataHandling::AtSubject *sub) override
Definition: AtTabFF.cxx:73
AtEvent.h
DataHandling::AtBranch
Subject for the branch in the FairRoot tree.
Definition: AtViewerManagerSubject.h:38
AtFissionEvent.h
XYZVector
ROOT::Math::XYZVector XYZVector
Definition: AtFindVertex.h:20
AtTabFF::THStackPtr
std::unique_ptr< THStack > THStackPtr
Definition: AtTabFF.h:43
AtTabFF::fFissionEvent
AtTabInfoFairRoot< AtFissionEvent > fFissionEvent
Definition: AtTabFF.h:47
AtTabFF::fExpdQdZ
std::array< TH1Ptr, 2 > fExpdQdZ
Definition: AtTabFF.h:51
AtTabFF::DrawCanvas
void DrawCanvas()
Definition: AtTabFF.cxx:127
AtTabFF::XYZPoint
ROOT::Math::XYZPoint XYZPoint
Definition: AtTabFF.h:40
AtTabFF::HitVector
std::vector< AtHit * > HitVector
Definition: AtTabFF.h:42
AtTabFF
Definition: AtTabFF.h:37
AtEvent
Definition: AtEvent.h:22
XYZPoint
ROOT::Math::XYZPoint XYZPoint
Definition: AtPatternCircle2D.h:18
AtTabFF::fRawEvent
AtTabInfoFairRoot< AtRawEvent > fRawEvent
Definition: AtTabFF.h:46
AtTabFF::TH1Ptr
std::unique_ptr< TH1F > TH1Ptr
Definition: AtTabFF.h:41
AtTabFF::ClassDefOverride
ClassDefOverride(AtTabFF, 1)
AtTabFF::UpdateEvent
void UpdateEvent()
Definition: AtTabFF.cxx:85
AtTabFF::AtTabFF
AtTabFF(DataHandling::AtBranch &fissionBranch, bool plotADC=false)
Definition: AtTabFF.cxx:24
AtTabFF::fEntry
DataHandling::AtTreeEntry & fEntry
Definition: AtTabFF.h:48
DataHandling
Definition: AtDataObserver.h:4
AtTabFF::XYZVector
ROOT::Math::XYZVector XYZVector
Definition: AtTabFF.h:39
AtTabFF::GetFragmentHits
std::vector< AtHit * > GetFragmentHits(AtEvent *event)
Definition: AtTabFF.cxx:79
AtTabCanvas
Abstract class for a tab composed of a single TCanvas.
Definition: AtTabCanvas.h:20
AtTabInfoFairRoot< AtEvent >
AtTabFF::fExpADCSum
std::array< TH1Ptr, 2 > fExpADCSum
Definition: AtTabFF.h:52
DataHandling::AtSubject
Definition: AtDataSubject.h:24
AtTabFF::~AtTabFF
~AtTabFF()
Definition: AtTabFF.cxx:67
AtTabFF::fCurrPads
std::array< std::set< int >, 2 > fCurrPads
Definition: AtTabFF.h:53
AtTabFF::Exec
void Exec() override
Called after the run's Exec() to update tab.
Definition: AtTabFF.h:60
DataHandling::AtTreeEntry
Subject for the entry number in the FairRoot tree.
Definition: AtViewerManagerSubject.h:17
AtTabFF::fSimdQdZ
std::array< TH1Ptr, 2 > fSimdQdZ
Definition: AtTabFF.h:50
AtTabFF::fStacks
std::array< THStackPtr, 4 > fStacks
Definition: AtTabFF.h:54
AtTabInfo.h
AtHit
Point in space with charge.
Definition: AtHit.h:27