|
GGEMS
1.1
GPU GEant4-based Monte Carlo Simulations
|
Go to the documentation of this file.
46 GGcout(
"GGEMSSolid",
"GGEMSSolid", 3) <<
"GGEMSSolid creating..." <<
GGendl;
66 GGcout(
"GGEMSSolid",
"GGEMSSolid", 3) <<
"GGEMSSolid created!!!" <<
GGendl;
75 GGcout(
"GGEMSSolid",
"~GGEMSSolid", 3) <<
"GGEMSSolid erasing..." <<
GGendl;
118 GGcout(
"GGEMSSolid",
"~GGEMSSolid", 3) <<
"GGEMSSolid erased!!!" <<
GGendl;
cl::Buffer ** label_data_
This class handles everything about geometry transformation.
Structure storing the stack of data for voxelized solid.
struct GGEMSVoxelizedSolidData_t GGEMSVoxelizedSolidData
GGsize GetNumberOfActivatedDevice(void) const
get the number of activated devices
GGEMSSolid(void)
GGEMSSolid constructor.
cl::Buffer ** solid_data_
GGEMS class handling the cross sections tables.
void SetTranslation(GGfloat const &tx, GGfloat const &ty, GGfloat const &tz)
Set the translation in X, Y and Z.
cl::Kernel ** kernel_project_to_solid_
virtual ~GGEMSSolid(void)
GGEMSSolid destructor.
void Deallocate(cl::Buffer *buffer, GGsize size, GGsize const &thread_index, std::string const &class_name="Undefined")
Deallocation of OpenCL memory.
void ReleaseDeviceBuffer(cl::Buffer *const device_ptr, T *host_ptr, GGsize const &thread_index)
Get the device pointer on host to write on it. Mandatory after a GetDeviceBufferWrite ou GetDeviceBuf...
Structure storing the stack of data for voxelized and analytical solid.
cl::Kernel ** kernel_track_through_solid_
GGEMSGeometryTransformation * geometry_transformation_
cl::Kernel ** kernel_particle_solid_distance_
void EnableTracking(void)
Enabling tracking infos during simulation.
Structure storing the stack of data for solid box.
void SetRotation(GGfloat const &rx, GGfloat const &ry, GGfloat const &rz)
Set the Rotation in X, Y and Z around global axis.
GGEMS class for solid. This class store geometry about phantom or detector.
void SetPosition(GGfloat3 const &position_xyz)
set a position for solid
GGsize number_activated_devices_
GGEMS class handling the source(s)
T * GetDeviceBuffer(cl::Buffer *device_ptr, GGsize const &size, GGsize const &thread_index)
Get the device pointer on host to write on it. ReleaseDeviceBuffer must be used after this method!...
#define GGendl
overload C++ std::endl
Structure storing the data for solid box.
Singleton class storing all informations about OpenCL and managing GPU/CPU devices,...
std::string data_reg_type_
Class managing the random number in GGEMS.
Class managing the geometry transformation.
void SetRotation(GGfloat3 const &rotation_xyz)
set a rotation for solid
std::string kernel_option_
static GGEMSOpenCLManager & GetInstance(void)
Create at first time the Singleton.