32 #ifndef G4VISMODELMANAGER_HH
33 #define G4VISMODELMANAGER_HH
41 template <
typename Model>
86 template <
typename Model>
88 :fPlacement(placement)
89 ,fpModelList(new
List)
92 template <
typename Model>
96 std::vector<G4UImessenger*>::iterator iterMsgr = fMessengerList.begin();
98 while (iterMsgr != fMessengerList.end()) {
103 typename std::vector<Factory*>::iterator iterFactory = fFactoryList.begin();
105 while (iterFactory != fFactoryList.end()) {
113 template <
typename Model>
117 fpModelList->Register(model);
120 template <
typename Model>
125 fFactoryList.push_back(factory);
131 template <
typename Model>
135 fpModelList->SetCurrent(model);
138 template <
typename Model>
142 return fpModelList->Current();
145 template <
typename Model>
152 template <
typename Model>
156 ostr<<
"Registered model factories:"<<std::endl;
158 typename std::vector<Factory*>::const_iterator iter = fFactoryList.begin();
160 while (iter != fFactoryList.end()) {
161 (*iter)->Print(ostr);
165 if (0 == fFactoryList.size()) ostr<<
" None"<<std::endl;
168 ostr<<
"Registered models: "<<std::endl;
170 fpModelList->Print(ostr, name);
173 template <
typename Model>
180 template <
typename Model>
181 const std::vector<G4VModelFactory<Model>*>&