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

#include <G4VisCommandsCompound.hh>

Inheritance diagram for G4VisCommandOpen:
G4VVisCommand G4UImessenger

Public Member Functions

 G4VisCommandOpen ()
 
virtual ~G4VisCommandOpen ()
 
void SetNewValue (G4UIcommand *command, G4String newValue)
 
- 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 ()
 
virtual G4String GetCurrentValue (G4UIcommand *command)
 
G4bool operator== (const G4UImessenger &messenger) const
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VVisCommand
static void SetVisManager (G4VisManager *)
 
- 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 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 69 of file G4VisCommandsCompound.hh.

Constructor & Destructor Documentation

G4VisCommandOpen::G4VisCommandOpen ( )

Definition at line 232 of file G4VisCommandsCompound.cc.

References G4VVisCommand::fpVisManager, G4VisManager::GetAvailableGraphicsSystems(), G4String::isNull(), G4UIparameter::SetDefaultValue(), G4UIparameter::SetGuidance(), G4UIcommand::SetGuidance(), G4UIcommand::SetParameter(), G4UIparameter::SetParameterCandidates(), and G4String::strip().

232  {
233  G4bool omitable;
234  fpCommand = new G4UIcommand("/vis/open", this);
235  fpCommand->SetGuidance
236  ("Creates a scene handler ready for drawing.");
237  fpCommand->SetGuidance
238  ("The scene handler becomes current (the name is auto-generated).");
239  G4UIparameter* parameter;
240  parameter = new G4UIparameter("graphics-system-name", 's', omitable = false);
241  const G4GraphicsSystemList& gslist =
243  G4String candidates;
244  for (size_t igslist = 0; igslist < gslist.size(); igslist++) {
245  const G4String& name = gslist[igslist]->GetName();
246  const G4String& nickname = gslist[igslist]->GetNickname();
247  if (nickname.isNull()) {
248  candidates += name;
249  }
250  else {
251  candidates += nickname;
252  }
253  candidates += " ";
254  }
255  candidates = candidates.strip();
256  parameter->SetParameterCandidates(candidates);
257  fpCommand->SetParameter(parameter);
258  parameter = new G4UIparameter("window-size-hint", 's', omitable = true);
259  parameter->SetGuidance
260  ("integer (pixels) for square window placed by window manager or"
261  " X-Windows-type geometry string, e.g. 600x600-100+100");
262  parameter->SetDefaultValue("600");
263  fpCommand->SetParameter(parameter);
264 }
void SetParameter(G4UIparameter *const newParameter)
Definition: G4UIcommand.hh:152
G4String strip(G4int strip_Type=trailing, char c=' ')
void SetParameterCandidates(const char *theString)
void SetDefaultValue(const char *theDefaultValue)
const XML_Char * name
bool G4bool
Definition: G4Types.hh:79
void SetGuidance(const char *aGuidance)
Definition: G4UIcommand.hh:161
void SetGuidance(const char *theGuidance)
const G4GraphicsSystemList & GetAvailableGraphicsSystems()
G4bool isNull() const
static G4VisManager * fpVisManager
G4VisCommandOpen::~G4VisCommandOpen ( )
virtual

Definition at line 266 of file G4VisCommandsCompound.cc.

266  {
267  delete fpCommand;
268 }

Member Function Documentation

void G4VisCommandOpen::SetNewValue ( G4UIcommand command,
G4String  newValue 
)
virtual

Reimplemented from G4UImessenger.

Definition at line 270 of file G4VisCommandsCompound.cc.

References G4UImanager::ApplyCommand(), G4VisManager::confirmations, G4VVisCommand::fpVisManager, G4UImanager::GetUIpointer(), G4UImanager::GetVerboseLevel(), G4VisManager::GetVerbosity(), and G4UImanager::SetVerboseLevel().

270  {
271  G4String systemName, windowSizeHint;
272  std::istringstream is(newValue);
273  is >> systemName >> windowSizeHint;
274  G4UImanager* UImanager = G4UImanager::GetUIpointer();
275  G4int keepVerbose = UImanager->GetVerboseLevel();
276  G4int newVerbose(0);
277  if (keepVerbose >= 2 ||
279  newVerbose = 2;
280  UImanager->SetVerboseLevel(newVerbose);
281  UImanager->ApplyCommand(G4String("/vis/sceneHandler/create " + systemName));
282  UImanager->ApplyCommand(G4String("/vis/viewer/create ! ! " + windowSizeHint));
283  UImanager->SetVerboseLevel(keepVerbose);
284 }
G4int GetVerboseLevel() const
Definition: G4UImanager.hh:227
int G4int
Definition: G4Types.hh:78
void SetVerboseLevel(G4int val)
Definition: G4UImanager.hh:225
static G4UImanager * GetUIpointer()
Definition: G4UImanager.cc:58
static Verbosity GetVerbosity()
G4int ApplyCommand(const char *aCommand)
Definition: G4UImanager.cc:419
static G4VisManager * fpVisManager

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