32#ifndef G4VISFILTERMANAGER_HH
33#define G4VISFILTERMANAGER_HH
86 std::vector<Factory*> fFactoryList;
87 std::vector<Filter*> fFilterList;
88 std::vector<G4UImessenger*> fMessengerList;
94 :fPlacement(placement)
103 std::vector<G4UImessenger*>::iterator iterMsgr = fMessengerList.begin();
105 while (iterMsgr != fMessengerList.end()) {
110 typename std::vector<Factory*>::iterator iterFactory = fFactoryList.begin();
112 while (iterFactory != fFactoryList.end()) {
117 typename std::vector<Filter*>::iterator iterFilter = fFilterList.begin();
119 while (iterFilter != fFilterList.end()) {
129 fFilterList.push_back(filter);
136 fFactoryList.push_back(factory);
145 typename std::vector<Filter*>::const_iterator iter = fFilterList.begin();
148 while (passed && (iter != fFilterList.end())) {
149 passed = (*iter)->Accept(obj);
177 ed <<
"Invalid Filter mode: "<<mode;
179 (
"G4VisFilterManager::SetMode(const G4String& mode)",
"visman0101",
JustWarning, ed);
201 ostr<<
"Registered filter factories:"<<std::endl;
202 typename std::vector<Factory*>::const_iterator iterFactory = fFactoryList.begin();
204 while (iterFactory != fFactoryList.end()) {
205 (*iterFactory)->Print(ostr);
209 if (0 == fFactoryList.size()) ostr<<
" None"<<std::endl;
212 ostr<<
"Registered filters:"<<std::endl;
214 typename std::vector<Filter*>::const_iterator iterFilter = fFilterList.begin();
216 while (iterFilter != fFilterList.end()) {
217 if (!name.isNull()) {
218 if ((*iterFilter)->Name() == name) (*iterFilter)->PrintAll(ostr);
221 (*iterFilter)->PrintAll(ostr);
226 if (0 == fFilterList.size()) ostr<<
" None"<<std::endl;
230const std::vector< G4VFilter<T>* >&
237const std::vector< G4VModelFactory< G4VFilter<T> >* >&
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
void SetMode(const G4String &)
void SetMode(const FilterMode::Mode &)
G4VisFilterManager(const G4String &)
FilterMode::Mode GetMode() const
G4String Placement() const
const std::vector< Filter * > & FilterList() const
G4VModelFactory< Filter > Factory
const std::vector< Factory * > & FactoryList() const
virtual ~G4VisFilterManager()
void Print(std::ostream &ostr, const G4String &name="") const