#include <G4VisCommandsViewer.hh>
Inheritance diagram for G4VisCommandViewerList:
Public Member Functions | |
G4VisCommandViewerList () | |
virtual | ~G4VisCommandViewerList () |
G4String | GetCurrentValue (G4UIcommand *command) |
void | SetNewValue (G4UIcommand *command, G4String newValue) |
Definition at line 185 of file G4VisCommandsViewer.hh.
G4VisCommandViewerList::G4VisCommandViewerList | ( | ) |
Definition at line 912 of file G4VisCommandsViewer.cc.
00912 { 00913 G4bool omitable; 00914 fpCommand = new G4UIcommand ("/vis/viewer/list", this); 00915 fpCommand -> SetGuidance ("Lists viewers(s)."); 00916 fpCommand -> SetGuidance 00917 ("See \"/vis/verbose\" for definition of verbosity."); 00918 G4UIparameter* parameter; 00919 parameter = new G4UIparameter("viewer-name", 's', 00920 omitable = true); 00921 parameter -> SetDefaultValue ("all"); 00922 fpCommand -> SetParameter (parameter); 00923 parameter = new G4UIparameter ("verbosity", 's', 00924 omitable = true); 00925 parameter -> SetDefaultValue ("warnings"); 00926 fpCommand -> SetParameter (parameter); 00927 }
G4VisCommandViewerList::~G4VisCommandViewerList | ( | ) | [virtual] |
G4String G4VisCommandViewerList::GetCurrentValue | ( | G4UIcommand * | command | ) | [virtual] |
void G4VisCommandViewerList::SetNewValue | ( | G4UIcommand * | command, | |
G4String | newValue | |||
) | [virtual] |
Reimplemented from G4UImessenger.
Definition at line 937 of file G4VisCommandsViewer.cc.
References G4VVisCommand::fpVisManager, G4cout, G4endl, G4VisManager::GetVerbosityValue(), and G4VisManager::parameters.
00937 { 00938 G4String name, verbosityString; 00939 std::istringstream is (newValue); 00940 is >> name >> verbosityString; 00941 G4String shortName = fpVisManager -> ViewerShortName (name); 00942 G4VisManager::Verbosity verbosity = 00943 fpVisManager->GetVerbosityValue(verbosityString); 00944 00945 const G4VViewer* currentViewer = fpVisManager -> GetCurrentViewer (); 00946 G4String currentViewerShortName; 00947 if (currentViewer) { 00948 currentViewerShortName = currentViewer -> GetShortName (); 00949 } 00950 else { 00951 currentViewerShortName = "none"; 00952 } 00953 00954 const G4SceneHandlerList& sceneHandlerList = 00955 fpVisManager -> GetAvailableSceneHandlers (); 00956 G4int nHandlers = sceneHandlerList.size (); 00957 G4bool found = false; 00958 G4bool foundCurrent = false; 00959 for (int iHandler = 0; iHandler < nHandlers; iHandler++) { 00960 G4VSceneHandler* sceneHandler = sceneHandlerList [iHandler]; 00961 const G4ViewerList& viewerList = sceneHandler -> GetViewerList (); 00962 G4cout << "Scene handler \"" << sceneHandler -> GetName (); 00963 const G4Scene* pScene = sceneHandler -> GetScene (); 00964 if (pScene) { 00965 G4cout << "\", scene \"" << pScene -> GetName () << "\":"; 00966 } 00967 G4int nViewers = viewerList.size (); 00968 if (nViewers == 0) { 00969 G4cout << "\n No viewers for this scene handler." << G4endl; 00970 } 00971 else { 00972 for (int iViewer = 0; iViewer < nViewers; iViewer++) { 00973 const G4VViewer* thisViewer = viewerList [iViewer]; 00974 G4String thisName = thisViewer -> GetName (); 00975 G4String thisShortName = thisViewer -> GetShortName (); 00976 if (name != "all") { 00977 if (thisShortName != shortName) continue; 00978 } 00979 found = true; 00980 G4cout << "\n "; 00981 if (thisShortName == currentViewerShortName) { 00982 foundCurrent = true; 00983 G4cout << "(current)"; 00984 } 00985 else { 00986 G4cout << " "; 00987 } 00988 G4cout << " viewer \"" << thisName << "\""; 00989 if (verbosity >= G4VisManager::parameters) { 00990 G4cout << "\n " << *thisViewer; 00991 } 00992 } 00993 } 00994 G4cout << G4endl; 00995 } 00996 00997 if (!foundCurrent) { 00998 G4cout << "No valid current viewer - please create or select one." 00999 << G4endl; 01000 } 01001 01002 if (!found) { 01003 G4cout << "No viewers"; 01004 if (name != "all") { 01005 G4cout << " of name \"" << name << "\""; 01006 } 01007 G4cout << " found." << G4endl; 01008 } 01009 }