EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4EicDircSteppingAction.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file G4EicDircSteppingAction.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4EICDIRCSTEPPINGACTION_H
4 #define G4EICDIRCSTEPPINGACTION_H
5 
6 #include <Rtypes.h>
7 #include <TVector3.h>
9 #include <vector>
10 
11 class G4Step;
12 class G4VPhysicalVolume;
13 class PHCompositeNode;
14 class G4EicDircDetector;
15 class PHG4Hit;
16 class PHG4Hitv1;
17 class PHG4HitContainer;
18 class PHParameters;
19 class PrtHit;
20 class G4Track;
21 
23 {
24  public:
27 
29  ~G4EicDircSteppingAction() override;
30 
32  bool UserSteppingAction(const G4Step*, bool) override;
33 
35  void SetInterfacePointers(PHCompositeNode*) override;
36 
37  void SetHitNodeName(const std::string& nam) { m_HitNodeName = nam; }
38  void SetAbsorberNodeName(const std::string& nam) { m_AbsorberNodeName = nam; }
39  void SetSupportNodeName(const std::string& nam) { m_SupportNodeName = nam; }
40 
41  std::vector<Int_t> vector_nid;
42  std::vector<Int_t> vector_trackid;
43 
44  //std::vector<Int_t> vector_bar_hit_trackid;
45  //std::vector<TVector3> vector_p_bar;
46  //std::vector<TVector3> vector_hit_pos_bar;
47 
48  private:
56  PHG4Hit* m_Hit = nullptr;
57  // PrtHit* m_Hit = nullptr;
58  //PHG4HitContainer* m_SaveHitContainer = nullptr;
59 
60  G4VPhysicalVolume* m_SaveVolPre = nullptr;
61  G4VPhysicalVolume* m_SaveVolPost = nullptr;
62  int m_SaveTrackId = -1;
65  int m_ActiveFlag = 0;
66  int m_BlackHoleFlag = 0;
67  //double m_EdepSum = 0.;
68  //double m_EionSum = 0.;
69 
70  std::string m_HitNodeName;
71  std::string m_AbsorberNodeName;
72  std::string m_SupportNodeName;
73 };
74 
75 #endif // G4EICDIRCSTEPPINGACTION_H