![]() |
GGEMS
1.1
GPU GEant4-based Monte Carlo Simulations
|
GGEMS class for solid informations. More...
#include "GGEMSSolid.hh"


Public Member Functions | |
| GGEMSSolid (void) | |
| GGEMSSolid constructor. More... | |
| virtual | ~GGEMSSolid (void) |
| GGEMSSolid destructor. More... | |
| GGEMSSolid (GGEMSSolid const &solid)=delete | |
| Avoid copy by reference. More... | |
| GGEMSSolid & | operator= (GGEMSSolid const &solid)=delete |
| Avoid assignement by reference. More... | |
| GGEMSSolid (GGEMSSolid const &&solid)=delete | |
| Avoid copy by rvalue reference. More... | |
| GGEMSSolid & | operator= (GGEMSSolid const &&solid)=delete |
| Avoid copy by rvalue reference. More... | |
| void | EnableTracking (void) |
| Enabling tracking infos during simulation. More... | |
| cl::Buffer * | GetSolidData (GGsize const &thread_index) const |
| get the informations about the solid geometry More... | |
| cl::Buffer * | GetLabelData (GGsize const &thread_index) const |
| get buffer to label buffer More... | |
| void | SetRotation (GGfloat3 const &rotation_xyz) |
| set a rotation for solid More... | |
| void | SetPosition (GGfloat3 const &position_xyz) |
| set a position for solid More... | |
| template<typename T > | |
| void | SetSolidID (GGsize const &solid_id, GGsize const &thread_index) |
| set the global solid index More... | |
| virtual void | UpdateTransformationMatrix (GGsize const &thread_index)=0 |
| Update transformation matrix for solid object. More... | |
| virtual void | Initialize (GGEMSMaterials *materials)=0 |
| Initialize solid for geometric navigation. More... | |
| virtual void | EnableScatter (void)=0 |
| Activate scatter registration. More... | |
| virtual void | PrintInfos (void) const =0 |
| printing infos about solid More... | |
| std::string | GetRegisteredDataType (void) const |
| get the type of registered data More... | |
| cl::Kernel * | GetKernelParticleSolidDistance (GGsize const &thread_index) const |
| get the pointer to kernel associated to a device More... | |
| cl::Kernel * | GetKernelProjectToSolid (GGsize const &thread_index) const |
| get the pointer to kernel associated to a device More... | |
| cl::Kernel * | GetKernelTrackThroughSolid (GGsize const &thread_index) const |
| get the pointer to kernel associated to a device More... | |
| cl::Buffer * | GetHistogram (GGsize const &thread_index) const |
| return the point on histogram More... | |
| cl::Buffer * | GetScatterHistogram (GGsize const &thread_index) const |
| return the point on scatter histogram More... | |
Protected Member Functions | |
| virtual void | InitializeKernel (void)=0 |
| Initialize kernel for particle solid distance. More... | |
Protected Attributes | |
| cl::Buffer ** | solid_data_ |
| cl::Buffer ** | label_data_ |
| GGsize | number_activated_devices_ |
| GGEMSGeometryTransformation * | geometry_transformation_ |
| cl::Kernel ** | kernel_particle_solid_distance_ |
| cl::Kernel ** | kernel_project_to_solid_ |
| cl::Kernel ** | kernel_track_through_solid_ |
| std::string | kernel_option_ |
| std::string | data_reg_type_ |
| GGEMSHistogramMode | histogram_ |
| bool | is_scatter_ |
GGEMS class for solid informations.
Definition at line 47 of file GGEMSSolid.hh.
| GGEMSSolid::GGEMSSolid | ( | void | ) |
GGEMSSolid constructor.
Definition at line 43 of file GGEMSSolid.cc.
|
virtual |
GGEMSSolid destructor.
Definition at line 73 of file GGEMSSolid.cc.
|
delete |
Avoid copy by reference.
| solid | - reference on the GGEMS solid |
|
delete |
Avoid copy by rvalue reference.
| solid | - rvalue reference on the GGEMS solid |
|
pure virtual |
Activate scatter registration.
Implemented in GGEMSVoxelizedSolid, and GGEMSSolidBox.
| void GGEMSSolid::EnableTracking | ( | void | ) |
Enabling tracking infos during simulation.
Definition at line 125 of file GGEMSSolid.cc.
|
inline |
return the point on histogram
| thread_index | - index of activated device (thread index) |
Definition at line 196 of file GGEMSSolid.hh.
|
inline |
get the pointer to kernel associated to a device
| thread_index | - index of activated device (thread index) |
Definition at line 172 of file GGEMSSolid.hh.
|
inline |
get the pointer to kernel associated to a device
| thread_index | - index of activated device (thread index) |
Definition at line 180 of file GGEMSSolid.hh.
|
inline |
get the pointer to kernel associated to a device
| thread_index | - index of activated device (thread index) |
Definition at line 188 of file GGEMSSolid.hh.
|
inline |
get buffer to label buffer
| thread_index | - index of the thread (= activated device index) |
Definition at line 108 of file GGEMSSolid.hh.
|
inline |
get the type of registered data
Definition at line 164 of file GGEMSSolid.hh.
|
inline |
return the point on scatter histogram
| thread_index | - index of activated device (thread index) |
Definition at line 204 of file GGEMSSolid.hh.
|
inline |
get the informations about the solid geometry
| thread_index | - index of the thread (= activated device index) |
Definition at line 100 of file GGEMSSolid.hh.
|
pure virtual |
Initialize solid for geometric navigation.
| materials | - pointer on GGEMS materials |
Implemented in GGEMSVoxelizedSolid, and GGEMSSolidBox.
|
protectedpure virtual |
Initialize kernel for particle solid distance.
Implemented in GGEMSVoxelizedSolid, and GGEMSSolidBox.
|
delete |
Avoid copy by rvalue reference.
| solid | - rvalue reference on the GGEMS solid |
|
delete |
Avoid assignement by reference.
| solid | - reference on the GGEMS solid |
|
pure virtual |
printing infos about solid
Implemented in GGEMSVoxelizedSolid, and GGEMSSolidBox.
| void GGEMSSolid::SetPosition | ( | GGfloat3 const & | position_xyz | ) |
set a position for solid
| position_xyz | - position in X, Y and Z |
Definition at line 143 of file GGEMSSolid.cc.
| void GGEMSSolid::SetRotation | ( | GGfloat3 const & | rotation_xyz | ) |
set a rotation for solid
| rotation_xyz | - rotation in X, Y and Z |
Definition at line 111 of file GGEMSSolid.hh.
| void GGEMSSolid::SetSolidID | ( | GGsize const & | solid_id, |
| GGsize const & | thread_index | ||
| ) |
set the global solid index
| solid_id | - index of the solid |
| thread_index | - index of the thread (= activated device index) |
Definition at line 239 of file GGEMSSolid.hh.
|
pure virtual |
Update transformation matrix for solid object.
| thread_index | - index of the thread (= activated device index) |
Implemented in GGEMSVoxelizedSolid, and GGEMSSolidBox.
|
protected |
Type of registering data
Definition at line 229 of file GGEMSSolid.hh.
|
protected |
Pointer storing the geometry transformation
Definition at line 220 of file GGEMSSolid.hh.
|
protected |
Storing histogram useful for GGEMSSystem only
Definition at line 230 of file GGEMSSolid.hh.
|
protected |
boolean storing scatter in solid
Definition at line 231 of file GGEMSSolid.hh.
|
protected |
Preprocessor option for kernel
Definition at line 226 of file GGEMSSolid.hh.
|
protected |
OpenCL kernel computing distance between particles and solid
Definition at line 223 of file GGEMSSolid.hh.
|
protected |
OpenCL kernel moving particles to solid
Definition at line 224 of file GGEMSSolid.hh.
|
protected |
OpenCL kernel tracking particles through a solid
Definition at line 225 of file GGEMSSolid.hh.
|
protected |
Pointer storing the buffer about label data, useful for voxelized solid only
Definition at line 216 of file GGEMSSolid.hh.
|
protected |
Number of activated device
Definition at line 217 of file GGEMSSolid.hh.
|
protected |
Data about solid
Definition at line 215 of file GGEMSSolid.hh.