LDMX Software
GammaPhysics.h
Go to the documentation of this file.
1
10#ifndef SIMCORE_GAMMAPHYSICS_H_
11#define SIMCORE_GAMMAPHYSICS_H_
12
13//------------//
14// Geant4 //
15//------------//
16#include "G4GammaConversionToMuons.hh"
17#include "G4ProcessManager.hh"
18#include "G4VPhysicsConstructor.hh"
19#include "G4VProcess.hh"
20#include "SimCore/PhotoNuclearModel.h"
21
22namespace simcore {
23
36class GammaPhysics : public G4VPhysicsConstructor {
37 public:
43 GammaPhysics(const G4String& name,
44 const framework::config::Parameters& parameters);
45
49 virtual ~GammaPhysics() = default;
50
57 void ConstructParticle() final;
58
69 void ConstructProcess() final;
70
71 private:
75 G4GammaConversionToMuons gammaConvProcess;
76
80 framework::config::Parameters modelParameters;
81};
82
83} // namespace simcore
84
85#endif
Class encapsulating parameters for configuring a processor.
Definition Parameters.h:29
extra gamma particle physics for simulation and sets up the photonuclear model to use from the config...
GammaPhysics(const G4String &name, const framework::config::Parameters &parameters)
Class constructor.
void ConstructProcess() final
We do two things for this call back during initialization.
G4GammaConversionToMuons gammaConvProcess
The gamma to muons process.
virtual ~GammaPhysics()=default
Class destructor.
void ConstructParticle() final
Construct particles.
framework::config::Parameters modelParameters
Parameters from the configuration to pass along to the photonuclear model.
All classes in the ldmx-sw project use this namespace.
Definition PerfDict.cxx:45