Geant4 examples
Public Member Functions | Private Attributes
ExG4DetectorConstruction01Messenger Class Reference

Messenger class that defines commands for ExG4DetectorConstruction01. More...

#include <Doxymodules_common.h>

Inheritance diagram for ExG4DetectorConstruction01Messenger:
G4UImessenger

List of all members.

Public Member Functions

 ExG4DetectorConstruction01Messenger (ExG4DetectorConstruction01 *)
virtual ~ExG4DetectorConstruction01Messenger ()
virtual void SetNewValue (G4UIcommand *command, G4String newValue)

Private Attributes

ExG4DetectorConstruction01fDetectorConstruction
G4UIdirectoryfTopDirectory
G4UIdirectoryfDirectory
G4UIcmdWithAStringfSetMaterialCmd
G4UIcmdWith3VectorAndUnitfSetDimensionsCmd

Detailed Description

Messenger class that defines commands for ExG4DetectorConstruction01.

It implements commands:

Definition at line 30 of file Doxymodules_common.h.


Constructor & Destructor Documentation

ExG4DetectorConstruction01Messenger::ExG4DetectorConstruction01Messenger ( ExG4DetectorConstruction01 detectorConstruction)

Definition at line 41 of file ExG4DetectorConstruction01Messenger.cc.

 : G4UImessenger(),
   fDetectorConstruction(detectorConstruction),
   fTopDirectory(0),
   fDirectory(0),
   fSetMaterialCmd(0),
   fSetDimensionsCmd(0)
   
{ 
  fTopDirectory = new G4UIdirectory("/ExG4/");
  fTopDirectory->SetGuidance("UI commands of common example classes");
  
  fDirectory = new G4UIdirectory("/ExG4/det/");
  fDirectory->SetGuidance("Detector control");
       
  fSetMaterialCmd 
    = new G4UIcmdWithAString("/ExG4/det/setBoxMaterial",this);
  fSetMaterialCmd->SetGuidance("Select material of the box.");
  fSetMaterialCmd->SetParameterName("BoxMaterial", false);
  fSetMaterialCmd->AvailableForStates(G4State_PreInit,G4State_Idle);

  fSetDimensionsCmd 
    = new G4UIcmdWith3VectorAndUnit("/ExG4/det/setBoxDimensions",this);
  fSetDimensionsCmd->SetGuidance("Set box dimensions (in half lentgh).");
  fSetDimensionsCmd->SetParameterName(
                          "BoxDimensionsHx", "BoxDimensionsHy","BoxDimensionsHz", 
                          false);
  //fSetDimensionsCmd->SetUnitCategory("Length");  
  fSetDimensionsCmd->AvailableForStates(G4State_PreInit);
}
ExG4DetectorConstruction01Messenger::~ExG4DetectorConstruction01Messenger ( ) [virtual]

Definition at line 75 of file ExG4DetectorConstruction01Messenger.cc.

{
  delete fTopDirectory;
  delete fDirectory;
  delete fSetMaterialCmd;
  delete fSetDimensionsCmd;
}

Member Function Documentation

void ExG4DetectorConstruction01Messenger::SetNewValue ( G4UIcommand command,
G4String  newValue 
) [virtual]

Reimplemented from G4UImessenger.

Definition at line 85 of file ExG4DetectorConstruction01Messenger.cc.

{ 
  if( command == fSetMaterialCmd ) { 
    fDetectorConstruction->SetMaterial(newValue);
  }
  else if( command == fSetDimensionsCmd ) { 
    G4ThreeVector newDimensions 
      = fSetDimensionsCmd->GetNew3VectorValue(newValue);
    fDetectorConstruction
      ->SetDimensions(
          newDimensions.x(), newDimensions.y(), newDimensions.z());
  }
}

Member Data Documentation

Definition at line 60 of file ExG4DetectorConstruction01Messenger.hh.

Definition at line 61 of file ExG4DetectorConstruction01Messenger.hh.

Definition at line 62 of file ExG4DetectorConstruction01Messenger.hh.

Definition at line 63 of file ExG4DetectorConstruction01Messenger.hh.

Definition at line 64 of file ExG4DetectorConstruction01Messenger.hh.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines