Bayeux  3.4.1
Core Foundation library for SuperNEMO
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
geomtools::stacked_model Class Reference

A geometry model with some stacked boxed models along a specific axis (X, Y or Z) More...

#include <bayeux/geomtools/stacked_model.h>

Inheritance diagram for geomtools::stacked_model:

Classes

struct  stacked_item
 

Public Types

enum  stacking_axis_t { STACKING_ALONG_INVALID = -1, STACKING_ALONG_X = AXIS_X, STACKING_ALONG_Y = AXIS_Y, STACKING_ALONG_Z = AXIS_Z }
 
typedef std::map< int, stacked_itemstacked_dict_type
 
typedef std::map< std::string, int > labels_dict_type
 

Public Member Functions

bool is_box_solid () const
 
bool is_cylinder_solid () const
 
const std::string & get_material_name () const
 
void set_material_name (const std::string &)
 
void set_stacking_axis (int a_)
 
int get_stacking_axis () const
 
bool is_stacking_along_x () const
 
bool is_stacking_along_y () const
 
bool is_stacking_along_z () const
 
void set_envelope_shape (const std::string &)
 
const std::string & get_envelope_shape () const
 
virtual const geomtools::boxget_box () const
 
const geomtools::boxget_solid () const
 
const geomtools::cylinderget_cyl_solid () const
 
size_t get_number_of_stacked_models () const
 
void add_stacked_model (int i_, const i_model &, const std::string &label_="")
 
bool has_stacked_model (const std::string &label_) const
 
const i_modelget_stacked_model (int i_) const
 
const stacked_itemget_stacked_item (int i_) const
 
const i_modelget_stacked_model (const std::string &label_) const
 
const stacked_itemget_stacked_item (const std::string &label_) const
 
const labels_dict_typeget_labels () const
 
const stacked_dict_typeget_models () const
 
virtual std::string get_model_id () const
 
 stacked_model ()
 Default constructor. More...
 
virtual ~stacked_model ()
 Destructor. More...
 
virtual void tree_dump (std::ostream &out_=std::clog, const std::string &title_="", const std::string &indent_="", bool inherit_=false) const
 Smart print. More...
 

Static Public Attributes

static const std::string STACKED_PROPERTY_PREFIX
 
static const std::string STACKED_MODEL_PROPERTY_PREFIX
 
static const std::string STACKED_LABEL_PROPERTY_PREFIX
 
static const std::string DEFAULT_STACKED_LABEL_PREFIX
 
static const double DEFAULT_MECHANICS_PLAY
 
static const double DEFAULT_NUMERICS_PLAY
 

Protected Member Functions

virtual void _at_construct (const std::string &name_, const datatools::properties &config_, models_col_type *models_=0)
 Construction. More...
 

Detailed Description

A geometry model with some stacked boxed models along a specific axis (X, Y or Z)

Member Typedef Documentation

◆ labels_dict_type

typedef std::map<std::string, int> geomtools::stacked_model::labels_dict_type

◆ stacked_dict_type

Member Enumeration Documentation

◆ stacking_axis_t

Enumerator
STACKING_ALONG_INVALID 
STACKING_ALONG_X 
STACKING_ALONG_Y 
STACKING_ALONG_Z 

Constructor & Destructor Documentation

◆ stacked_model()

geomtools::stacked_model::stacked_model ( )

Default constructor.

◆ ~stacked_model()

virtual geomtools::stacked_model::~stacked_model ( )
virtual

Destructor.

Member Function Documentation

◆ _at_construct()

virtual void geomtools::stacked_model::_at_construct ( const std::string &  name_,
const datatools::properties config_,
models_col_type models_ = 0 
)
protectedvirtual

Construction.

◆ add_stacked_model()

void geomtools::stacked_model::add_stacked_model ( int  i_,
const i_model ,
const std::string &  label_ = "" 
)

◆ get_box()

virtual const geomtools::box& geomtools::stacked_model::get_box ( ) const
virtual

◆ get_cyl_solid()

const geomtools::cylinder& geomtools::stacked_model::get_cyl_solid ( ) const

◆ get_envelope_shape()

const std::string& geomtools::stacked_model::get_envelope_shape ( ) const

◆ get_labels()

const labels_dict_type& geomtools::stacked_model::get_labels ( ) const

◆ get_material_name()

const std::string& geomtools::stacked_model::get_material_name ( ) const

◆ get_model_id()

virtual std::string geomtools::stacked_model::get_model_id ( ) const
virtual

◆ get_models()

const stacked_dict_type& geomtools::stacked_model::get_models ( ) const

◆ get_number_of_stacked_models()

size_t geomtools::stacked_model::get_number_of_stacked_models ( ) const

◆ get_solid()

const geomtools::box& geomtools::stacked_model::get_solid ( ) const

◆ get_stacked_item() [1/2]

const stacked_item& geomtools::stacked_model::get_stacked_item ( int  i_) const

◆ get_stacked_item() [2/2]

const stacked_item& geomtools::stacked_model::get_stacked_item ( const std::string &  label_) const

◆ get_stacked_model() [1/2]

const i_model& geomtools::stacked_model::get_stacked_model ( int  i_) const

◆ get_stacked_model() [2/2]

const i_model& geomtools::stacked_model::get_stacked_model ( const std::string &  label_) const

◆ get_stacking_axis()

int geomtools::stacked_model::get_stacking_axis ( ) const

◆ has_stacked_model()

bool geomtools::stacked_model::has_stacked_model ( const std::string &  label_) const

◆ is_box_solid()

bool geomtools::stacked_model::is_box_solid ( ) const

◆ is_cylinder_solid()

bool geomtools::stacked_model::is_cylinder_solid ( ) const

◆ is_stacking_along_x()

bool geomtools::stacked_model::is_stacking_along_x ( ) const

◆ is_stacking_along_y()

bool geomtools::stacked_model::is_stacking_along_y ( ) const

◆ is_stacking_along_z()

bool geomtools::stacked_model::is_stacking_along_z ( ) const

◆ set_envelope_shape()

void geomtools::stacked_model::set_envelope_shape ( const std::string &  )

◆ set_material_name()

void geomtools::stacked_model::set_material_name ( const std::string &  )

◆ set_stacking_axis()

void geomtools::stacked_model::set_stacking_axis ( int  a_)

◆ tree_dump()

virtual void geomtools::stacked_model::tree_dump ( std::ostream &  out_ = std::clog,
const std::string &  title_ = "",
const std::string &  indent_ = "",
bool  inherit_ = false 
) const
virtual

Smart print.

Member Data Documentation

◆ DEFAULT_MECHANICS_PLAY

const double geomtools::stacked_model::DEFAULT_MECHANICS_PLAY
static

◆ DEFAULT_NUMERICS_PLAY

const double geomtools::stacked_model::DEFAULT_NUMERICS_PLAY
static

◆ DEFAULT_STACKED_LABEL_PREFIX

const std::string geomtools::stacked_model::DEFAULT_STACKED_LABEL_PREFIX
static

◆ STACKED_LABEL_PROPERTY_PREFIX

const std::string geomtools::stacked_model::STACKED_LABEL_PROPERTY_PREFIX
static

◆ STACKED_MODEL_PROPERTY_PREFIX

const std::string geomtools::stacked_model::STACKED_MODEL_PROPERTY_PREFIX
static

◆ STACKED_PROPERTY_PREFIX

const std::string geomtools::stacked_model::STACKED_PROPERTY_PREFIX
static

The documentation for this class was generated from the following file: