Geant4 VMC Version 6.7
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
TG4ModelConfigurationManager.h
Go to the documentation of this file.
1#ifndef TG4_MODEL_CONFIGURATION_MANAGER_H
2#define TG4_MODEL_CONFIGURATION_MANAGER_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 "TG4Verbose.h"
19
20#include <globals.hh>
21
22#include <vector>
23
26
31
33{
34 public:
35 typedef std::vector<TG4ModelConfiguration*> ModelConfigurationVector;
36
37 public:
39 const G4String& name, const G4String& availableModels = "");
41
42 // methods
43 void CreateRegions();
44
45 // set methods
46 void SetModel(const G4String& modelName);
47 void SetModelParticles(const G4String& modelName, const G4String& particles);
48 void SetModelExcludedParticles(const G4String& modelName, const G4String& particles);
49 void SetModelRegions(const G4String& modelName, const G4String& regionsMedia);
51 const G4String& modelName, const G4String& regionMedium);
52
53 // get methods
54 G4String GetName() const;
55 G4String GetAvailableModels() const;
57 const G4String& modelName, G4bool warn = true) const;
59
60 protected:
61 // methods
62 void SetRegionsNames();
63
64 private:
69 const TG4ModelConfigurationManager& right);
70
71 // data members
72
75
77 G4String fName;
78
81
84
87};
88
89// inline functions
90
92{
94 return fName;
95}
96
98{
100 return fAvailableModels;
101}
102
109
110#endif // TG4_MODEL_CONFIGURATION_MANAGER_H
Definition of the TG4Verbose class.
void SetModelRegions(const G4String &modelName, const G4String &regionsMedia)
G4String fName
The associated physics builder name.
void SetModel(const G4String &modelName)
std::vector< TG4ModelConfiguration * > ModelConfigurationVector
TG4ModelConfiguration * GetModelConfiguration(const G4String &modelName, G4bool warn=true) const
G4bool fCreateRegionsDone
Info whether regions were constructed.
TG4ModelConfigurationManager & operator=(const TG4ModelConfigurationManager &right)
Not implemented.
void SetModelParticles(const G4String &modelName, const G4String &particles)
TG4ModelConfigurationMessenger * fMessenger
Messenger.
G4String fAvailableModels
List of available models.
void SetModelExcludedParticles(const G4String &modelName, const G4String &particles)
TG4ModelConfigurationManager(const TG4ModelConfigurationManager &right)
Not implemented.
void SetOneModelRegion(const G4String &modelName, const G4String &regionMedium)
const ModelConfigurationVector & GetVector() const
TG4ModelConfigurationManager(const G4String &name, const G4String &availableModels="")
ModelConfigurationVector fVector
Vector of registered model configurations.
Messenger class that defines commands for the special physica models.
A helper class to hold a configuration of a special physics model.
TG4Verbose(const G4String &cmdName)