Geant4-11
Public Types | Public Member Functions | Private Member Functions | Private Attributes
G4VisModelManager< Model > Class Template Reference

#include <G4VisModelManager.hh>

Public Types

typedef G4VModelFactory< Model > Factory
 
typedef G4VisListManager< Model > List
 

Public Member Functions

const Model * Current () const
 
const std::vector< Factory * > & FactoryList () const
 
 G4VisModelManager (const G4String &)
 
const ListListManager () const
 
G4String Placement () const
 
void Print (std::ostream &ostr, const G4String &name="") const
 
void Register (Factory *)
 
void Register (Model *)
 
void SetCurrent (const G4String &)
 
virtual ~G4VisModelManager ()
 

Private Member Functions

 G4VisModelManager (const G4VisModelManager &)
 
G4VisModelManageroperator= (const G4VisModelManager &)
 

Private Attributes

std::vector< Factory * > fFactoryList
 
std::vector< G4UImessenger * > fMessengerList
 
G4String fPlacement
 
ListfpModelList
 

Detailed Description

template<typename Model>
class G4VisModelManager< Model >

Definition at line 42 of file G4VisModelManager.hh.

Member Typedef Documentation

◆ Factory

template<typename Model >
typedef G4VModelFactory<Model> G4VisModelManager< Model >::Factory

Definition at line 48 of file G4VisModelManager.hh.

◆ List

template<typename Model >
typedef G4VisListManager<Model> G4VisModelManager< Model >::List

Definition at line 47 of file G4VisModelManager.hh.

Constructor & Destructor Documentation

◆ G4VisModelManager() [1/2]

template<typename Model >
G4VisModelManager< Model >::G4VisModelManager ( const G4String placement)

Definition at line 87 of file G4VisModelManager.hh.

88 :fPlacement(placement)
89 ,fpModelList(new List)
90{}
G4VisListManager< Model > List

◆ ~G4VisModelManager()

template<typename Model >
G4VisModelManager< Model >::~G4VisModelManager
virtual

Definition at line 93 of file G4VisModelManager.hh.

94{
95 // Cleanup
96 std::vector<G4UImessenger*>::iterator iterMsgr = fMessengerList.begin();
97
98 while (iterMsgr != fMessengerList.end()) {
99 delete *iterMsgr;
100 iterMsgr++;
101 }
102
103 typename std::vector<Factory*>::iterator iterFactory = fFactoryList.begin();
104
105 while (iterFactory != fFactoryList.end()) {
106 delete *iterFactory;
107 iterFactory++;
108 }
109
110 delete fpModelList;
111}
std::vector< Factory * > fFactoryList
std::vector< G4UImessenger * > fMessengerList

◆ G4VisModelManager() [2/2]

template<typename Model >
G4VisModelManager< Model >::G4VisModelManager ( const G4VisModelManager< Model > &  )
private

Member Function Documentation

◆ Current()

template<typename Model >
const Model * G4VisModelManager< Model >::Current

Definition at line 140 of file G4VisModelManager.hh.

141{
142 return fpModelList->Current();
143}
const T * Current() const

Referenced by G4VisManager::CurrentTrajDrawModel().

◆ FactoryList()

template<typename Model >
const std::vector< G4VModelFactory< Model > * > & G4VisModelManager< Model >::FactoryList

Definition at line 182 of file G4VisModelManager.hh.

183{
184 return fFactoryList;
185}

Referenced by G4VisManager::PrintAvailableModels().

◆ ListManager()

template<typename Model >
const G4VisListManager< Model > * G4VisModelManager< Model >::ListManager

Definition at line 175 of file G4VisModelManager.hh.

176{
177 return fpModelList;
178}

Referenced by G4VisManager::PrintAvailableModels().

◆ operator=()

template<typename Model >
G4VisModelManager & G4VisModelManager< Model >::operator= ( const G4VisModelManager< Model > &  )
private

◆ Placement()

template<typename Model >
G4String G4VisModelManager< Model >::Placement

Definition at line 147 of file G4VisModelManager.hh.

148{
149 return fPlacement;
150}

Referenced by G4VisManager::RegisterMessengers().

◆ Print()

template<typename Model >
void G4VisModelManager< Model >::Print ( std::ostream &  ostr,
const G4String name = "" 
) const

Definition at line 154 of file G4VisModelManager.hh.

155{
156 ostr<<"Registered model factories:"<<std::endl;
157
158 typename std::vector<Factory*>::const_iterator iter = fFactoryList.begin();
159
160 while (iter != fFactoryList.end()) {
161 (*iter)->Print(ostr);
162 iter++;
163 }
164
165 if (0 == fFactoryList.size()) ostr<<" None"<<std::endl;
166
167 ostr<<std::endl;
168 ostr<<"Registered models: "<<std::endl;
169
170 fpModelList->Print(ostr, name);
171}
void Print(std::ostream &ostr, const G4String &name="") const
const char * name(G4int ptype)

References G4InuclParticleNames::name().

◆ Register() [1/2]

template<typename Model >
void G4VisModelManager< Model >::Register ( Factory factory)

Definition at line 122 of file G4VisModelManager.hh.

123{
124 // Assume ownership
125 fFactoryList.push_back(factory);
126
127 // Generate "create" command for this factory
129}
factory
Definition: test.py:55

References test::factory.

◆ Register() [2/2]

template<typename Model >
void G4VisModelManager< Model >::Register ( Model *  model)

◆ SetCurrent()

template<typename Model >
void G4VisModelManager< Model >::SetCurrent ( const G4String model)

Definition at line 133 of file G4VisModelManager.hh.

134{
135 fpModelList->SetCurrent(model);
136}
void SetCurrent(const G4String &name)

Referenced by G4VisManager::SelectTrajectoryModel().

Field Documentation

◆ fFactoryList

template<typename Model >
std::vector<Factory*> G4VisModelManager< Model >::fFactoryList
private

Definition at line 81 of file G4VisModelManager.hh.

◆ fMessengerList

template<typename Model >
std::vector<G4UImessenger*> G4VisModelManager< Model >::fMessengerList
private

Definition at line 82 of file G4VisModelManager.hh.

◆ fPlacement

template<typename Model >
G4String G4VisModelManager< Model >::fPlacement
private

Definition at line 79 of file G4VisModelManager.hh.

◆ fpModelList

template<typename Model >
List* G4VisModelManager< Model >::fpModelList
private

Definition at line 80 of file G4VisModelManager.hh.


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