Bayeux
3.4.1
Core Foundation library for SuperNEMO
|
Regular 3D mesh placement of small daughter volumes with respect to a mother logical volume. More...
#include <bayeux/geomtools/regular_3d_mesh_placement.h>
Public Member Functions | |
bool | is_valid () const |
Check the validity of the mesh placement. More... | |
void | invalidate () |
Invalidate the mesh placement. More... | |
void | set_logging (datatools::logger::priority) |
Set the logging priprity threshold. More... | |
datatools::logger::priority | get_logging () const |
Return the logging priprity threshold. More... | |
bool | has_cache_file_path () const |
Check if a cache file path is set. More... | |
const std::string & | get_cache_file_path () const |
Return the cache file path. More... | |
void | set_cache_file_path (const std::string &) |
Set the cache file path. More... | |
void | set_log_vol (const logical_volume &) |
bool | has_log_vol () const |
void | set_node_log_vol (const logical_volume &) |
bool | has_node_log_vol () const |
void | set_steps (double step_x_, double step_y_, double step_z_) |
void | set_starts (double x0_, double y0_, double z0_) |
void | set_stops (double x1_, double y1_, double z1_) |
void | set_step_x (double step_x_) |
void | set_step_y (double step_y_) |
void | set_step_z (double step_z_) |
void | set_start_x (double x0_) |
void | set_start_y (double y0_) |
void | set_start_z (double z0_) |
void | set_stop_x (double x1_) |
void | set_stop_y (double y1_) |
void | set_stop_z (double z1_) |
void | set_overlapping_flags (uint32_t) |
uint32_t | get_overlapping_flags () const |
virtual bool | has_only_one_rotation () const |
Check if the placement is based on one unique rotation. More... | |
virtual size_t | get_dimension () const |
virtual bool | is_replica () const |
Check if the placement is a replica (GDML/Geant4 concept for multiple placement objects) More... | |
virtual size_t | get_number_of_items () const |
Return the number of placement items. More... | |
virtual void | get_placement (int item_, placement &p_) const |
Compute the placement at given item rank/index. More... | |
virtual size_t | compute_index_map (std::vector< uint32_t > &map_, int item_) const |
Compute an array of indexes in a multidimensional frame from the item rank/index. More... | |
const placement & | get_basic_placement () const |
regular_3d_mesh_placement () | |
virtual | ~regular_3d_mesh_placement () |
bool | is_initialized () const |
void | initialize () |
void | initialize (const datatools::properties &config_) |
virtual void | reset () |
virtual void | tree_dump (std::ostream &out_=std::clog, const std::string &title_="geomutils::regular_grid_placement", const std::string &indent_="", bool inherit_=false) const |
Smart print. More... | |
Public Member Functions inherited from geomtools::i_placement | |
i_placement () | |
Default constructor. More... | |
virtual | ~i_placement () |
Destructor. More... | |
bool | is_multiple () const |
Check if the placement handles multiple positions. More... | |
placement | get_placement (int item_) const |
Return the placement at given item rank/index. More... | |
placement | get_placement_by_index (int item_) const |
Same as get_placement(int) but workaround method overloading for CAMP. More... | |
void | compute_placement (int item_, placement &p_) const |
Compute the placement at given item rank/index. More... | |
Public Member Functions inherited from datatools::i_serializable | |
i_serializable () | |
Default constructor. More... | |
virtual | ~i_serializable () |
Destructor. More... | |
virtual const std::string & | get_serial_tag () const =0 |
Return the serialization string identifier of the class. More... | |
Public Member Functions inherited from datatools::i_tree_dumpable | |
i_tree_dumpable () | |
Constructor. More... | |
virtual | ~i_tree_dumpable () |
Destructor. More... | |
virtual void | print_tree (std::ostream &out_=std::clog, const boost::property_tree::ptree &options_=empty_options()) const |
Main new interface method for printing. More... | |
void | print_tree_json (std::ostream &out_=std::clog, const std::string &json_options_="") const |
Printing with jsonized options. More... | |
void | print_tree_json (std::ostream &out_=std::clog, const char *json_options_=nullptr) const |
Printing with jsonized options. More... | |
void | tree_dump_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="", const bool inherit_=false) const |
void | tree_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="") const |
void | smart_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="") const |
Protected Member Functions | |
void | _load_cache (const std::string &cache_file_path_) |
void | _store_cache (const std::string &cache_file_path_) |
void | _set_defaults () |
void | _init (const datatools::properties &config_) |
void | _fini () |
Additional Inherited Members | |
Public Types inherited from datatools::i_tree_dumpable | |
enum | ostream_type { OSTREAM_COUT = 1, OSTREAM_CERR = 2, OSTREAM_CLOG = 3 } |
Enumeration for standard output streams. More... | |
Static Public Member Functions inherited from datatools::i_tree_dumpable | |
static const boost::property_tree::ptree & | empty_options () |
static boost::property_tree::ptree | make_base_print_options (const std::string &title_, const std::string &indent_="", const bool inherit_=false) |
static std::ostream & | last_skip_tag (std::ostream &out_) |
static std::ostream & | skip_tag (std::ostream &out_) |
static std::ostream & | last_tag (std::ostream &out_) |
static std::ostream & | tag (std::ostream &out_) |
Regular 3D mesh placement of small daughter volumes with respect to a mother logical volume.
geomtools::regular_3d_mesh_placement::regular_3d_mesh_placement | ( | ) |
|
virtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
virtual |
Compute an array of indexes in a multidimensional frame from the item rank/index.
Implements geomtools::i_placement.
const placement& geomtools::regular_3d_mesh_placement::get_basic_placement | ( | ) | const |
const std::string& geomtools::regular_3d_mesh_placement::get_cache_file_path | ( | ) | const |
Return the cache file path.
|
virtual |
Return the dimension of the placement object
A single unique placement is of dimension 0 A multiple placement replicated along a given axis is of dimension 0 A multiple placement replicated along a 2D mesh addresses by X-Y grid coordinates is of dimension 2
Implements geomtools::i_placement.
datatools::logger::priority geomtools::regular_3d_mesh_placement::get_logging | ( | ) | const |
Return the logging priprity threshold.
|
virtual |
Return the number of placement items.
Implements geomtools::i_placement.
uint32_t geomtools::regular_3d_mesh_placement::get_overlapping_flags | ( | ) | const |
|
virtual |
Compute the placement at given item rank/index.
Implements geomtools::i_placement.
bool geomtools::regular_3d_mesh_placement::has_cache_file_path | ( | ) | const |
Check if a cache file path is set.
bool geomtools::regular_3d_mesh_placement::has_log_vol | ( | ) | const |
bool geomtools::regular_3d_mesh_placement::has_node_log_vol | ( | ) | const |
|
virtual |
Check if the placement is based on one unique rotation.
Reimplemented from geomtools::i_placement.
void geomtools::regular_3d_mesh_placement::initialize | ( | ) |
void geomtools::regular_3d_mesh_placement::initialize | ( | const datatools::properties & | config_ | ) |
void geomtools::regular_3d_mesh_placement::invalidate | ( | ) |
Invalidate the mesh placement.
bool geomtools::regular_3d_mesh_placement::is_initialized | ( | ) | const |
|
virtual |
Check if the placement is a replica (GDML/Geant4 concept for multiple placement objects)
Implements geomtools::i_placement.
bool geomtools::regular_3d_mesh_placement::is_valid | ( | ) | const |
Check the validity of the mesh placement.
|
virtual |
void geomtools::regular_3d_mesh_placement::set_cache_file_path | ( | const std::string & | ) |
Set the cache file path.
void geomtools::regular_3d_mesh_placement::set_log_vol | ( | const logical_volume & | ) |
void geomtools::regular_3d_mesh_placement::set_logging | ( | datatools::logger::priority | ) |
Set the logging priprity threshold.
void geomtools::regular_3d_mesh_placement::set_node_log_vol | ( | const logical_volume & | ) |
void geomtools::regular_3d_mesh_placement::set_overlapping_flags | ( | uint32_t | ) |
void geomtools::regular_3d_mesh_placement::set_start_x | ( | double | x0_ | ) |
void geomtools::regular_3d_mesh_placement::set_start_y | ( | double | y0_ | ) |
void geomtools::regular_3d_mesh_placement::set_start_z | ( | double | z0_ | ) |
void geomtools::regular_3d_mesh_placement::set_starts | ( | double | x0_, |
double | y0_, | ||
double | z0_ | ||
) |
void geomtools::regular_3d_mesh_placement::set_step_x | ( | double | step_x_ | ) |
void geomtools::regular_3d_mesh_placement::set_step_y | ( | double | step_y_ | ) |
void geomtools::regular_3d_mesh_placement::set_step_z | ( | double | step_z_ | ) |
void geomtools::regular_3d_mesh_placement::set_steps | ( | double | step_x_, |
double | step_y_, | ||
double | step_z_ | ||
) |
void geomtools::regular_3d_mesh_placement::set_stop_x | ( | double | x1_ | ) |
void geomtools::regular_3d_mesh_placement::set_stop_y | ( | double | y1_ | ) |
void geomtools::regular_3d_mesh_placement::set_stop_z | ( | double | z1_ | ) |
void geomtools::regular_3d_mesh_placement::set_stops | ( | double | x1_, |
double | y1_, | ||
double | z1_ | ||
) |
|
virtual |
Smart print.
Reimplemented from geomtools::i_placement.