Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:17:41

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