|
GGEMS
1.1
GPU GEant4-based Monte Carlo Simulations
|
Go to the documentation of this file.
42 voxelized_phantom_filename_(
""),
43 range_data_filename_(
"")
45 GGcout(
"GGEMSVoxelizedPhantom",
"GGEMSVoxelizedPhantom", 3) <<
"GGEMSVoxelizedPhantom creating..." <<
GGendl;
47 GGcout(
"GGEMSVoxelizedPhantom",
"GGEMSVoxelizedPhantom", 3) <<
"GGEMSVoxelizedPhantom created!!!" <<
GGendl;
56 GGcout(
"GGEMSVoxelizedPhantom",
"~GGEMSVoxelizedPhantom", 3) <<
"GGEMSVoxelizedPhantom erasing..." <<
GGendl;
58 GGcout(
"GGEMSVoxelizedPhantom",
"~GGEMSVoxelizedPhantom", 3) <<
"GGEMSVoxelizedPhantom erased!!!" <<
GGendl;
67 GGcout(
"GGEMSVoxelizedPhantom",
"CheckParameters", 3) <<
"Checking the mandatory parameters..." <<
GGendl;
71 std::ostringstream oss(std::ostringstream::out);
72 oss <<
"You have to set a mhd file containing the voxelized phantom!!!";
78 std::ostringstream oss(std::ostringstream::out);
79 oss <<
"You have to set a file with the range to material data!!!";
90 GGcout(
"GGEMSVoxelizedPhantom",
"Initialize", 3) <<
"Initializing a GGEMS voxelized phantom..." <<
GGendl;
142 GGcout(
"GGEMSVoxelizedPhantom",
"SaveResults", 2) <<
"Saving dosimetry results in MHD format..." <<
GGendl;
174 voxelized_phantom->
SetPhantomFile(phantom_filename, range_data_filename);
183 voxelized_phantom->
SetPosition(position_x, position_y, position_z, unit);
GGsize GetNumberOfRegisteredSolids(void) const
get the number of current registered solid
virtual void Initialize(void)
Structure storing the stack of data for voxelized solid.
void Initialize(void) override
Initialize the voxelized phantom.
GGEMS class for solid informations.
Class providing tools storing and computing dose in phantom.
Child GGEMS class handling voxelized phantom.
~GGEMSVoxelizedPhantom(void)
GGEMSVoxelizedPhantom destructor.
void SaveResults(void) const
save results (dose images)
GGEMS class for voxelized solid.
static GGEMSNavigatorManager & GetInstance(void)
Create at first time the Singleton.
void SetPhantomFile(std::string const &voxelized_phantom_filename, std::string const &range_data_filename)
set the mhd filename for voxelized phantom and the range data file
std::string voxelized_phantom_filename_
GGEMSDosimetryCalculator * dose_calculator_
void EnableTracking(void)
Enabling tracking infos during simulation.
GGEMSVoxelizedPhantom(std::string const &voxelized_phantom_name)
GGEMSVoxelizedPhantom constructor.
GGEMS class handling the navigators (detector + phantom) in GGEMS.
void set_rotation_ggems_voxelized_phantom(GGEMSVoxelizedPhantom *voxelized_phantom, GGfloat const rx, GGfloat const ry, GGfloat const rz, char const *unit)
Set the rotation of the voxelized phantom around local axis.
GGsize number_activated_devices_
void SetSolidID(GGsize const &solid_id, GGsize const &thread_index)
set the global solid index
GGEMSVoxelizedPhantom * create_ggems_voxelized_phantom(char const *voxelized_phantom_name)
Get the GGEMSVoxelizedPhantom pointer for python user.
std::string range_data_filename_
void set_position_ggems_voxelized_phantom(GGEMSVoxelizedPhantom *voxelized_phantom, GGfloat const position_x, GGfloat const position_y, GGfloat const position_z, char const *unit)
set the position of the voxelized phantom in X, Y and Z
void CheckParameters(void) const override
Child GGEMS class handling voxelized phantom.
void SaveResults(void) override
save all results from solid
void Initialize(void)
Initialize dosimetry calculator class.
Parent GGEMS class for navigator.
void SetPosition(GGfloat3 const &position_xyz)
set a position for solid
virtual void UpdateTransformationMatrix(GGsize const &thread_index)=0
Update transformation matrix for solid object.
void set_phantom_file_ggems_voxelized_phantom(GGEMSVoxelizedPhantom *voxelized_phantom, char const *phantom_filename, char const *range_data_filename)
set the filename of voxelized phantom and the range data file
GGEMSMaterials * materials_
virtual void Initialize(GGEMSMaterials *materials)=0
Initialize solid for geometric navigation.
void SetRotation(GGfloat const &rx, GGfloat const &ry, GGfloat const &rz, std::string const &unit="deg")
Set the rotation of the global navigator around global axis.
Structure storing dosimetry infos.
GGEMS class for voxelized solid.
#define GGendl
overload C++ std::endl
void SetPosition(GGfloat const &position_x, GGfloat const &position_y, GGfloat const &position_z, std::string const &unit="mm")
set the position of the global navigator in X, Y and Z
I/O class handling MHD image file.
void SetRotation(GGfloat3 const &rotation_xyz)
set a rotation for solid
void ThrowException(std::string const &class_name, std::string const &method_name, std::string const &message)
Throw a C++ exception.