ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtApollo.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence version 3 (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 #ifndef APOLLO_H
9 #define APOLLO_H
10 
11 #include <FairDetector.h>
12 
13 #include <Rtypes.h>
14 #include <TString.h>
15 #include <TVector3.h>
16 
17 #include <string>
18 
19 class FairVolume;
20 class TClonesArray;
21 class AtApolloPoint;
22 class TBuffer;
23 class TClass;
24 class TList;
25 class TMemberInspector;
26 
27 class AtApollo : public FairDetector {
28 public:
33  AtApollo(const char *Name, Bool_t Active);
34 
36  AtApollo();
37 
39  virtual ~AtApollo();
40 
42  virtual void Initialize();
43 
47  virtual Bool_t ProcessHits(FairVolume *v = 0);
48 
50  virtual void Register();
51 
53  virtual TClonesArray *GetCollection(Int_t iColl) const;
54 
56  virtual void Reset();
57 
62  virtual void Print(Option_t *option = "") const;
63 
65  void ConstructGeometry();
66 
67  Bool_t CheckIfSensitive(std::string name);
68 
73  virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset) { ; }
74  virtual void SetSpecialPhysicsCuts() { ; }
75  virtual void EndOfEvent();
76  virtual void FinishPrimary() { ; }
77  virtual void FinishRun() { ; }
78  virtual void BeginPrimary() { ; }
79  virtual void PostTrack() { ; }
80  virtual void PreTrack() { ; }
81  virtual void BeginEvent() { ; }
82 
83 private:
88  Int_t fTrackID;
89  Int_t fVolumeID;
90  TString fVolName;
91  Int_t fDetCopyID;
92  Double32_t fTime;
93  Double32_t fLength;
94  Double32_t fELoss;
95  Double32_t fELossAcc;
96 
97  TClonesArray *fTraCollection{};
98 
99  Bool_t kGeoSaved{};
100  TList *flGeoPar{};
101 
103  TClonesArray *fAtApolloPointCollection;
104 
108  AtApolloPoint *AddPoint(Int_t trackID, Int_t detID, TVector3 pos, TVector3 mom, Int_t crystalID, Double_t time,
109  Double_t length, Double_t eLoss);
110 
111  AtApollo(const AtApollo &);
112  AtApollo &operator=(const AtApollo &);
113 
114  ClassDef(AtApollo, 1)
115 };
116 
117 #endif // APOLLO_H
AtApollo::BeginPrimary
virtual void BeginPrimary()
Definition: AtApollo.h:78
AtApollo::~AtApollo
virtual ~AtApollo()
Definition: AtApollo.cxx:42
AtApollo::FinishPrimary
virtual void FinishPrimary()
Definition: AtApollo.h:76
AtApollo::CopyClones
virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
Definition: AtApollo.h:73
AtApollo::ConstructGeometry
void ConstructGeometry()
Definition: AtApollo.cxx:136
AtApolloPoint
Definition: AtApolloPoint.h:20
AtApollo
Definition: AtApollo.h:27
AtApollo::GetCollection
virtual TClonesArray * GetCollection(Int_t iColl) const
Definition: AtApollo.cxx:116
AtApollo::FinishRun
virtual void FinishRun()
Definition: AtApollo.h:77
AtApollo::Register
virtual void Register()
Definition: AtApollo.cxx:104
AtApollo::ProcessHits
virtual Bool_t ProcessHits(FairVolume *v=0)
Definition: AtApollo.cxx:58
AtApollo::Reset
virtual void Reset()
Definition: AtApollo.cxx:125
AtApollo::Print
virtual void Print(Option_t *option="") const
Definition: AtApollo.cxx:130
AtApollo::Initialize
virtual void Initialize()
Definition: AtApollo.cxx:50
AtApollo::EndOfEvent
virtual void EndOfEvent()
Definition: AtApollo.cxx:98
AtApollo::BeginEvent
virtual void BeginEvent()
Definition: AtApollo.h:81
AtApollo::SetSpecialPhysicsCuts
virtual void SetSpecialPhysicsCuts()
Definition: AtApollo.h:74
AtApollo::PostTrack
virtual void PostTrack()
Definition: AtApollo.h:79
AtApollo::AtApollo
AtApollo()
Definition: AtApollo.cxx:30
AtApollo::PreTrack
virtual void PreTrack()
Definition: AtApollo.h:80
AtApollo::CheckIfSensitive
Bool_t CheckIfSensitive(std::string name)
Definition: AtApollo.cxx:150