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

A logical geometry volume (ala GDML) More...

#include <bayeux/geomtools/logical_volume.h>

Inheritance diagram for geomtools::logical_volume:
datatools::i_tree_dumpable

Classes

class  locate_result
 Data structure resulting of the logical_volume::locate method. More...
 

Public Types

typedef std::map< std::string, const physical_volume * > physicals_col_type
 Dictionary of (daughter) physical volumes. More...
 
typedef std::map< std::string, const logical_volume * > dict_type
 
- 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...
 

Public Member Functions

bool is_locked () const
 Check the lock flag. More...
 
void lock ()
 Lock the volume. More...
 
void unlock ()
 Unlock the volume. More...
 
bool has_name () const
 Check the name of the volume. More...
 
const std::string & get_name () const
 Return the name of the volume. More...
 
void set_name (const std::string &)
 Set the name of the volume. More...
 
const datatools::propertiesget_parameters () const
 
datatools::propertiesgrab_parameters ()
 
bool has_shape () const
 
void set_shape (const i_shape_3d &)
 
void set_shape (const i_shape_3d *)
 
const i_shape_3dget_shape () const
 
const physicals_col_typeget_physicals () const
 
const physicals_col_typeget_real_physicals () const
 
 logical_volume ()
 Default constructor. More...
 
 logical_volume (const std::string &)
 Constructor. More...
 
 logical_volume (const std::string &, const i_shape_3d &)
 Constructor. More...
 
 logical_volume (const std::string &, const i_shape_3d *)
 Constructor. More...
 
virtual ~logical_volume ()
 Desctructor. 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...
 
bool has_physical (const std::string &name_) const
 
bool has_material_ref () const
 
std::string get_material_ref () const
 
void set_material_ref (const std::string &="")
 
const physical_volumeget_physical (const std::string &name_) const
 
void add_physical (const physical_volume &phys_, const std::string &name_="")
 
bool is_replica () const
 
bool is_abstract () const
 
void set_abstract (bool a_)
 
bool has_effective_shape () const
 
void set_effective_shape (const i_shape_3d &)
 
const i_shape_3dget_effective_shape () const
 
bool has_geometry_model () const
 
void set_geometry_model (const i_model &)
 
const i_modelget_geometry_model () const
 
bool has_effective_material_ref () const
 
std::string get_effective_material_ref () const
 
void set_effective_material_ref (const std::string &="")
 
bool has_effective_relative_placement () const
 
void set_effective_relative_placement (const placement &)
 
const placementget_effective_relative_placement () const
 
uint32_t locate (const vector_3d &local_position_, bool ignore_daugthers_=false, double tolerance_=0.0, double daughter_tolerance_=0.0, locate_result *=0) const
 
- 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
 

Static Public Member Functions

static const std::string & has_replica_flag ()
 Return the name of the flag that indicated a replica. More...
 
static bool same (const logical_volume &log1_, const logical_volume &log2_, uint32_t mode_=0)
 
- 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_)
 

Detailed Description

A logical geometry volume (ala GDML)

Member Typedef Documentation

◆ dict_type

typedef std::map<std::string, const logical_volume *> geomtools::logical_volume::dict_type

◆ physicals_col_type

typedef std::map<std::string, const physical_volume *> geomtools::logical_volume::physicals_col_type

Dictionary of (daughter) physical volumes.

Constructor & Destructor Documentation

◆ logical_volume() [1/4]

geomtools::logical_volume::logical_volume ( )

Default constructor.

◆ logical_volume() [2/4]

geomtools::logical_volume::logical_volume ( const std::string &  )

Constructor.

◆ logical_volume() [3/4]

geomtools::logical_volume::logical_volume ( const std::string &  ,
const i_shape_3d  
)

Constructor.

◆ logical_volume() [4/4]

geomtools::logical_volume::logical_volume ( const std::string &  ,
const i_shape_3d  
)

Constructor.

◆ ~logical_volume()

virtual geomtools::logical_volume::~logical_volume ( )
virtual

Desctructor.

Member Function Documentation

◆ add_physical()

void geomtools::logical_volume::add_physical ( const physical_volume phys_,
const std::string &  name_ = "" 
)

◆ get_effective_material_ref()

std::string geomtools::logical_volume::get_effective_material_ref ( ) const

◆ get_effective_relative_placement()

const placement& geomtools::logical_volume::get_effective_relative_placement ( ) const

◆ get_effective_shape()

const i_shape_3d& geomtools::logical_volume::get_effective_shape ( ) const

◆ get_geometry_model()

const i_model& geomtools::logical_volume::get_geometry_model ( ) const

◆ get_material_ref()

std::string geomtools::logical_volume::get_material_ref ( ) const

◆ get_name()

const std::string& geomtools::logical_volume::get_name ( ) const

Return the name of the volume.

◆ get_parameters()

const datatools::properties& geomtools::logical_volume::get_parameters ( ) const

◆ get_physical()

const physical_volume& geomtools::logical_volume::get_physical ( const std::string &  name_) const

◆ get_physicals()

const physicals_col_type& geomtools::logical_volume::get_physicals ( ) const

◆ get_real_physicals()

const physicals_col_type& geomtools::logical_volume::get_real_physicals ( ) const

◆ get_shape()

const i_shape_3d& geomtools::logical_volume::get_shape ( ) const

◆ grab_parameters()

datatools::properties& geomtools::logical_volume::grab_parameters ( )

◆ has_effective_material_ref()

bool geomtools::logical_volume::has_effective_material_ref ( ) const

◆ has_effective_relative_placement()

bool geomtools::logical_volume::has_effective_relative_placement ( ) const

◆ has_effective_shape()

bool geomtools::logical_volume::has_effective_shape ( ) const

◆ has_geometry_model()

bool geomtools::logical_volume::has_geometry_model ( ) const

◆ has_material_ref()

bool geomtools::logical_volume::has_material_ref ( ) const

◆ has_name()

bool geomtools::logical_volume::has_name ( ) const

Check the name of the volume.

◆ has_physical()

bool geomtools::logical_volume::has_physical ( const std::string &  name_) const

◆ has_replica_flag()

static const std::string& geomtools::logical_volume::has_replica_flag ( )
static

Return the name of the flag that indicated a replica.

◆ has_shape()

bool geomtools::logical_volume::has_shape ( ) const

◆ is_abstract()

bool geomtools::logical_volume::is_abstract ( ) const

◆ is_locked()

bool geomtools::logical_volume::is_locked ( ) const

Check the lock flag.

◆ is_replica()

bool geomtools::logical_volume::is_replica ( ) const

◆ locate()

uint32_t geomtools::logical_volume::locate ( const vector_3d local_position_,
bool  ignore_daugthers_ = false,
double  tolerance_ = 0.0,
double  daughter_tolerance_ = 0.0,
locate_result = 0 
) const

◆ lock()

void geomtools::logical_volume::lock ( )

Lock the volume.

◆ same()

static bool geomtools::logical_volume::same ( const logical_volume log1_,
const logical_volume log2_,
uint32_t  mode_ = 0 
)
static

◆ set_abstract()

void geomtools::logical_volume::set_abstract ( bool  a_)

◆ set_effective_material_ref()

void geomtools::logical_volume::set_effective_material_ref ( const std::string &  = "")

◆ set_effective_relative_placement()

void geomtools::logical_volume::set_effective_relative_placement ( const placement )

◆ set_effective_shape()

void geomtools::logical_volume::set_effective_shape ( const i_shape_3d )

◆ set_geometry_model()

void geomtools::logical_volume::set_geometry_model ( const i_model )

◆ set_material_ref()

void geomtools::logical_volume::set_material_ref ( const std::string &  = "")

◆ set_name()

void geomtools::logical_volume::set_name ( const std::string &  )

Set the name of the volume.

◆ set_shape() [1/2]

void geomtools::logical_volume::set_shape ( const i_shape_3d )

◆ set_shape() [2/2]

void geomtools::logical_volume::set_shape ( const i_shape_3d )

◆ tree_dump()

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

Smart print.

Reimplemented from datatools::i_tree_dumpable.

◆ unlock()

void geomtools::logical_volume::unlock ( )

Unlock the volume.


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