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

#include <G4MaterialScanner.hh>

Public Member Functions

 G4MaterialScanner ()
 
 ~G4MaterialScanner ()
 
void Scan ()
 
void SetEyePosition (const G4ThreeVector &val)
 
G4ThreeVector GetEyePosition () const
 
void SetNTheta (G4int val)
 
G4int GetNTheta () const
 
void SetThetaMin (G4double val)
 
G4double GetThetaMin () const
 
void SetThetaSpan (G4double val)
 
G4double GetThetaSpan () const
 
void SetNPhi (G4int val)
 
G4int GetNPhi () const
 
void SetPhiMin (G4double val)
 
G4double GetPhiMin () const
 
void SetPhiSpan (G4double val)
 
G4double GetPhiSpan () const
 
void SetRegionSensitive (G4bool val=true)
 
G4bool GetRegionSensitive () const
 
G4bool SetRegionName (const G4String &val)
 
G4String GetRegionName () const
 

Detailed Description

Definition at line 54 of file G4MaterialScanner.hh.

Constructor & Destructor Documentation

G4MaterialScanner::G4MaterialScanner ( )

Definition at line 51 of file G4MaterialScanner.cc.

References python.hepunit::deg, and G4EventManager::GetEventManager().

52 {
53  theRayShooter = new G4RayShooter();
54  theMessenger = new G4MatScanMessenger(this);
55  theEventManager = G4EventManager::GetEventManager();
56 
57  theUserEventAction = 0;
58  theUserStackingAction = 0;
59  theUserTrackingAction = 0;
60  theUserSteppingAction = 0;
61 
62  theMatScannerEventAction = 0;
63  theMatScannerStackingAction = 0;
64  theMatScannerTrackingAction = 0;
65  theMatScannerSteppingAction = 0;
66 
67  eyePosition = G4ThreeVector(0.,0.,0.);
68  nTheta = 91;
69  thetaMin = 0.*deg;
70  thetaSpan = 90.*deg;
71  nPhi = 37;
72  phiMin = 0.*deg;
73  phiSpan = 360.*deg;
74 
75  regionSensitive = false;
76  regionName = "notDefined";
77  theRegion = 0;
78 }
CLHEP::Hep3Vector G4ThreeVector
static G4EventManager * GetEventManager()
G4MaterialScanner::~G4MaterialScanner ( )

Definition at line 80 of file G4MaterialScanner.cc.

81 {
82  delete theRayShooter;
83  delete theMatScannerSteppingAction;
84  delete theMessenger;
85 }

Member Function Documentation

G4ThreeVector G4MaterialScanner::GetEyePosition ( ) const
inline

Definition at line 106 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue().

106 { return eyePosition; }
G4int G4MaterialScanner::GetNPhi ( ) const
inline

Definition at line 114 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue(), and G4MatScanMessenger::SetNewValue().

114 { return nPhi; }
G4int G4MaterialScanner::GetNTheta ( ) const
inline

Definition at line 108 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue(), and G4MatScanMessenger::SetNewValue().

108 { return nTheta; }
G4double G4MaterialScanner::GetPhiMin ( ) const
inline

Definition at line 116 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue(), and G4MatScanMessenger::SetNewValue().

116 { return phiMin; }
G4double G4MaterialScanner::GetPhiSpan ( ) const
inline

Definition at line 118 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue(), and G4MatScanMessenger::SetNewValue().

118 { return phiSpan; }
G4String G4MaterialScanner::GetRegionName ( ) const
inline

Definition at line 122 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue().

122 { return regionName; }
G4bool G4MaterialScanner::GetRegionSensitive ( ) const
inline

Definition at line 120 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue().

120 { return regionSensitive; }
G4double G4MaterialScanner::GetThetaMin ( ) const
inline

Definition at line 110 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue(), and G4MatScanMessenger::SetNewValue().

110 { return thetaMin; }
G4double G4MaterialScanner::GetThetaSpan ( ) const
inline

Definition at line 112 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::GetCurrentValue(), and G4MatScanMessenger::SetNewValue().

112 { return thetaSpan; }
void G4MaterialScanner::Scan ( )

Definition at line 87 of file G4MaterialScanner.cc.

References G4cerr, G4endl, G4State_Idle, G4StateManager::GetCurrentState(), and G4StateManager::GetStateManager().

Referenced by G4MatScanMessenger::SetNewValue().

88 {
90  G4ApplicationState currentState = theStateMan->GetCurrentState();
91  if(currentState!=G4State_Idle)
92  {
93  G4cerr << "Illegal application state - Scan() ignored." << G4endl;
94  return;
95  }
96 
97  if(!theMatScannerSteppingAction)
98  { theMatScannerSteppingAction = new G4MSSteppingAction(); }
99  StoreUserActions();
100  DoScan();
101  RestoreUserActions();
102 }
static G4StateManager * GetStateManager()
G4ApplicationState GetCurrentState() const
#define G4endl
Definition: G4ios.hh:61
G4ApplicationState
G4GLOB_DLL std::ostream G4cerr
void G4MaterialScanner::SetEyePosition ( const G4ThreeVector val)
inline

Definition at line 105 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

105 { eyePosition = val; }
void G4MaterialScanner::SetNPhi ( G4int  val)
inline

Definition at line 113 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

113 { nPhi = val; }
void G4MaterialScanner::SetNTheta ( G4int  val)
inline

Definition at line 107 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

107 { nTheta = val; }
void G4MaterialScanner::SetPhiMin ( G4double  val)
inline

Definition at line 115 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

115 { phiMin = val; }
void G4MaterialScanner::SetPhiSpan ( G4double  val)
inline

Definition at line 117 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

117 { phiSpan = val; }
G4bool G4MaterialScanner::SetRegionName ( const G4String val)

Definition at line 213 of file G4MaterialScanner.cc.

References G4cerr, G4endl, G4RegionStore::GetInstance(), and G4RegionStore::GetRegion().

Referenced by G4MatScanMessenger::SetNewValue().

214 {
215  G4Region* aRegion = G4RegionStore::GetInstance()->GetRegion(val);
216  if(aRegion)
217  {
218  theRegion = aRegion;
219  regionName = val;
220  return true;
221  }
222  else
223  {
224  G4cerr << "Region <" << val << "> not found. Command ignored." << G4endl;
225  G4cerr << "Defined regions are : " << G4endl;
226  for(size_t i=0;i<G4RegionStore::GetInstance()->size();i++)
227  { G4cerr << " " << (*(G4RegionStore::GetInstance()))[i]->GetName(); }
228  G4cerr << G4endl;
229  return false;
230  }
231 }
G4Region * GetRegion(const G4String &name, G4bool verbose=true) const
static G4RegionStore * GetInstance()
#define G4endl
Definition: G4ios.hh:61
G4GLOB_DLL std::ostream G4cerr
void G4MaterialScanner::SetRegionSensitive ( G4bool  val = true)
inline

Definition at line 119 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

119 { regionSensitive = val; }
void G4MaterialScanner::SetThetaMin ( G4double  val)
inline

Definition at line 109 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

109 { thetaMin = val; }
void G4MaterialScanner::SetThetaSpan ( G4double  val)
inline

Definition at line 111 of file G4MaterialScanner.hh.

Referenced by G4MatScanMessenger::SetNewValue().

111 { thetaSpan = val; }

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