35size_t *G4VITProcess::fNbProcess =
nullptr;
43 if(fNbProcess ==
nullptr) fNbProcess =
new size_t(0);
44 fProcessID = *fNbProcess;
47 currentInteractionLength =
nullptr;
48 theInteractionTimeLeft =
nullptr;
49 theNumberOfInteractionLengthLeft =
nullptr;
67 G4VProcess(other), fProcessID(other.fProcessID)
71 currentInteractionLength =
nullptr;
72 theInteractionTimeLeft =
nullptr;
73 theNumberOfInteractionLengthLeft =
nullptr;
74 fInstantiateProcessState = other.fInstantiateProcessState;
80 if (
this == &rhs)
return *
this;
91 fpState = std::make_shared<G4ProcessState>();
94 theNumberOfInteractionLengthLeft = &(
fpState->theNumberOfInteractionLengthLeft );
95 theInteractionTimeLeft = &(
fpState->theInteractionTimeLeft );
96 currentInteractionLength = &(
fpState->currentInteractionLength );
G4IT * GetIT(const G4Track *track)
G4TrackingInformation * GetTrackingInfo()
void SetInstantiateProcessState(G4bool flag)
G4shared_ptr< G4ProcessState > fpState
G4VITProcess & operator=(const G4VITProcess &other)
void StartTracking(G4Track *) override
G4VITProcess(const G4String &name, G4ProcessType type=fNotDefined)
G4bool InstantiateProcessState()
~G4ProcessState() override
G4double currentInteractionLength
G4double theNumberOfInteractionLengthLeft
G4double theInteractionTimeLeft