|
GGEMS
1.1
GPU GEant4-based Monte Carlo Simulations
|
Go to the documentation of this file. 1 #ifndef GUARD_GGEMS_NAVIGATORS_GGEMSWORLD_HH
2 #define GUARD_GGEMS_NAVIGATORS_GGEMSWORLD_HH
34 #include "GGEMS/global/GGEMSExport.hh"
101 void SetOutputWorldBasename(std::string
const& output_basename);
110 void SetDimension(
GGsize const& dimension_x,
GGsize const& dimension_y,
GGsize const& dimension_z);
120 void SetElementSize(
GGfloat const& size_x,
GGfloat const& size_y,
GGfloat const& size_z, std::string
const& unit =
"mm");
127 void SetPhotonTracking(
bool const& is_activated);
134 void SetEnergyTracking(
bool const& is_activated);
141 void SetEnergySquaredTracking(
bool const& is_activated);
148 void SetMomentum(
bool const& is_activated);
154 void Initialize(
void);
161 void Tracking(
GGsize const& thread_index);
167 void SaveResults(
void)
const;
173 void EnableTracking(
void);
180 void CheckParameters(
void)
const;
186 void InitializeKernel(
void);
192 void SavePhotonTracking(
void)
const;
198 void SaveEnergyTracking(
void)
const;
204 void SaveEnergySquaredTracking(
void)
const;
210 void SaveMomentum(
void)
const;
294 #endif // End of GUARD_GGEMS_NAVIGATORS_GGEMSWORLD_HH
void energy_squared_tracking_ggems_world(GGEMSWorld *world, bool const is_activated)
storing results about energy squared tracking
cl::Buffer ** momentum_y_
Structure storing 3 GGsize values.
Structure storing data for world data recording.
cl::Buffer ** energy_tracking_
struct GGEMSWorldRecording_t GGEMSWorldRecording
std::string world_output_basename_
void photon_tracking_ggems_world(GGEMSWorld *world, bool const is_activated)
storing results about photon tracking
void set_size_ggems_world(GGEMSWorld *world, GGfloat const size_x, GGfloat const size_y, GGfloat const size_z, char const *unit)
set the element sizes of the world
cl::Buffer ** photon_tracking_
void energy_tracking_ggems_world(GGEMSWorld *world, bool const is_activated)
storing results about energy tracking
std::string tracking_kernel_option_
GGEMSWorld(GGEMSWorld const &world)=delete
Avoid copy by reference.
GGsize number_activated_devices_
void set_output_ggems_world(GGEMSWorld *world, char const *world_output_basename)
set output basename storing world tracking results
GGEMSWorld & operator=(GGEMSWorld const &world)=delete
Avoid assignement by reference.
GGEMSWorld * create_ggems_world(void)
Get the GGEMSWorld pointer for python user.
GGEMS class handling global world (space between navigators) in GGEMS.
Redefining types for OpenCL device and host.
GGEMSWorld & operator=(GGEMSWorld const &&world)=delete
Avoid copy by rvalue reference.
void momentum_ggems_world(GGEMSWorld *world, bool const is_activated)
storing sum of momentum in world
bool is_energy_squared_tracking_
GGEMSWorld(GGEMSWorld const &&world)=delete
Avoid copy by rvalue reference.
cl::Kernel ** kernel_world_tracking_
void set_dimension_ggems_world(GGEMSWorld *world, GGsize const dimension_x, GGsize const dimension_y, GGsize const dimension_z)
set the dimenstions of the world in X, Y and Z
GGEMSWorldRecording world_recording_
cl::Buffer ** momentum_z_
cl::Buffer ** momentum_x_
cl::Buffer ** energy_squared_tracking_