Geant4 11.3.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4VisCommandReviewPlots Class Reference

#include <G4VisCommands.hh>

+ Inheritance diagram for G4VisCommandReviewPlots:

Public Member Functions

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

Additional Inherited Members

- Static Public Member Functions inherited from G4VVisCommand
static G4VisManagerGetVisManager ()
 
static void SetVisManager (G4VisManager *pVisManager)
 
static const G4ColourGetCurrentTextColour ()
 
- Protected Member Functions inherited from G4VVisCommand
void SetViewParameters (G4VViewer *viewer, const G4ViewParameters &viewParams)
 
void RefreshIfRequired (G4VViewer *viewer)
 
void InterpolateViews (G4VViewer *currentViewer, const std::vector< G4ViewParameters > &viewVector, const G4int nInterpolationPoints=50, const G4int waitTimePerPointmilliseconds=20, const G4String &exportString="")
 
void InterpolateToNewView (G4VViewer *currentViewer, const G4ViewParameters &oldVP, const G4ViewParameters &newVP, const G4int nInterpolationPoints=50, const G4int waitTimePerPointmilliseconds=20, const G4String &exportString="")
 
void Twinkle (G4VViewer *currentViewer, const G4ViewParameters &baseVP, const std::vector< std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > > &paths)
 
const G4StringConvertToColourGuidance ()
 
void ConvertToColour (G4Colour &colour, const G4String &redOrString, G4double green, G4double blue, G4double opacity)
 
G4bool ProvideValueOfUnit (const G4String &where, const G4String &unit, const G4String &category, G4double &value)
 
void CopyCameraParameters (G4ViewParameters &target, const G4ViewParameters &from)
 
void CheckSceneAndNotifyHandlers (G4Scene *=nullptr)
 
G4bool CheckView ()
 
void G4VisCommandsSceneAddUnsuccessful (G4VisManager::Verbosity verbosity)
 
void CopyGuidanceFrom (const G4UIcommand *fromCmd, G4UIcommand *toCmd, G4int startLine=0)
 
void CopyParametersFrom (const G4UIcommand *fromCmd, G4UIcommand *toCmd)
 
void DrawExtent (const G4VisExtent &)
 
- Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
 
G4String LtoS (G4long l)
 
G4String DtoS (G4double a)
 
G4String BtoS (G4bool b)
 
G4int StoI (const G4String &s)
 
G4long StoL (const G4String &s)
 
G4double StoD (const G4String &s)
 
G4bool StoB (const 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 G4bool ConvertToDoublePair (const G4String &paramString, G4double &xval, G4double &yval)
 
- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir = nullptr
 
G4String baseDirName = ""
 
G4bool commandsShouldBeInMaster = false
 
- Static Protected Attributes inherited from G4VVisCommand
static G4VisManagerfpVisManager = nullptr
 
static G4int fCurrentArrow3DLineSegmentsPerCircle = 6
 
static G4Colour fCurrentColour = G4Colour::White()
 
static G4double fCurrentLineWidth = 1.
 
static G4Colour fCurrentTextColour = G4Colour::Blue()
 
static G4Text::Layout fCurrentTextLayout = G4Text::left
 
static G4double fCurrentTextSize = 12.
 
static G4PhysicalVolumeModel::TouchableProperties fCurrentTouchableProperties
 
static G4VisExtent fCurrentExtentForField
 
static std::vector< G4PhysicalVolumesSearchScene::FindingsfCurrrentPVFindingsForField
 
static G4bool fThereWasAViewer = false
 
static G4ViewParameters fExistingVP
 
static G4SceneTreeItem fExistingSceneTree
 

Detailed Description

Definition at line 123 of file G4VisCommands.hh.

Constructor & Destructor Documentation

◆ G4VisCommandReviewPlots()

G4VisCommandReviewPlots::G4VisCommandReviewPlots ( )

Definition at line 437 of file G4VisCommands.cc.

438{
439 fpCommand = new G4UIcmdWithoutParameter("/vis/reviewPlots", this);
440 fpCommand -> SetGuidance("Review plots.");
441 fpCommand -> SetGuidance
442 ("Each plot is drawn, one by one, to the current viewer. After each"
443 "\nplot the session is paused. The user may issue any allowed command."
444 "\nThen enter \"cont[inue]\" to continue to the next plot."
445 "\nUseful commands might be:"
446 "\n \"/vis/tsg/export\" to get hard copy."
447 "\n \"/vis/abortReviewPlots\", then \"cont[inue]\", to abort.");
448}

◆ ~G4VisCommandReviewPlots()

G4VisCommandReviewPlots::~G4VisCommandReviewPlots ( )
virtual

Definition at line 450 of file G4VisCommands.cc.

451{
452 delete fpCommand;
453}

Member Function Documentation

◆ GetCurrentValue()

G4String G4VisCommandReviewPlots::GetCurrentValue ( G4UIcommand * command)
virtual

Reimplemented from G4UImessenger.

Definition at line 455 of file G4VisCommands.cc.

456{
457 return "";
458}

◆ SetNewValue()

void G4VisCommandReviewPlots::SetNewValue ( G4UIcommand * command,
G4String newValue )
virtual

Reimplemented from G4UImessenger.

Definition at line 499 of file G4VisCommands.cc.

500{
501 if (fpVisManager->GetReviewingPlots()) {
502 G4warn <<
503 "\"/vis/reviewPlots\" not allowed within an already started review."
504 "\n No action taken."
505 << G4endl;
506 return;
507 }
508
509 auto verbosity = fpVisManager->GetVerbosity();
510
511 auto currentViewer = fpVisManager->GetCurrentViewer();
512 if (!currentViewer) {
513 if (verbosity >= G4VisManager::errors) {
514 G4warn <<
515 "ERROR: No current viewer - \"/vis/viewer/list\" to see possibilities."
516 << G4endl;
517 }
518 return;
519 }
520
521 if (currentViewer->GetName().find("TOOLSSG") == std::string::npos) {
522 G4warn <<
523 "WARNING: Current viewer not able to draw plots."
524 "\n Try \"/vis/open TSG\", then \"/vis/reviewPlots\" again."
525 << G4endl;
526 return;
527 }
528
529 G4Scene* pScene = fpVisManager->GetCurrentScene();
530 if (!pScene) {
531 if (verbosity >= G4VisManager::errors) {
532 G4warn << "ERROR: No current scene. Please create one." << G4endl;
533 }
534 return;
535 }
536
537 auto ui = G4UImanager::GetUIpointer();
538
539 auto keepControlVerbose = ui->GetVerboseLevel();
540 ui->SetVerboseLevel(0);
541 auto keepVisVerbose = fpVisManager->GetVerbosity();
542 fpVisManager->SetVerboseLevel(G4VisManager::errors);
543 auto keepEnable = fpVisManager->IsEnabled();
544 fpVisManager->Enable();
545 fpVisManager->SetReviewingPlots(true);
546
547 if (ReviewPlots<tools::histo::h1d>("h1")) goto finish; // Aborting?
548 if (ReviewPlots<tools::histo::h2d>("h2")) goto finish; // Aborting?
549
550finish:
551 fpVisManager->SetReviewingPlots(false);
552 if (!keepEnable) fpVisManager->Disable();
553 fpVisManager->SetVerboseLevel(keepVisVerbose);
554 ui->SetVerboseLevel(keepControlVerbose);
555}
#define G4warn
Definition G4Scene.cc:41
#define G4endl
Definition G4ios.hh:67
static G4UImanager * GetUIpointer()
static G4VisManager * fpVisManager

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