ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtSeGA.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 SEGA_H
9 #define SEGA_H
10 
11 #include <FairDetector.h>
12 
13 #include <Rtypes.h> // for Int_t, Bool_t, Double32_t, Double_t, THash...
14 #include <TString.h> // for TString
15 #include <TVector3.h>
16 
17 #include <string> // for string
18 class TBuffer;
19 class TClass;
20 class TMemberInspector;
21 class FairVolume;
22 class TClonesArray;
23 class AtMCPoint;
24 
25 class AtSeGA : public FairDetector {
26 private:
31  Int_t fTrackID;
32  Int_t fVolumeID;
33  TString fVolName;
34  Int_t fDetCopyID;
35  Double32_t fTime;
36  Double32_t fLength;
37  Double32_t fELoss;
38  Double32_t fELossAcc;
39 
41  TClonesArray *fAtSeGAPointCollection;
42 
43 public:
48  AtSeGA(const char *Name, Bool_t Active);
49 
51  AtSeGA();
52 
54  virtual ~AtSeGA();
55 
57  virtual void Initialize();
58 
62  virtual Bool_t ProcessHits(FairVolume *v = 0);
63 
65  virtual void Register();
66 
68  virtual TClonesArray *GetCollection(Int_t iColl) const;
69 
71  virtual void Reset();
72 
77  virtual void Print(Option_t *option = "") const;
78 
80  void ConstructGeometry();
81 
82  Bool_t CheckIfSensitive(std::string name);
83 
88  virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset) { ; }
89  virtual void SetSpecialPhysicsCuts() { ; }
90  virtual void EndOfEvent();
91  virtual void FinishPrimary() { ; }
92  virtual void FinishRun() { ; }
93  virtual void BeginPrimary() { ; }
94  virtual void PostTrack() { ; }
95  virtual void PreTrack() { ; }
96  virtual void BeginEvent() { ; }
97 
98 private:
102  AtMCPoint *
103  AddPoint(Int_t trackID, Int_t detID, TVector3 pos, TVector3 mom, Double_t tof, Double_t length, Double_t eLoss);
104  AtSeGA(const AtSeGA &);
105  AtSeGA &operator=(const AtSeGA &);
106 
107  ClassDef(AtSeGA, 1)
108 };
109 
110 #endif // SEGA_H
AtSeGA::BeginEvent
virtual void BeginEvent()
Definition: AtSeGA.h:96
AtSeGA::FinishRun
virtual void FinishRun()
Definition: AtSeGA.h:92
AtSeGA::GetCollection
virtual TClonesArray * GetCollection(Int_t iColl) const
Definition: AtSeGA.cxx:112
AtSeGA::AtSeGA
AtSeGA()
Definition: AtSeGA.cxx:27
AtSeGA::FinishPrimary
virtual void FinishPrimary()
Definition: AtSeGA.h:91
AtSeGA::EndOfEvent
virtual void EndOfEvent()
Definition: AtSeGA.cxx:94
AtSeGA::SetSpecialPhysicsCuts
virtual void SetSpecialPhysicsCuts()
Definition: AtSeGA.h:89
AtSeGA::PreTrack
virtual void PreTrack()
Definition: AtSeGA.h:95
AtSeGA
Definition: AtSeGA.h:25
AtSeGA::BeginPrimary
virtual void BeginPrimary()
Definition: AtSeGA.h:93
AtSeGA::PostTrack
virtual void PostTrack()
Definition: AtSeGA.h:94
AtSeGA::Initialize
virtual void Initialize()
Definition: AtSeGA.cxx:47
AtSeGA::Register
virtual void Register()
Definition: AtSeGA.cxx:100
AtSeGA::ProcessHits
virtual Bool_t ProcessHits(FairVolume *v=0)
Definition: AtSeGA.cxx:54
AtSeGA::CheckIfSensitive
Bool_t CheckIfSensitive(std::string name)
Definition: AtSeGA.cxx:146
AtSeGA::Print
virtual void Print(Option_t *option="") const
Definition: AtSeGA.cxx:126
AtSeGA::Reset
virtual void Reset()
Definition: AtSeGA.cxx:121
AtSeGA::ConstructGeometry
void ConstructGeometry()
Definition: AtSeGA.cxx:132
AtMCPoint
Definition: AtMCPoint.h:26
AtSeGA::~AtSeGA
virtual ~AtSeGA()
Definition: AtSeGA.cxx:39
AtSeGA::CopyClones
virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
Definition: AtSeGA.h:88