#include <G4MoleculeLocator.hh>
Definition at line 41 of file G4MoleculeLocator.hh.
◆ ~G4MoleculeLocator()
| G4MoleculeLocator::~G4MoleculeLocator |
( |
| ) |
|
|
default |
◆ Instance()
◆ LocateMoleculeSetStateAndTouchable()
| void G4MoleculeLocator::LocateMoleculeSetStateAndTouchable |
( |
G4Track * | pTrack | ) |
|
Definition at line 88 of file G4MoleculeLocator.cc.
89{
90 G4IT* pITrack =
GetIT(pTrack);
91
92 if (pITrack == nullptr) {
94 "The track passed to this method appears to not hold an IT (molecule) object!");
95 }
96
97 fNavigator->NewNavigatorState();
99
101
102 fNavigator->LocateGlobalPointAndSetup(pTrack->
GetPosition(), &direction,
false,
false);
103
107}
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
G4IT * GetIT(const G4Track *track)
CLHEP::Hep3Vector G4ThreeVector
G4ReferenceCountedHandle< G4VTouchable > G4TouchableHandle
G4TouchableHandle is a type providing reference counting mechanism for any kind of touchable objects....
G4TrackingInformation * GetTrackingInfo()
void SetNextTouchableHandle(const G4TouchableHandle &apValue)
const G4ThreeVector & GetPosition() const
void SetTouchableHandle(const G4TouchableHandle &apValue)
const G4ThreeVector & GetMomentumDirection() const
Referenced by G4Molecule::BuildTrack().
◆ LocateMoleculeTrack()
Definition at line 62 of file G4MoleculeLocator.cc.
63{
64 G4IT* pITrack =
GetIT(pTrack);
65
66 if (pITrack == nullptr) {
68 "The track passed to this method appears to not hold an IT (molecule) object!");
69 }
70
71 std::unique_ptr<G4ITNavigatorState_Lock> tmpStateHolder;
74 else {
75 fNavigator->NewNavigatorState();
76 tmpStateHolder = std::unique_ptr<G4ITNavigatorState_Lock>(fNavigator->GetNavigatorState());
77
78 }
79
81
82 fNavigator->LocateGlobalPointAndSetup(pTrack->
GetPosition(), &direction,
false,
false);
83
85 return touchable;
86}
◆ G4ThreadLocalSingleton< G4MoleculeLocator >
The documentation for this class was generated from the following files: