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:27
extra gamma particle physics for simulation and sets up the photonuclear model to use from the config...
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