Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:19:31

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef PHG4TPCENDCAPSTEPPINGACTION_H
0004 #define PHG4TPCENDCAPSTEPPINGACTION_H
0005 
0006 #include <g4main/PHG4SteppingAction.h>
0007 
0008 #include <string>  // for string
0009 
0010 class PHG4TpcEndCapDetector;
0011 
0012 class G4Step;
0013 class G4VPhysicalVolume;
0014 class PHCompositeNode;
0015 class PHG4Hit;
0016 class PHG4HitContainer;
0017 class PHParameters;
0018 
0019 class PHG4TpcEndCapSteppingAction : public PHG4SteppingAction
0020 {
0021  public:
0022   //! constructor
0023   PHG4TpcEndCapSteppingAction(PHG4TpcEndCapDetector*, const PHParameters* parameters);
0024 
0025   //! destructor
0026   ~PHG4TpcEndCapSteppingAction() override;
0027 
0028   //! stepping action
0029   bool UserSteppingAction(const G4Step*, bool) override;
0030 
0031   //! reimplemented from base class
0032   void SetInterfacePointers(PHCompositeNode*) override;
0033 
0034   void SetHitNodeName(const std::string& type, const std::string& name) override;
0035 
0036  private:
0037   //! pointer to the detector
0038   PHG4TpcEndCapDetector* m_Detector = nullptr;
0039   const PHParameters* m_Params = nullptr;
0040   //! pointer to hit container
0041   PHG4HitContainer* m_HitContainer = nullptr;
0042   PHG4Hit* m_Hit = nullptr;
0043   PHG4HitContainer* m_SaveHitContainer = nullptr;
0044   G4VPhysicalVolume* m_SaveVolPre = nullptr;
0045   G4VPhysicalVolume* m_SaveVolPost = nullptr;
0046 
0047   int m_SaveTrackId = -1;
0048   int m_SavePreStepStatus = -1;
0049   int m_SavePostStepStatus = -1;
0050   int m_ActiveFlag = 0;
0051   int m_BlackHoleFlag = 0;
0052   double m_EdepSum = 0.;
0053   double m_EionSum = 0.;
0054 
0055   std::string m_HitNodeName;
0056 };
0057 
0058 #endif  // PHG4TPCENDCAPSTEPPINGACTION_H