Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 98 of file G4TrackState.hh.

Member Typedef Documentation

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

Definition at line 238 of file G4TrackState.hh.

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

Definition at line 239 of file G4TrackState.hh.

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

Definition at line 240 of file G4TrackState.hh.

Constructor & Destructor Documentation

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

Definition at line 242 of file G4TrackState.hh.

242 {}
template<class T>
G4TrackStateDependent< T >::G4TrackStateDependent ( )
inlineprotected

Definition at line 301 of file G4TrackState.hh.

303  {}

Member Function Documentation

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

Definition at line 290 of file G4TrackState.hh.

291  {
292  return StateTypeHandle(new StateType());
293  }
G4TrackState< T > StateType
G4shared_ptr< StateType > StateTypeHandle
template<class T>
virtual StateTypeHandle G4TrackStateDependent< T >::GetConcreteTrackState ( ) const
inlinevirtual

Definition at line 264 of file G4TrackState.hh.

265  {
266  return fpTrackState;
267  }
StateTypeHandle fpTrackState
template<class T>
virtual G4VTrackStateHandle G4TrackStateDependent< T >::GetTrackState ( ) const
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 257 of file G4TrackState.hh.

258  {
259  G4VTrackStateHandle output =
261  return output;
262  }
G4shared_ptr< G4VTrackState > G4VTrackStateHandle
Definition: G4TrackState.hh:93
StateTypeHandle fpTrackState
#define G4dynamic_pointer_cast
Definition: G4memory.hh:36
template<class T>
virtual void G4TrackStateDependent< T >::LoadTrackState ( G4TrackStateManager manager)
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 269 of file G4TrackState.hh.

270  {
271  fpTrackState =
272  ConvertToConcreteTrackState<ClassType>(manager.GetTrackState(this));
273  if (fpTrackState == nullptr)
274  {
275  NewTrackState();
276  SaveTrackState(manager);
277  }
278  }
G4VTrackStateHandle GetTrackState(void *adress) const
StateTypeHandle fpTrackState
virtual void NewTrackState()
virtual void SaveTrackState(G4TrackStateManager &manager)

Here is the caller graph for this function:

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

Implements G4VTrackStateDependent.

Definition at line 285 of file G4TrackState.hh.

286  {
288  }
G4TrackState< T > StateType
StateTypeHandle fpTrackState
G4shared_ptr< StateType > StateTypeHandle

Here is the caller graph for this function:

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

Implements G4VTrackStateDependent.

Definition at line 249 of file G4TrackState.hh.

250  {
251  G4VTrackStateHandle output =
253  fpTrackState.reset();
254  return output;
255  }
G4shared_ptr< G4VTrackState > G4VTrackStateHandle
Definition: G4TrackState.hh:93
StateTypeHandle fpTrackState
#define G4dynamic_pointer_cast
Definition: G4memory.hh:36
template<class T>
virtual void G4TrackStateDependent< T >::ResetTrackState ( )
inlinevirtual

Implements G4VTrackStateDependent.

Definition at line 295 of file G4TrackState.hh.

296  {
297  fpTrackState.reset();
298  }
StateTypeHandle fpTrackState

Here is the caller graph for this function:

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

Implements G4VTrackStateDependent.

Definition at line 280 of file G4TrackState.hh.

281  {
283  }
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:

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

Definition at line 244 of file G4TrackState.hh.

245  {
246  fpTrackState = state;
247  }
StateTypeHandle fpTrackState

Member Data Documentation

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

Definition at line 305 of file G4TrackState.hh.


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