BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
BDSProcessMap Class Reference

Map of all process names to IDs. More...

#include <BDSProcessMap.hh>

Collaboration diagram for BDSProcessMap:
Collaboration graph

Public Member Functions

G4String operator() (const G4int &type, const G4int &subType=-1) const
 Main access method for getting the name of processes.
 
G4String GetProcessName (const G4int &type, const G4int &subType=-1) const
 Despatched function to operator() for getting the name of processes.
 

Static Public Member Functions

static BDSProcessMapInstance ()
 Singleton accessor.
 

Private Types

typedef std::unordered_map< G4int, G4String > processMap
 Typedef to make syntax more readable.
 

Private Member Functions

 BDSProcessMap ()
 Private default constructor as singleton pattern.
 

Private Attributes

processMap processes
 Map of main process categories.
 
std::unordered_map< G4int, processMapsubProcesses
 

Static Private Attributes

static BDSProcessMapinstance = nullptr
 Singleton instance.
 

Detailed Description

Map of all process names to IDs.

Author
L. Nevay / S. Boogert.

Definition at line 32 of file BDSProcessMap.hh.

Member Typedef Documentation

◆ processMap

typedef std::unordered_map<G4int, G4String> BDSProcessMap::processMap
private

Typedef to make syntax more readable.

Definition at line 55 of file BDSProcessMap.hh.

Constructor & Destructor Documentation

◆ ~BDSProcessMap()

BDSProcessMap::~BDSProcessMap ( )

Definition at line 33 of file BDSProcessMap.cc.

◆ BDSProcessMap()

BDSProcessMap::BDSProcessMap ( )
private

Private default constructor as singleton pattern.

note 'processMap' is typedef in header

Definition at line 70 of file BDSProcessMap.cc.

References processes, and subProcesses.

Referenced by Instance().

Here is the caller graph for this function:

Member Function Documentation

◆ GetProcessName()

G4String BDSProcessMap::GetProcessName ( const G4int &  type,
const G4int &  subType = -1 
) const
inline

Despatched function to operator() for getting the name of processes.

Definition at line 44 of file BDSProcessMap.hh.

References operator()().

Referenced by BDSTrajectoryPoint::BDSTrajectoryPoint(), and BDSTrajectoryPoint::IsScatteringPoint().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Instance()

BDSProcessMap * BDSProcessMap::Instance ( )
static

Singleton accessor.

Definition at line 26 of file BDSProcessMap.cc.

References BDSProcessMap(), and instance.

Referenced by BDSTrajectoryPoint::BDSTrajectoryPoint(), and BDSTrajectoryPoint::IsScatteringPoint().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator()()

G4String BDSProcessMap::operator() ( const G4int &  type,
const G4int &  subType = -1 
) const

Main access method for getting the name of processes.

Definition at line 39 of file BDSProcessMap.cc.

References processes, and subProcesses.

Referenced by GetProcessName().

Here is the caller graph for this function:

Field Documentation

◆ instance

BDSProcessMap * BDSProcessMap::instance = nullptr
staticprivate

Singleton instance.

Definition at line 52 of file BDSProcessMap.hh.

Referenced by Instance().

◆ processes

processMap BDSProcessMap::processes
private

Map of main process categories.

Definition at line 58 of file BDSProcessMap.hh.

Referenced by BDSProcessMap(), and operator()().

◆ subProcesses

std::unordered_map<G4int, processMap> BDSProcessMap::subProcesses
private

Map of subprocesses mapped (again) to main processes categories. Safer than using a vector as there's not guarantee there in order by geant or contiguous.

Definition at line 63 of file BDSProcessMap.hh.

Referenced by BDSProcessMap(), and operator()().


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