Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
G4VisCommandGeometryRestore Class Reference

#include <G4VisCommandsGeometry.hh>

Inheritance diagram for G4VisCommandGeometryRestore:
G4VVisCommandGeometry G4VVisCommand G4UImessenger

Public Member Functions

 G4VisCommandGeometryRestore ()
 
virtual ~G4VisCommandGeometryRestore ()
 
G4String GetCurrentValue (G4UIcommand *command)
 
void SetNewValue (G4UIcommand *command, G4String newValue)
 
- Public Member Functions inherited from G4VVisCommandGeometry
virtual ~G4VVisCommandGeometry ()
 
- Public Member Functions inherited from G4VVisCommand
 G4VVisCommand ()
 
virtual ~G4VVisCommand ()
 
- Public Member Functions inherited from G4UImessenger
 G4UImessenger ()
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
G4bool operator== (const G4UImessenger &messenger) const
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VVisCommand
static void SetVisManager (G4VisManager *)
 
- Protected Types inherited from G4VVisCommandGeometry
typedef std::map
< G4LogicalVolume *, const
G4VisAttributes * >
::const_iterator 
VisAttsMapIterator
 
- Protected Member Functions inherited from G4VVisCommand
void UpdateVisManagerScene (const G4String &sceneName="")
 
- Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
 
G4String DtoS (G4double a)
 
G4String BtoS (G4bool b)
 
G4int StoI (G4String s)
 
G4double StoD (G4String s)
 
G4bool StoB (G4String s)
 
void AddUIcommand (G4UIcommand *newCommand)
 
void CreateDirectory (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
template<typename T >
T * CreateCommand (const G4String &cname, const G4String &dsc)
 
- Static Protected Member Functions inherited from G4VVisCommand
static G4String ConvertToString (G4double x, G4double y, const char *unitName)
 
static void ConvertToDoublePair (const G4String &paramString, G4double &xval, G4double &yval)
 
- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir
 
G4String baseDirName
 
- Static Protected Attributes inherited from G4VVisCommandGeometry
static std::map
< G4LogicalVolume *, const
G4VisAttributes * > 
fVisAttsMap
 
- Static Protected Attributes inherited from G4VVisCommand
static G4VisManagerfpVisManager = 0
 
static G4Colour fCurrentColour = G4Colour::White()
 
static G4Colour fCurrentTextColour = G4Colour::Blue()
 
static G4Text::Layout fCurrentTextLayout = G4Text::left
 
static G4double fCurrentLineWidth = 1.
 
static
G4ModelingParameters::PVNameCopyNoPath 
fCurrentTouchablePath
 

Detailed Description

Definition at line 64 of file G4VisCommandsGeometry.hh.

Constructor & Destructor Documentation

G4VisCommandGeometryRestore::G4VisCommandGeometryRestore ( )

Definition at line 95 of file G4VisCommandsGeometry.cc.

96 {
97  G4bool omitable;
98  fpCommand = new G4UIcmdWithAString("/vis/geometry/restore", this);
99  fpCommand -> SetGuidance("Restores vis attributes of logical volume(s).");
100  fpCommand -> SetParameterName("logical-volume-name", omitable = true);
101  fpCommand -> SetDefaultValue("all");
102 }
bool G4bool
Definition: G4Types.hh:79
G4VisCommandGeometryRestore::~G4VisCommandGeometryRestore ( )
virtual

Definition at line 104 of file G4VisCommandsGeometry.cc.

105 {
106  delete fpCommand;
107 }

Member Function Documentation

G4String G4VisCommandGeometryRestore::GetCurrentValue ( G4UIcommand command)
virtual

Reimplemented from G4UImessenger.

Definition at line 109 of file G4VisCommandsGeometry.cc.

110 {
111  return "";
112 }
void G4VisCommandGeometryRestore::SetNewValue ( G4UIcommand command,
G4String  newValue 
)
virtual

Reimplemented from G4UImessenger.

Definition at line 114 of file G4VisCommandsGeometry.cc.

References G4UImanager::ApplyCommand(), G4VisManager::confirmations, G4VisManager::errors, G4VVisCommand::fpVisManager, G4VVisCommandGeometry::fVisAttsMap, G4cout, G4endl, G4VisManager::GetCurrentViewer(), G4LogicalVolumeStore::GetInstance(), G4LogicalVolume::GetName(), G4UImanager::GetUIpointer(), G4VisManager::GetVerbosity(), G4LogicalVolume::GetVisAttributes(), and G4LogicalVolume::SetVisAttributes().

115 {
118  size_t nLV = pLVStore->size();
119  size_t iLV;
120  G4LogicalVolume* pLV = 0;
121  G4bool found = false;
122  for (iLV = 0; iLV < nLV; iLV++ ) {
123  pLV = (*pLVStore)[iLV];
124  const G4String& logVolName = pLV->GetName();
125  if (logVolName == newValue) found = true;
126  if (newValue == "all" || logVolName == newValue) {
127  VisAttsMapIterator i = fVisAttsMap.find(pLV);
128  if (i != fVisAttsMap.end()) {
129  const G4VisAttributes* newVisAtts = pLV->GetVisAttributes();
130  const G4VisAttributes* oldVisAtts = i->second;
131  pLV->SetVisAttributes(oldVisAtts);
132  if (verbosity >= G4VisManager::confirmations) {
133  G4cout << "\nLogical Volume \"" << pLV->GetName()
134  << "\": re-setting vis attributes:\nwas: " << *newVisAtts
135  << "\nnow: " << *oldVisAtts
136  << G4endl;
137  }
138  }
139  }
140  }
141  if (newValue != "all" && !found) {
142  if (verbosity >= G4VisManager::errors) {
143  G4cout << "ERROR: Logical volume \"" << newValue
144  << "\" not found in logical volume store." << G4endl;
145  }
146  return;
147  }
149  G4UImanager::GetUIpointer()->ApplyCommand("/vis/viewer/rebuild");
150  }
151 }
G4String GetName() const
std::map< G4LogicalVolume *, const G4VisAttributes * >::const_iterator VisAttsMapIterator
static G4UImanager * GetUIpointer()
Definition: G4UImanager.cc:58
G4GLOB_DLL std::ostream G4cout
bool G4bool
Definition: G4Types.hh:79
const G4VisAttributes * GetVisAttributes() const
static G4LogicalVolumeStore * GetInstance()
static std::map< G4LogicalVolume *, const G4VisAttributes * > fVisAttsMap
static Verbosity GetVerbosity()
#define G4endl
Definition: G4ios.hh:61
G4VViewer * GetCurrentViewer() const
void SetVisAttributes(const G4VisAttributes *pVA)
G4int ApplyCommand(const char *aCommand)
Definition: G4UImanager.cc:419
static G4VisManager * fpVisManager

The documentation for this class was generated from the following files: