59{
60
61 if (!fNaviSetup)
62 {
63
65 if(fWorldWithSdName.empty()) {
67 } else {
69 }
71 fpNavigator->
72 LocateGlobalPointAndUpdateTouchable(aSpot->
GetPosition(),
73 fTouchableHandle(), false);
74 fNaviSetup = true;
75 }
76 else
77 {
78 fpNavigator->
79 LocateGlobalPointAndUpdateTouchable(aSpot->
GetPosition(),
80 fTouchableHandle());
81 }
82
83
84
85
86
87
89
90
91
92
93
94
95
98 if( pCurrentVolume != 0 )
99 {
103 if( gflashSensitive )
104 {
105 gflashSensitive->
Hit(&theSpot);
106 }
107 else if (( pSensitive ) &&
109 )
110
111
112 {
114 <<
" It is required to implement the "<<
G4endl
115 <<
" G4VGFlashSensitiveDetector interface in "<<
G4endl
116 << " addition to the usual SensitiveDetector class."
119 "G4VGFlashSensitiveDetector interface not implemented.");
120 }
121 }
122 else
123 {
124 #ifdef GFLASH_DEBUG
126 #endif
127 }
128}
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
G4GLOB_DLL std::ostream G4cerr
G4GLOB_DLL std::ostream G4cout
G4VSensitiveDetector * GetSensitiveDetector() const
G4FastSimulationManager * GetFastSimulationManager() const
void SetWorldVolume(G4VPhysicalVolume *pWorld)
G4VPhysicalVolume * GetWorldVolume() const
G4VPhysicalVolume * GetParallelWorld(const G4String &worldName)
static G4TransportationManager * GetTransportationManager()
G4Navigator * GetNavigatorForTracking() const
G4bool Hit(G4GFlashSpot *aSpot)
G4LogicalVolume * GetLogicalVolume() const
virtual G4VPhysicalVolume * GetVolume(G4int depth=0) const
G4ThreeVector GetPosition() const