EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4EicDircOpBoundaryProcess.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file G4EicDircOpBoundaryProcess.h
1 #ifndef G4EICDIRCOPBOUNDARYPROCESS_H
2 #define G4EICDIRCOPBOUNDARYPROCESS_H
3 
4 #include <Geant4/G4OpBoundaryProcess.hh>
5 #include <Geant4/G4OpticalPhoton.hh>
6 #include <Geant4/G4VParticleChange.hh>
7 
8 class G4EicDircOpBoundaryProcess : public G4OpBoundaryProcess
9 {
10  public:
11  explicit G4EicDircOpBoundaryProcess(const G4String& processName = "G4EicDircOpBoundary",
12  G4ProcessType type = fOptical)
13  : G4OpBoundaryProcess()
14  {
15  }
16 
17  virtual ~G4EicDircOpBoundaryProcess() override {}
18 
19  G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override;
20 
21  G4VParticleChange* PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) override;
22 
23  private:
24 };
25 
26 inline G4bool G4EicDircOpBoundaryProcess::IsApplicable(const G4ParticleDefinition&
27  aParticleType)
28 {
29  return (&aParticleType == G4OpticalPhoton::OpticalPhoton());
30 }
31 
32 #endif