Geant4 VMC Version 6.6
Loading...
Searching...
No Matches
TG4ModelConfiguration.h
Go to the documentation of this file.
1#ifndef TG4_MODEL_CONFIGURATION_H
2#define TG4_MODEL_CONFIGURATION_H
3
4//------------------------------------------------
5// The Geant4 Virtual Monte Carlo package
6// Copyright (C) 2007 - 2015 Ivana Hrivnacova
7// All rights reserved.
8//
9// For the licensing terms see geant4_vmc/LICENSE.
10// Contact: root-vmc@cern.ch
11//-------------------------------------------------
12
17
18#include <globals.hh>
19
20#include <vector>
21
22class G4VFastSimulationModel;
23
33
35{
36 public:
37 TG4ModelConfiguration(const G4String& modelName);
38
39 // methods
40 void Print() const;
41
42 // set methods
43 void SetParticles(const G4String& particles);
44 void SetRegionsMedia(const G4String& regionsMedia);
45 void SetOneRegionMedium(const G4String& regionMedium);
46 void SetOneRegion(const G4String& region);
47 void SetFastSimulationModel(G4VFastSimulationModel* fastSimulationModel);
48
49 // get methods
50 const G4String& GetModelName() const;
51 const G4String& GetParticles() const;
52 const std::vector<G4String>& GetRegionsMedia() const;
53 const std::vector<G4String>& GetRegions() const;
54 G4VFastSimulationModel* GetFastSimulationModel() const;
55
56 G4bool HasParticle(const G4String& particleName);
57 G4bool HasRegion(const G4String& regionName);
58
59 private:
64
65 // data members
66 G4String fModelName;
67 G4String fParticles;
68 std::vector<G4String> fRegionsMedia;
69 std::vector<G4String>
71 G4VFastSimulationModel* fFastSimulationModel;
72};
73
74// inline functions
75
76inline void TG4ModelConfiguration::SetParticles(const G4String& particles)
77{
79 fParticles = particles;
80}
81
83 G4VFastSimulationModel* fastSimulationModel)
84{
86 fFastSimulationModel = fastSimulationModel;
87}
88
89inline const G4String& TG4ModelConfiguration::GetModelName() const
90{
92 return fModelName;
93}
94
95inline const G4String& TG4ModelConfiguration::GetParticles() const
96{
98 return fParticles;
99}
100
101inline const std::vector<G4String>&
107
108inline const std::vector<G4String>& TG4ModelConfiguration::GetRegions() const
109{
111 return fRegions;
112}
113
114inline G4VFastSimulationModel*
120
121#endif // TG4_MODEL_CONFIGURATION_H
A helper class to hold a configuration of a special physics model.
void SetParticles(const G4String &particles)
void SetOneRegionMedium(const G4String &regionMedium)
std::vector< G4String > fRegionsMedia
the vector of regions media
G4VFastSimulationModel * fFastSimulationModel
fast simulation model
G4String fParticles
the list of particle names
void SetRegionsMedia(const G4String &regionsMedia)
G4VFastSimulationModel * GetFastSimulationModel() const
const std::vector< G4String > & GetRegions() const
TG4ModelConfiguration(const TG4ModelConfiguration &right)
not implemented
TG4ModelConfiguration(const G4String &modelName)
std::vector< G4String > fRegions
the vector of created regions (per materials)
void SetOneRegion(const G4String &region)
TG4ModelConfiguration & operator=(const TG4ModelConfiguration &right)
not implemented
G4String fModelName
the EM model name
G4bool HasParticle(const G4String &particleName)
const G4String & GetModelName() const
const G4String & GetParticles() const
const std::vector< G4String > & GetRegionsMedia() const
void SetFastSimulationModel(G4VFastSimulationModel *fastSimulationModel)
G4bool HasRegion(const G4String &regionName)