G4VisCommandViewerUpdate Class Reference

#include <G4VisCommandsViewer.hh>

Inheritance diagram for G4VisCommandViewerUpdate:

G4VVisCommandViewer G4VVisCommand G4UImessenger

Public Member Functions

 G4VisCommandViewerUpdate ()
virtual ~G4VisCommandViewerUpdate ()
G4String GetCurrentValue (G4UIcommand *command)
void SetNewValue (G4UIcommand *command, G4String newValue)

Detailed Description

Definition at line 287 of file G4VisCommandsViewer.hh.


Constructor & Destructor Documentation

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]

Definition at line 1565 of file G4VisCommandsViewer.cc.

01565                                                      {
01566   delete fpCommand;
01567 }


Member Function Documentation

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 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:53:47 2013 for Geant4 by  doxygen 1.4.7