#include <G4VisCommandsViewer.hh>
Inheritance diagram for G4VisCommandViewerUpdate:
Public Member Functions | |
G4VisCommandViewerUpdate () | |
virtual | ~G4VisCommandViewerUpdate () |
G4String | GetCurrentValue (G4UIcommand *command) |
void | SetNewValue (G4UIcommand *command, G4String newValue) |
Definition at line 287 of file G4VisCommandsViewer.hh.
G4VisCommandViewerUpdate::G4VisCommandViewerUpdate | ( | ) |
Definition at line 1550 of file G4VisCommandsViewer.cc.
01550 { 01551 G4bool omitable, currentAsDefault; 01552 fpCommand = new G4UIcmdWithAString ("/vis/viewer/update", this); 01553 fpCommand -> SetGuidance 01554 ("Triggers graphical database post-processing for viewers" 01555 "\nusing that technique."); 01556 fpCommand -> SetGuidance 01557 ("For such viewers the view only becomes visible with this command." 01558 "\nBy default, acts on current viewer. \"/vis/viewer/list\"" 01559 "\nto see possible viewers. Viewer becomes current."); 01560 fpCommand -> SetParameterName ("viewer-name", 01561 omitable = true, 01562 currentAsDefault = true); 01563 }
G4VisCommandViewerUpdate::~G4VisCommandViewerUpdate | ( | ) | [virtual] |
G4String G4VisCommandViewerUpdate::GetCurrentValue | ( | G4UIcommand * | command | ) | [virtual] |
Reimplemented from G4UImessenger.
Definition at line 1569 of file G4VisCommandsViewer.cc.
References G4VVisCommand::fpVisManager.
01569 { 01570 G4VViewer* viewer = fpVisManager -> GetCurrentViewer (); 01571 if (viewer) { 01572 return viewer -> GetName (); 01573 } 01574 else { 01575 return "none"; 01576 } 01577 }
void G4VisCommandViewerUpdate::SetNewValue | ( | G4UIcommand * | command, | |
G4String | newValue | |||
) | [virtual] |
Reimplemented from G4UImessenger.
Definition at line 1579 of file G4VisCommandsViewer.cc.
References G4VisManager::confirmations, G4VisManager::errors, G4VVisCommand::fpVisManager, G4cout, G4endl, G4VSceneHandler::GetName(), G4VSceneHandler::GetScene(), G4VViewer::GetSceneHandler(), and G4VisManager::GetVerbosity().
01579 { 01580 01581 G4VisManager::Verbosity verbosity = fpVisManager->GetVerbosity(); 01582 01583 G4String& updateName = newValue; 01584 01585 G4VViewer* viewer = fpVisManager -> GetViewer (updateName); 01586 if (!viewer) { 01587 if (verbosity >= G4VisManager::errors) { 01588 G4cout << 01589 "ERROR: G4VisCommandsViewerUpdate::SetNewValue: no current viewer." 01590 << G4endl; 01591 } 01592 return; 01593 } 01594 01595 G4VSceneHandler* sceneHandler = viewer->GetSceneHandler(); 01596 if (!sceneHandler) { 01597 if (verbosity >= G4VisManager::errors) { 01598 G4cout << "ERROR: Viewer \"" << updateName << "\"" << 01599 " has no scene handler - report serious bug." 01600 << G4endl; 01601 } 01602 return; 01603 } 01604 01605 G4Scene* scene = sceneHandler->GetScene(); 01606 if (!scene) { 01607 if (verbosity >= G4VisManager::confirmations) { 01608 G4cout << "NOTE: SceneHandler \"" << sceneHandler->GetName() 01609 << "\", to which viewer \"" << updateName << "\"" << 01610 "\n is attached, has no scene - \"/vis/scene/create\" and" 01611 " \"/vis/sceneHandler/attach\"" 01612 "\n (or use compound command \"/vis/drawVolume\")." 01613 << G4endl; 01614 } 01615 return; 01616 } 01617 01618 if (verbosity >= G4VisManager::confirmations) { 01619 G4cout << "Viewer \"" << viewer -> GetName () << "\""; 01620 G4cout << " post-processing triggered." << G4endl; 01621 } 01622 viewer -> ShowView (); 01623 // Assume future need to "refresh" transients... 01624 sceneHandler -> SetMarkForClearingTransientStore(true); 01625 }