Geant4  10.02.p03
G4TrackStateDependent< T > Class Template Reference

#include <G4TrackState.hh>

Inheritance diagram for G4TrackStateDependent< T >:
Collaboration diagram for G4TrackStateDependent< T >:

Public Types

typedef T ClassType
 
typedef G4TrackState< T > StateType
 
typedef G4shared_ptr< StateTypeStateTypeHandle
 

Public Member Functions

virtual ~G4TrackStateDependent ()
 
virtual void SetTrackState (G4shared_ptr< StateType > state)
 
virtual G4VTrackStateHandle PopTrackState ()
 
virtual G4VTrackStateHandle GetTrackState () const
 
virtual StateTypeHandle GetConcreteTrackState () const
 
virtual void LoadTrackState (G4TrackStateManager &manager)
 
virtual void SaveTrackState (G4TrackStateManager &manager)
 
virtual void NewTrackState ()
 
virtual StateTypeHandle CreateTrackState () const
 
virtual void ResetTrackState ()
 
- Public Member Functions inherited from G4VTrackStateDependent
 G4VTrackStateDependent ()
 
virtual ~G4VTrackStateDependent ()
 

Protected Member Functions

 G4TrackStateDependent ()
 

Protected Attributes

StateTypeHandle fpTrackState
 

Detailed Description

template<class T>
class G4TrackStateDependent< T >

Definition at line 102 of file G4TrackState.hh.

Member Typedef Documentation

◆ ClassType

template<class T>
typedef T G4TrackStateDependent< T >::ClassType

Definition at line 249 of file G4TrackState.hh.

◆ StateType

template<class T>
typedef G4TrackState<T> G4TrackStateDependent< T >::StateType

Definition at line 250 of file G4TrackState.hh.

◆ StateTypeHandle

template<class T>
typedef G4shared_ptr<StateType> G4TrackStateDependent< T >::StateTypeHandle

Definition at line 251 of file G4TrackState.hh.

Constructor & Destructor Documentation

◆ ~G4TrackStateDependent()

template<class T>
virtual G4TrackStateDependent< T >::~G4TrackStateDependent ( )
inlinevirtual

Definition at line 253 of file G4TrackState.hh.

254  { ;}

◆ G4TrackStateDependent()

template<class T>
G4TrackStateDependent< T >::G4TrackStateDependent ( )
inlineprotected

Definition at line 309 of file G4TrackState.hh.

311  { ;}

Member Function Documentation

◆ CreateTrackState()

template<class T>
virtual StateTypeHandle G4TrackStateDependent< T >::CreateTrackState ( ) const
inlinevirtual

Definition at line 298 of file G4TrackState.hh.

299  {
300  return StateTypeHandle(new StateType());
301  }
G4TrackState< T > StateType
G4shared_ptr< StateType > StateTypeHandle

◆ GetConcreteTrackState()

template<class T>
virtual StateTypeHandle G4TrackStateDependent< T >::GetConcreteTrackState ( ) const
inlinevirtual

Definition at line 273 of file G4TrackState.hh.

274  {
275  return fpTrackState;
276  }
StateTypeHandle fpTrackState

◆ GetTrackState()

template<class T>
virtual G4VTrackStateHandle G4TrackStateDependent< T >::GetTrackState ( ) const
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 267 of file G4TrackState.hh.

268  {
270  return output;
271  }
G4shared_ptr< G4VTrackState > G4VTrackStateHandle
Definition: G4TrackState.hh:89
StateTypeHandle fpTrackState
#define G4dynamic_pointer_cast
Definition: G4memory.hh:36

◆ LoadTrackState()

template<class T>
virtual void G4TrackStateDependent< T >::LoadTrackState ( G4TrackStateManager manager)
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 278 of file G4TrackState.hh.

279  {
280  fpTrackState = ConvertToConcreteTrackState<ClassType>(manager.GetTrackState(this));
281  if(fpTrackState == nullptr)
282  {
283  NewTrackState();
284  SaveTrackState(manager);
285  }
286  }
G4VTrackStateHandle GetTrackState(void *adress) const
StateTypeHandle fpTrackState
virtual void NewTrackState()
virtual void SaveTrackState(G4TrackStateManager &manager)
Here is the caller graph for this function:

◆ NewTrackState()

template<class T>
virtual void G4TrackStateDependent< T >::NewTrackState ( )
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 293 of file G4TrackState.hh.

294  {
296  }
G4TrackState< T > StateType
StateTypeHandle fpTrackState
G4shared_ptr< StateType > StateTypeHandle
Here is the caller graph for this function:

◆ PopTrackState()

template<class T>
virtual G4VTrackStateHandle G4TrackStateDependent< T >::PopTrackState ( )
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 260 of file G4TrackState.hh.

261  {
263  fpTrackState.reset();
264  return output;
265  }
G4shared_ptr< G4VTrackState > G4VTrackStateHandle
Definition: G4TrackState.hh:89
StateTypeHandle fpTrackState
#define G4dynamic_pointer_cast
Definition: G4memory.hh:36

◆ ResetTrackState()

template<class T>
virtual void G4TrackStateDependent< T >::ResetTrackState ( )
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 303 of file G4TrackState.hh.

304  {
305  fpTrackState.reset();
306  }
StateTypeHandle fpTrackState
Here is the caller graph for this function:

◆ SaveTrackState()

template<class T>
virtual void G4TrackStateDependent< T >::SaveTrackState ( G4TrackStateManager manager)
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 288 of file G4TrackState.hh.

289  {
291  }
void SetTrackState(void *adress, G4VTrackStateHandle state)
StateTypeHandle fpTrackState
G4shared_ptr< G4VTrackState > ConvertToAbstractTrackState(G4shared_ptr< G4TrackState< OriginalType > > state)
Here is the caller graph for this function:

◆ SetTrackState()

template<class T>
virtual void G4TrackStateDependent< T >::SetTrackState ( G4shared_ptr< StateType state)
inlinevirtual

Definition at line 255 of file G4TrackState.hh.

256  {
257  fpTrackState = state;
258  }
StateTypeHandle fpTrackState

Member Data Documentation

◆ fpTrackState

template<class T>
StateTypeHandle G4TrackStateDependent< T >::fpTrackState
protected

Definition at line 313 of file G4TrackState.hh.


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