DD4hep  1.38.0
Detector Description Toolkit for High Energy Physics
Public Member Functions | Private Attributes | List of all members
dd4hep::sim::Geant4CerenkovPhysics Class Reference

Geant4 physics list action to enable Cerenkov physics. More...

Inheritance diagram for dd4hep::sim::Geant4CerenkovPhysics:
dd4hep::sim::Geant4PhysicsList dd4hep::sim::Geant4Action

Public Member Functions

 Geant4CerenkovPhysics ()=delete
 Default constructor. More...
 
 Geant4CerenkovPhysics (const Geant4CerenkovPhysics &)=delete
 Copy constructor. More...
 
 Geant4CerenkovPhysics (Geant4Context *ctxt, const std::string &nam)
 Initializing constructor. More...
 
virtual ~Geant4CerenkovPhysics ()=default
 Default destructor. More...
 
virtual void constructProcesses (G4VUserPhysicsList *physics_list)
 Callback to construct processes (uses the G4 particle table) More...
 
- Public Member Functions inherited from dd4hep::sim::Geant4PhysicsList
 Geant4PhysicsList (Geant4Context *context, const std::string &nam)
 Standard constructor with initailization parameters. More...
 
virtual ~Geant4PhysicsList ()
 Default destructor. More...
 
void dump ()
 Dump content to stdout. More...
 
virtual void installCommandMessenger () override
 Install command control messenger if wanted. More...
 
PhysicsProcesses & processes ()
 Access all physics processes. More...
 
const PhysicsProcesses & processes () const
 Access all physics processes. More...
 
ParticleProcesses & processes (const std::string &part_name)
 Access processes for one particle type. More...
 
const ParticleProcesses & processes (const std::string &part_name) const
 Access processes for one particle type (CONST) More...
 
PhysicsProcesses & discreteProcesses ()
 Access all physics discrete processes. More...
 
const PhysicsProcesses & discreteProcesses () const
 Access all physics discrete processes. More...
 
ParticleProcesses & discreteProcesses (const std::string &part_name)
 Access discrete processes for one particle type. More...
 
const ParticleProcesses & discreteProcesses (const std::string &part_name) const
 Access discrete processes for one particle type (CONST) More...
 
PhysicsConstructor physics (const std::string &name) const
 Access physics constructor by name. More...
 
ParticleConstructors & particles ()
 Access all physics particles. More...
 
const ParticleConstructors & particles () const
 Access all physics particles. More...
 
ParticleConstructors & particlegroups ()
 Access all physics particlegroups. More...
 
const ParticleConstructors & particlegroups () const
 Access all physics particlegroups. More...
 
PhysicsConstructors & physics ()
 Access all physics constructors. More...
 
const PhysicsConstructors & physics () const
 Access all physics constructors. More...
 
void addParticleConstructor (const std::string &part_name)
 Add physics particle constructor by name. More...
 
void addParticleGroup (const std::string &part_name)
 Add physics particle group constructor by name (Leptons, Bosons, Mesons, etc.) More...
 
void addParticleProcess (const std::string &part_name, const std::string &proc_name, int ordAtRestDoIt, int ordAlongSteptDoIt, int ordPostStepDoIt)
 Add particle process by name with arguments. More...
 
void addDiscreteParticleProcess (const std::string &part_name, const std::string &proc_name)
 Add discrete particle process by name with arguments. More...
 
void addPhysicsConstructor (const std::string &physics_name)
 Add PhysicsConstructor by name. More...
 
void adoptPhysicsConstructor (Geant4Action *action)
 Add PhysicsConstructor as Geant4Action object. More...
 
G4VPhysicsConstructor * addPhysicsConstructorType (const std::string &physics_name)
 Callback to add a physics type to the physics list. More...
 
virtual void constructPhysics (G4VModularPhysicsList *physics)
 constructPhysics callback More...
 
virtual void constructParticles (G4VUserPhysicsList *physics)
 Callback to construct particles. More...
 
virtual void enable (G4VUserPhysicsList *physics)
 Enable physics list: actions necessary to be propagated to Geant4. More...
 
- Public Member Functions inherited from dd4hep::sim::Geant4Action
 Geant4Action (Geant4Context *context, const std::string &nam)
 Standard constructor. More...
 
long addRef ()
 Increase reference count. More...
 
long release ()
 Decrease reference count. Implicit destruction. More...
 
Geant4Context * context () const
 Access the context. More...
 
virtual void updateContext (Geant4Context *ctxt)
 Set or update client context. More...
 
virtual void configureFiber (Geant4Context *thread_context)
 Set or update client for the use in a new thread fiber. More...
 
const std::string & name () const
 Access name of the action. More...
 
const char * c_name () const
 Access name of the action. More...
 
void setName (const std::string &new_name)
 Set the object name. More...
 
PropertyManager & properties ()
 Access to the properties of the object. More...
 
PrintLevel outputLevel () const
 Access the output level. More...
 
PrintLevel setOutputLevel (PrintLevel new_level)
 Set the output level; returns previous value. More...
 
Geant4UIMessenger * control () const
 Access to the UI messenger. More...
 
virtual void enableUI ()
 Enable and install UI messenger. More...
 
template<typename T >
Geant4Action & declareProperty (const std::string &nam, T &val)
 Declare property. More...
 
template<typename T >
Geant4Action & declareProperty (const char *nam, T &val)
 Declare property. More...
 
bool hasProperty (const std::string &name) const
 Check property for existence. More...
 
Property & property (const std::string &name)
 Access single property. More...
 
virtual void installMessengers ()
 Install property control messenger if wanted. More...
 
virtual void installPropertyMessenger ()
 Install property control messenger if wanted. More...
 
void print (const char *fmt,...) const
 Support for messages with variable output level using output level. More...
 
void printM1 (const char *fmt,...) const
 Support for messages with variable output level using output level-1. More...
 
void printM2 (const char *fmt,...) const
 Support for messages with variable output level using output level-2. More...
 
void printP1 (const char *fmt,...) const
 Support for messages with variable output level using output level+1. More...
 
void printP2 (const char *fmt,...) const
 Support for messages with variable output level using output level+2. More...
 
void always (const char *fmt,...) const
 Support of always printed messages. More...
 
void debug (const char *fmt,...) const
 Support of debug messages. More...
 
void info (const char *fmt,...) const
 Support of info messages. More...
 
void warning (const char *fmt,...) const
 Support of warning messages. More...
 
void error (const char *fmt,...) const
 Support of error messages. More...
 
bool return_error (bool return_value, const char *fmt,...) const
 Action to support error messages. More...
 
void fatal (const char *fmt,...) const
 Support of fatal messages. Throws exception. More...
 
void except (const char *fmt,...) const
 Support of exceptions: Print fatal message and throw runtime_error. More...
 
void abortRun (const std::string &exception, const char *fmt,...) const
 Abort Geant4 Run by throwing a G4Exception with type RunMustBeAborted. More...
 
Geant4RunActionSequence & runAction () const
 Access to the main run action sequence from the kernel object. More...
 
Geant4EventActionSequence & eventAction () const
 Access to the main event action sequence from the kernel object. More...
 
Geant4SteppingActionSequence & steppingAction () const
 Access to the main stepping action sequence from the kernel object. More...
 
Geant4TrackingActionSequence & trackingAction () const
 Access to the main tracking action sequence from the kernel object. More...
 
Geant4StackingActionSequence & stackingAction () const
 Access to the main stacking action sequence from the kernel object. More...
 
Geant4GeneratorActionSequence & generatorAction () const
 Access to the main generator action sequence from the kernel object. More...
 

Private Attributes

double m_maxBetaChangePerStep
 
int m_maxNumPhotonsPerStep
 
int m_verbosity
 
bool m_trackSecondariesFirst
 
bool m_stackPhotons
 

Additional Inherited Members

- Public Types inherited from dd4hep::sim::Geant4PhysicsList
typedef std::vector< Process > ParticleProcesses
 
typedef std::map< std::string, ParticleProcesses > PhysicsProcesses
 
typedef std::vector< ParticleConstructor > ParticleConstructors
 
typedef std::vector< PhysicsConstructor > PhysicsConstructors
 
- Public Attributes inherited from dd4hep::sim::Geant4PhysicsList
PhysicsProcesses m_processes
 
PhysicsProcesses m_discreteProcesses
 
PhysicsConstructors m_physics
 
ParticleConstructors m_particles
 
ParticleConstructors m_particlegroups
 
- Protected Member Functions inherited from dd4hep::sim::Geant4Action
 DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4Action)
 Define standard assignments and constructors. More...
 
virtual ~Geant4Action ()
 Default destructor. More...
 
- Protected Attributes inherited from dd4hep::sim::Geant4Action
Geant4Context * m_context { nullptr }
 Reference to the Geant4 context. More...
 
Geant4UIMessenger * m_control { nullptr }
 Control directory of this action. More...
 
int m_outputLevel { 3 }
 Default property: Output level. More...
 
bool m_needsControl { false }
 Default property: Flag to create control instance. More...
 
std::string m_name { }
 Action name. More...
 
PropertyManager m_properties { }
 Property pool. More...
 
long m_refCount { 1 }
 Reference count. Initial value: 1. More...
 

Detailed Description

Geant4 physics list action to enable Cerenkov physics.

Author
M.Frank
Version
1.0

Definition at line 56 of file Geant4CerenkovPhysics.cpp.

Constructor & Destructor Documentation

◆ Geant4CerenkovPhysics() [1/3]

dd4hep::sim::Geant4CerenkovPhysics::Geant4CerenkovPhysics ( )
delete

Default constructor.

◆ Geant4CerenkovPhysics() [2/3]

dd4hep::sim::Geant4CerenkovPhysics::Geant4CerenkovPhysics ( const Geant4CerenkovPhysics &  )
delete

Copy constructor.

◆ Geant4CerenkovPhysics() [3/3]

dd4hep::sim::Geant4CerenkovPhysics::Geant4CerenkovPhysics ( Geant4Context *  ctxt,
const std::string &  nam 
)
inline

Initializing constructor.

Definition at line 63 of file Geant4CerenkovPhysics.cpp.

◆ ~Geant4CerenkovPhysics()

virtual dd4hep::sim::Geant4CerenkovPhysics::~Geant4CerenkovPhysics ( )
virtualdefault

Default destructor.

Member Function Documentation

◆ constructProcesses()

virtual void dd4hep::sim::Geant4CerenkovPhysics::constructProcesses ( G4VUserPhysicsList *  physics_list)
inlinevirtual

Callback to construct processes (uses the G4 particle table)

Reimplemented from dd4hep::sim::Geant4PhysicsList.

Definition at line 75 of file Geant4CerenkovPhysics.cpp.

Member Data Documentation

◆ m_maxBetaChangePerStep

double dd4hep::sim::Geant4CerenkovPhysics::m_maxBetaChangePerStep
private

Definition at line 112 of file Geant4CerenkovPhysics.cpp.

◆ m_maxNumPhotonsPerStep

int dd4hep::sim::Geant4CerenkovPhysics::m_maxNumPhotonsPerStep
private

Definition at line 113 of file Geant4CerenkovPhysics.cpp.

◆ m_stackPhotons

bool dd4hep::sim::Geant4CerenkovPhysics::m_stackPhotons
private

Definition at line 116 of file Geant4CerenkovPhysics.cpp.

◆ m_trackSecondariesFirst

bool dd4hep::sim::Geant4CerenkovPhysics::m_trackSecondariesFirst
private

Definition at line 115 of file Geant4CerenkovPhysics.cpp.

◆ m_verbosity

int dd4hep::sim::Geant4CerenkovPhysics::m_verbosity
private

Definition at line 114 of file Geant4CerenkovPhysics.cpp.


The documentation for this class was generated from the following file: