GGEMS  1.1
GPU GEant4-based Monte Carlo Simulations
GGEMSNavigatorManager Class Reference

GGEMS class handling the navigators (detector + phantom) in GGEMS. More...

#include "GGEMSNavigatorManager.hh"

Collaboration diagram for GGEMSNavigatorManager:
Collaboration graph

Public Member Functions

 GGEMSNavigatorManager (GGEMSNavigatorManager const &navigator_manager)=delete
 Avoid copy of the class by reference. More...
 
GGEMSNavigatorManager & operator= (GGEMSNavigatorManager const &navigator_manager)=delete
 Avoid assignement of the class by reference. More...
 
 GGEMSNavigatorManager (GGEMSNavigatorManager const &&navigator_manager)=delete
 Avoid copy of the class by rvalue reference. More...
 
GGEMSNavigatorManager & operator= (GGEMSNavigatorManager const &&navigator_manager)=delete
 Avoid copy of the class by rvalue reference. More...
 
void Store (GGEMSNavigator *navigator)
 storing the navigator pointer to navigator manager More...
 
void StoreWorld (GGEMSWorld *world)
 storing the world pointer More...
 
void Initialize (bool const &is_tracking=false) const
 Initialize a GGEMS navigators. More...
 
void PrintInfos (void) const
 Printing infos about the navigators. More...
 
GGsize GetNumberOfNavigators (void) const
 Get the number of navigators. More...
 
GGEMSNavigator ** GetNavigators (void) const
 get the list of navigators More...
 
GGEMSNavigator * GetNavigator (std::string const &navigator_name) const
 get the navigator by the name More...
 
GGsize GetNumberOfRegisteredSolids (void) const
 get the number of current registered solid More...
 
void FindSolid (GGsize const &thread_index) const
 Find closest solid before project particle to it. More...
 
void ProjectToSolid (GGsize const &thread_index) const
 Project particle to selected solid. More...
 
void TrackThroughSolid (GGsize const &thread_index) const
 Track particles through selected solid. More...
 
void SaveResults (void) const
 save all results from navigator in files More...
 
void WorldTracking (GGsize const &thread_index) const
 Tracking particles through world. More...
 
void ComputeDose (GGsize const &thread_index)
 Compute dose in volume. More...
 
void Clean (void)
 clean OpenCL data if necessary More...
 

Static Public Member Functions

static GGEMSNavigatorManager & GetInstance (void)
 Create at first time the Singleton. More...
 

Private Member Functions

 GGEMSNavigatorManager (void)
 Unable the constructor for the user. More...
 
 ~GGEMSNavigatorManager (void)
 Unable the destructor for the user. More...
 

Private Attributes

GGEMSNavigator ** navigators_
 
GGsize number_of_navigators_
 
GGEMSWorld * world_
 

Detailed Description

GGEMS class handling the navigators (detector + phantom) in GGEMS.

Definition at line 41 of file GGEMSNavigatorManager.hh.

Constructor & Destructor Documentation

◆ GGEMSNavigatorManager() [1/3]

GGEMSNavigatorManager::GGEMSNavigatorManager ( void  )
private

Unable the constructor for the user.

Definition at line 39 of file GGEMSNavigatorManager.cc.

◆ ~GGEMSNavigatorManager()

GGEMSNavigatorManager::~GGEMSNavigatorManager ( void  )
private

Unable the destructor for the user.

Definition at line 53 of file GGEMSNavigatorManager.cc.

◆ GGEMSNavigatorManager() [2/3]

GGEMSNavigatorManager::GGEMSNavigatorManager ( GGEMSNavigatorManager const &  navigator_manager)
delete

Avoid copy of the class by reference.

Parameters
navigator_manager- reference on the navigator manager

◆ GGEMSNavigatorManager() [3/3]

GGEMSNavigatorManager::GGEMSNavigatorManager ( GGEMSNavigatorManager const &&  navigator_manager)
delete

Avoid copy of the class by rvalue reference.

Parameters
navigator_manager- rvalue reference on the navigator manager

Member Function Documentation

◆ Clean()

void GGEMSNavigatorManager::Clean ( void  )

clean OpenCL data if necessary

Definition at line 69 of file GGEMSNavigatorManager.cc.

◆ ComputeDose()

void GGEMSNavigatorManager::ComputeDose ( GGsize const &  thread_index)

Compute dose in volume.

Parameters
thread_index- index of activated device (thread index)

Definition at line 219 of file GGEMSNavigatorManager.cc.

◆ FindSolid()

void GGEMSNavigatorManager::FindSolid ( GGsize const &  thread_index) const

Find closest solid before project particle to it.

Parameters
thread_index- index of activated device (thread index)

Definition at line 176 of file GGEMSNavigatorManager.cc.

◆ GetInstance()

static GGEMSNavigatorManager & GGEMSNavigatorManager::GetInstance ( void  )
inlinestatic

Create at first time the Singleton.

Returns
Object of type GGEMSNavigatorManager

Definition at line 60 of file GGEMSNavigatorManager.hh.

◆ GetNavigator()

GGEMSNavigator * GGEMSNavigatorManager::GetNavigator ( std::string const &  navigator_name) const
inline

get the navigator by the name

Parameters
navigator_name- name of the navigator
Returns
the navigator by the name

Definition at line 141 of file GGEMSNavigatorManager.hh.

◆ GetNavigators()

GGEMSNavigator ** GGEMSNavigatorManager::GetNavigators ( void  ) const
inline

get the list of navigators

Returns
the list of navigators

Definition at line 133 of file GGEMSNavigatorManager.hh.

◆ GetNumberOfNavigators()

GGsize GGEMSNavigatorManager::GetNumberOfNavigators ( void  ) const
inline

Get the number of navigators.

Returns
the number of navigators

Definition at line 126 of file GGEMSNavigatorManager.hh.

◆ GetNumberOfRegisteredSolids()

GGsize GGEMSNavigatorManager::GetNumberOfRegisteredSolids ( void  ) const
inline

get the number of current registered solid

Returns
number of current registered solid

Definition at line 158 of file GGEMSNavigatorManager.hh.

◆ Initialize()

void GGEMSNavigatorManager::Initialize ( bool const &  is_tracking = false) const

Initialize a GGEMS navigators.

Parameters
is_tracking- flag activating tracking

Definition at line 134 of file GGEMSNavigatorManager.cc.

◆ operator=() [1/2]

GGEMSNavigatorManager & GGEMSNavigatorManager::operator= ( GGEMSNavigatorManager const &&  navigator_manager)
delete

Avoid copy of the class by rvalue reference.

Parameters
navigator_manager- rvalue reference on the navigator manager

◆ operator=() [2/2]

GGEMSNavigatorManager & GGEMSNavigatorManager::operator= ( GGEMSNavigatorManager const &  navigator_manager)
delete

Avoid assignement of the class by reference.

Parameters
navigator_manager- reference on the navigator manager

◆ PrintInfos()

void GGEMSNavigatorManager::PrintInfos ( void  ) const

Printing infos about the navigators.

Definition at line 162 of file GGEMSNavigatorManager.cc.

◆ ProjectToSolid()

void GGEMSNavigatorManager::ProjectToSolid ( GGsize const &  thread_index) const

Project particle to selected solid.

Parameters
thread_index- index of activated device (thread index)

Definition at line 187 of file GGEMSNavigatorManager.cc.

◆ SaveResults()

void GGEMSNavigatorManager::SaveResults ( void  ) const

save all results from navigator in files

Definition at line 120 of file GGEMSNavigatorManager.cc.

◆ Store()

void GGEMSNavigatorManager::Store ( GGEMSNavigator *  navigator)

storing the navigator pointer to navigator manager

Parameters
navigator- pointer to GGEMS navigator

Definition at line 80 of file GGEMSNavigatorManager.cc.

◆ StoreWorld()

void GGEMSNavigatorManager::StoreWorld ( GGEMSWorld *  world)

storing the world pointer

Parameters
world- pointer to GGEMS world

Definition at line 110 of file GGEMSNavigatorManager.cc.

◆ TrackThroughSolid()

void GGEMSNavigatorManager::TrackThroughSolid ( GGsize const &  thread_index) const

Track particles through selected solid.

Parameters
thread_index- index of activated device (thread index)

Definition at line 198 of file GGEMSNavigatorManager.cc.

◆ WorldTracking()

void GGEMSNavigatorManager::WorldTracking ( GGsize const &  thread_index) const

Tracking particles through world.

Parameters
thread_index- index of activated device (thread index)

Definition at line 209 of file GGEMSNavigatorManager.cc.

Member Data Documentation

◆ navigators_

GGEMSNavigator** GGEMSNavigatorManager::navigators_
private

Pointer on the navigators

Definition at line 217 of file GGEMSNavigatorManager.hh.

◆ number_of_navigators_

GGsize GGEMSNavigatorManager::number_of_navigators_
private

Number of navigators

Definition at line 218 of file GGEMSNavigatorManager.hh.

◆ world_

GGEMSWorld* GGEMSNavigatorManager::world_
private

Pointer on world volume

Definition at line 219 of file GGEMSNavigatorManager.hh.


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