#include <G4VisFilterManager.hh>
Public Types | |
typedef G4VFilter< T > | Filter |
typedef G4VModelFactory< Filter > | Factory |
Public Member Functions | |
G4VisFilterManager (const G4String &) | |
virtual | ~G4VisFilterManager () |
void | Register (Filter *) |
void | Register (Factory *) |
bool | Accept (const T &) |
G4String | Placement () const |
void | SetMode (const FilterMode::Mode &) |
void | SetMode (const G4String &) |
FilterMode::Mode | GetMode () const |
void | Print (std::ostream &ostr, const G4String &name="") const |
const std::vector< Filter * > & | FilterList () const |
const std::vector< Factory * > & | FactoryList () const |
Definition at line 47 of file G4VisFilterManager.hh.
typedef G4VModelFactory<Filter> G4VisFilterManager< T >::Factory |
Definition at line 58 of file G4VisFilterManager.hh.
typedef G4VFilter<T> G4VisFilterManager< T >::Filter |
Definition at line 57 of file G4VisFilterManager.hh.
G4VisFilterManager< T >::G4VisFilterManager | ( | const G4String & | ) |
Definition at line 94 of file G4VisFilterManager.hh.
References FilterMode::Hard.
00095 :fPlacement(placement) 00096 { 00097 fMode = FilterMode::Hard; 00098 }
G4VisFilterManager< T >::~G4VisFilterManager | ( | ) | [virtual] |
Definition at line 101 of file G4VisFilterManager.hh.
00102 { 00103 // Cleanup 00104 std::vector<G4UImessenger*>::iterator iterMsgr = fMessengerList.begin(); 00105 00106 while (iterMsgr != fMessengerList.end()) { 00107 delete *iterMsgr; 00108 iterMsgr++; 00109 } 00110 00111 typename std::vector<Factory*>::iterator iterFactory = fFactoryList.begin(); 00112 00113 while (iterFactory != fFactoryList.end()) { 00114 delete *iterFactory; 00115 iterFactory++; 00116 } 00117 00118 typename std::vector<Filter*>::iterator iterFilter = fFilterList.begin(); 00119 00120 while (iterFilter != fFilterList.end()) { 00121 delete *iterFilter; 00122 iterFilter++; 00123 } 00124 }
bool G4VisFilterManager< T >::Accept | ( | const T & | ) |
Definition at line 144 of file G4VisFilterManager.hh.
Referenced by G4VisManager::FilterDigi(), G4VisManager::FilterHit(), and G4VisManager::FilterTrajectory().
00145 { 00146 typename std::vector<Filter*>::const_iterator iter = fFilterList.begin(); 00147 bool passed(true); 00148 00149 while (passed && (iter != fFilterList.end())) { 00150 passed = (*iter)->Accept(obj); 00151 iter++; 00152 } 00153 00154 return passed; 00155 }
const std::vector< G4VModelFactory< G4VFilter< T > > * > & G4VisFilterManager< T >::FactoryList | ( | ) | const |
const std::vector< G4VFilter< T > * > & G4VisFilterManager< T >::FilterList | ( | ) | const |
FilterMode::Mode G4VisFilterManager< T >::GetMode | ( | ) | const |
Definition at line 193 of file G4VisFilterManager.hh.
Referenced by G4VisManager::DispatchToModel().
G4String G4VisFilterManager< T >::Placement | ( | ) | const |
Definition at line 159 of file G4VisFilterManager.hh.
Referenced by G4VisManager::RegisterMessengers().
void G4VisFilterManager< T >::Print | ( | std::ostream & | ostr, | |
const G4String & | name = "" | |||
) | const |
Definition at line 200 of file G4VisFilterManager.hh.
References G4String::isNull().
00201 { 00202 ostr<<"Registered filter factories:"<<std::endl; 00203 typename std::vector<Factory*>::const_iterator iterFactory = fFactoryList.begin(); 00204 00205 while (iterFactory != fFactoryList.end()) { 00206 (*iterFactory)->Print(ostr); 00207 iterFactory++; 00208 } 00209 00210 if (0 == fFactoryList.size()) ostr<<" None"<<std::endl; 00211 00212 ostr<<std::endl; 00213 ostr<<"Registered filters:"<<std::endl; 00214 00215 typename std::vector<Filter*>::const_iterator iterFilter = fFilterList.begin(); 00216 00217 while (iterFilter != fFilterList.end()) { 00218 if (!name.isNull()) { 00219 if ((*iterFilter)->Name() == name) (*iterFilter)->PrintAll(ostr); 00220 } 00221 else { 00222 (*iterFilter)->PrintAll(ostr); 00223 } 00224 iterFilter++; 00225 } 00226 00227 if (0 == fFilterList.size()) ostr<<" None"<<std::endl; 00228 }
void G4VisFilterManager< T >::Register | ( | Factory * | ) |
Definition at line 135 of file G4VisFilterManager.hh.
00136 { 00137 fFactoryList.push_back(factory); 00138 00139 fMessengerList.push_back(new G4VisCommandModelCreate<Factory>(factory, fPlacement)); 00140 }
void G4VisFilterManager< T >::Register | ( | Filter * | ) |
Definition at line 128 of file G4VisFilterManager.hh.
Referenced by G4VisManager::RegisterModel(), and G4VisManager::RegisterModelFactory().
void G4VisFilterManager< T >::SetMode | ( | const G4String & | ) |
Definition at line 166 of file G4VisFilterManager.hh.
References G4Exception(), FilterMode::Hard, JustWarning, G4VisFilterManager< T >::SetMode(), FilterMode::Soft, and G4String::toLower().
00167 { 00168 bool result(false); 00169 00170 G4String myMode(mode); 00171 myMode.toLower(); 00172 00173 if (myMode == "soft") {result = true; SetMode(FilterMode::Soft);} 00174 else if (myMode == "hard") {result = true; SetMode(FilterMode::Hard);} 00175 00176 if (!result) { 00177 G4ExceptionDescription ed; 00178 ed << "Invalid Filter mode: "<<mode; 00179 G4Exception 00180 ("G4VisFilterManager::SetMode(const G4String& mode)", "visman0101", JustWarning, ed); 00181 } 00182 }
void G4VisFilterManager< T >::SetMode | ( | const FilterMode::Mode & | ) |
Definition at line 186 of file G4VisFilterManager.hh.
Referenced by G4VisFilterManager< T >::SetMode().