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

A blur spot is a measurement hit that may represents a vertex with 1D, 2D or 3D dimension. More...

#include <bayeux/geomtools/blur_spot.h>

Inheritance diagram for geomtools::blur_spot:
geomtools::base_hit geomtools::i_wires_3d_rendering datatools::i_serializable datatools::i_tree_dumpable datatools::i_clear

Public Types

enum  blur_dimension_type {
  DIMENSION_INVALID = -1, DIMENSION_ZERO = 0, dimension_zero = DIMENSION_ZERO, DIMENSION_ONE = 1,
  dimension_one = DIMENSION_ONE, DIMENSION_TWO = 2, dimension_two = DIMENSION_TWO, DIMENSION_THREE = 3,
  dimension_three = DIMENSION_THREE
}
 Dimensionality of the blur object. More...
 
enum  mode_type { MODE_INTERVAL = 0, mode_interval = MODE_INTERVAL, MODE_GAUSSIAN = 1, mode_gaussian = MODE_GAUSSIAN }
 Mode. More...
 
enum  store_mask_type { STORE_PLACEMENT = datatools::bit_mask::bit03 }
 Masks to automatically tag the attributes to be stored. More...
 
- Public Types inherited from geomtools::base_hit
enum  store_mask_type {
  STORE_NOTHING = 0, STORE_HIT_ID = datatools::bit_mask::bit00, STORE_GEOM_ID = datatools::bit_mask::bit01, STORE_AUXILIARIES = datatools::bit_mask::bit02,
  STORE_RESERVED30 = datatools::bit_mask::bit30, STORE_RESERVED31 = datatools::bit_mask::bit31
}
 Masks to automatically tag the attributes to be stored. More...
 
- 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 Types inherited from geomtools::i_wires_3d_rendering
enum  wires_rendering_option_type {
  WR_NONE = 0, WR_BASE_GRID = datatools::bit_mask::bit00, WR_BASE_GRID_LOW_DENSITY = (WR_BASE_GRID << 1), WR_BASE_GRID_HIGH_DENSITY = (WR_BASE_GRID << 2),
  WR_BASE_GRID_VERY_HIGH_DENSITY = (WR_BASE_GRID << 3), WR_BASE_GRID_HUGE_DENSITY = (WR_BASE_GRID << 4), WR_BASE_LOW_ANGLE_SAMPLING = (WR_BASE_GRID << 5), WR_BASE_HIGH_ANGLE_SAMPLING = (WR_BASE_GRID << 6),
  WR_BASE_VERY_HIGH_ANGLE_SAMPLING = (WR_BASE_GRID << 7), WR_BASE_HUGE_ANGLE_SAMPLING = (WR_BASE_GRID << 8), WR_BASE_UNUSED_09 = (WR_BASE_GRID << 9), WR_BASE_UNUSED_10 = (WR_BASE_GRID << 10),
  WR_BASE_UNUSED_11 = (WR_BASE_GRID << 11), WR_BASE_UNUSED_12 = (WR_BASE_GRID << 12), WR_BASE_UNUSED_13 = (WR_BASE_GRID << 13), WR_BASE_BOUNDINGS = (WR_BASE_GRID << 14),
  WR_BASE_EXPLODE = (WR_BASE_GRID << 15), WR_BASE_LAST = (WR_BASE_EXPLODE), WR_BASE_MASK = datatools::bit_mask::nbits16
}
 Wires rendering optional flags. More...
 
enum  sampling_level_type {
  SL_NONE = 0, SL_LOW = 1, SL_NORMAL = 2, SL_HIGH = 3,
  SL_VERY_HIGH = 4, SL_HUGE = 5
}
 Sampling levels. More...
 

Public Member Functions

double get_tolerance () const
 Return the intrinsic geometry tolerance of the object. More...
 
void set_tolerance (double tolerance_)
 Set the intrinsic geometry tolerance of the object. More...
 
bool is_dimension_zero () const
 Check dimension zero (point-like spot) More...
 
bool is_dimension_one () const
 Check dimension one. More...
 
bool is_dimension_two () const
 Check dimension two. More...
 
bool is_dimension_three () const
 Check dimension three. More...
 
void set_blur_dimension (int)
 Set the intrinsic dimension of the object. More...
 
int get_blur_dimension () const
 Return the intrinsic dimension of the object. More...
 
 blur_spot ()
 Default constructor. More...
 
 blur_spot (int8_t dimension_, double tolerance_=DEFAULT_VALUE)
 Constructor. More...
 
void set_position (const vector_3d &position_)
 Set the position of the object. More...
 
placementgrab_placement ()
 Return the mutable placement of the object. More...
 
const placementget_placement () const
 Return the no mutable placement of the object. More...
 
void set_placement (const placement &placement_)
 Set the placement of the object. More...
 
void invalidate_placement ()
 Invalidate the placement of the object. More...
 
const vector_3dget_position () const
 Return the position of the object. More...
 
const rotation_3dget_rotation () const
 Return the rotation matrix of the object. More...
 
const rotation_3dget_inverse_rotation () const
 Return the inverse rotation matrix of the object. More...
 
virtual ~blur_spot ()
 Destructor. More...
 
virtual void invalidate ()
 Invalidate the object. More...
 
void reset ()
 Reset internal data. More...
 
virtual bool is_valid () const
 Check the validity of the object. More...
 
double get_x_error () const
 Return the transverse error of the spot along the X axis. More...
 
void set_x_error (double)
 Set the transverse error of the spot along the X axis. More...
 
double get_y_error () const
 Return the transverse error of the spot along the Y axis. More...
 
void set_y_error (double)
 Set the transverse error of the spot along the Y axis. More...
 
double get_z_error () const
 Return the longitudinal error of the spot along the Z axis. More...
 
void set_z_error (double)
 Set the longitudinal error of the spot along the Z axis. More...
 
void set_errors (double, double=std::numeric_limits< double >::quiet_NaN(), double=std::numeric_limits< double >::quiet_NaN())
 Set all errors of the spot. More...
 
template<class Randomizer >
void randomize_boost (Randomizer &ran_, vector_3d &random_point_, int mode_=MODE_INTERVAL) const
 Randomize point from the spot region. More...
 
void randomize_mygsl (mygsl::rng &ran_, vector_3d &random_point_, int mode_=MODE_INTERVAL) const
 Randomize point from the spot region. More...
 
bool match (const vector_3d &position_, int mode_=MODE_INTERVAL, double nsigma1_or_tolerance_=DEFAULT_VALUE, double nsigma2_or_tolerance_=DEFAULT_VALUE, double nsigma3_or_tolerance_=DEFAULT_VALUE) const
 Check if a given point matches the object within some tolerance. More...
 
virtual void generate_wires_self (wires_type &wires_, uint32_t options_=0) const
 Generate rendering wires. 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...
 
void print () const
 Smart print shortcut. More...
 
template<class BoostRandomizer >
void randomize_boost (BoostRandomizer &ran_, vector_3d &random_point_, int mode_) const
 
- Public Member Functions inherited from geomtools::base_hit
bool has_hit_id () const
 
int32_t get_hit_id () const
 
void set_hit_id (int32_t)
 Set the hit ID integer value. More...
 
void invalidate_hit_id ()
 
bool has_geom_id () const
 Check if the geometry ID is valid. More...
 
const geomtools::geom_idget_geom_id () const
 Get a reference on the non-mutable geometry ID. More...
 
geomtools::geom_idgrab_geom_id ()
 Get a reference on the mutable geometry ID. More...
 
void set_geom_id (const geomtools::geom_id &)
 Set the geometry ID. More...
 
void invalidate_geom_id ()
 Reset the geometry ID. More...
 
bool has_auxiliaries () const
 Check if there are stored auxiliary properties. More...
 
const datatools::propertiesget_auxiliaries () const
 Get a non-mutable reference on the auxiliaries container. More...
 
datatools::propertiesgrab_auxiliaries ()
 Get a mutable reference on the auxiliaries container. More...
 
void set_auxiliaries (const datatools::properties &)
 Set the auxiliaries container. More...
 
void invalidate_auxiliaries ()
 Reset the mutable auxiliaries container. More...
 
 base_hit ()
 Default constructor. More...
 
virtual ~base_hit ()
 Destructor. More...
 
void reset ()
 Reset the internals of the hit, making it invalid. More...
 
virtual void clear ()
 Reset the internals of the hit, making it invalid. More...
 
base_hitmeasure (i_measurement &)
 Apply a measurement on the current hit. More...
 
void print_tree (std::ostream &out_=std::clog, const boost::property_tree::ptree &options_=datatools::i_tree_dumpable::empty_options()) const override
 
void dump () const
 Smart print (default behaviour) 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...
 
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
 
- Public Member Functions inherited from datatools::i_clear
virtual ~i_clear ()
 Destructor. More...
 
- Public Member Functions inherited from geomtools::i_wires_3d_rendering
virtual ~i_wires_3d_rendering ()
 Destructor. More...
 
void generate_wires (wires_type &wires_, const placement &positioning_, uint32_t options_=0) const
 
void generate_wires (wires_type &wires_, const geomtools::vector_3d &position_, const geomtools::rotation_3d &rotation_, uint32_t options_=0) const
 

Static Public Attributes

static const double DEFAULT_VALUE
 Special default real value. More...
 
static const double DEFAULT_NSIGMA
 Special sigma factor. More...
 
- Static Public Attributes inherited from geomtools::base_hit
static const int32_t INVALID_HIT_ID = -1
 

Protected Member Functions

bool _match_0d (const vector_3d &position_, double tolerance_=DEFAULT_VALUE) const
 
bool _match_1d (const vector_3d &position_, int mode_=MODE_INTERVAL, double nsigma1_or_tolerance_=DEFAULT_VALUE, double nsigma2_or_tolerance_=DEFAULT_VALUE) const
 
bool _match_2d (const vector_3d &position_, int mode_=MODE_INTERVAL, double nsigma1_or_tolerance_=DEFAULT_VALUE, double nsigma2_or_tolerance_=DEFAULT_VALUE, double nsigma3_or_tolerance_=DEFAULT_VALUE) const
 
bool _match_3d (const vector_3d &position_, int mode_=MODE_INTERVAL, double nsigma1_or_tolerance_=DEFAULT_VALUE, double nsigma2_or_tolerance_=DEFAULT_VALUE, double nsigma3_or_tolerance_=DEFAULT_VALUE) const
 
- Protected Member Functions inherited from geomtools::base_hit
void _store_set (uint32_t bit_mask_)
 Set the bits from a mask. More...
 
void _store_unset (uint32_t bit_mask_)
 Unset the bits from a mask. More...
 
bool _store_check (uint32_t bit_mask_) const
 Check the bits from a mask. More...
 

Additional Inherited Members

- 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_)
 
- Static Public Member Functions inherited from geomtools::i_wires_3d_rendering
static uint32_t linear_sampling (sampling_level_type)
 Return linear sampling from sampling level. More...
 
static uint32_t linear_sampling_from_options (uint32_t)
 Return linear sampling from rendering options. More...
 
static uint32_t angular_sampling (sampling_level_type)
 Return angular sampling from sampling level. More...
 
static uint32_t angular_sampling_from_options (uint32_t)
 Return angular sampling from rendering options. More...
 
static void boost_linear_sampling (uint32_t &)
 Boost the linear sampling. More...
 
- Protected Attributes inherited from geomtools::base_hit
uint32_t _store
 

Detailed Description

A blur spot is a measurement hit that may represents a vertex with 1D, 2D or 3D dimension.

Member Enumeration Documentation

◆ blur_dimension_type

Dimensionality of the blur object.

Enumerator
DIMENSION_INVALID 
DIMENSION_ZERO 
dimension_zero 
DIMENSION_ONE 
dimension_one 
DIMENSION_TWO 
dimension_two 
DIMENSION_THREE 
dimension_three 

◆ mode_type

Mode.

Enumerator
MODE_INTERVAL 
mode_interval 
MODE_GAUSSIAN 
mode_gaussian 

◆ store_mask_type

Masks to automatically tag the attributes to be stored.

Enumerator
STORE_PLACEMENT 

Constructor & Destructor Documentation

◆ blur_spot() [1/2]

geomtools::blur_spot::blur_spot ( )

Default constructor.

◆ blur_spot() [2/2]

geomtools::blur_spot::blur_spot ( int8_t  dimension_,
double  tolerance_ = DEFAULT_VALUE 
)

Constructor.

◆ ~blur_spot()

virtual geomtools::blur_spot::~blur_spot ( )
virtual

Destructor.

Member Function Documentation

◆ _match_0d()

bool geomtools::blur_spot::_match_0d ( const vector_3d position_,
double  tolerance_ = DEFAULT_VALUE 
) const
protected

◆ _match_1d()

bool geomtools::blur_spot::_match_1d ( const vector_3d position_,
int  mode_ = MODE_INTERVAL,
double  nsigma1_or_tolerance_ = DEFAULT_VALUE,
double  nsigma2_or_tolerance_ = DEFAULT_VALUE 
) const
protected

◆ _match_2d()

bool geomtools::blur_spot::_match_2d ( const vector_3d position_,
int  mode_ = MODE_INTERVAL,
double  nsigma1_or_tolerance_ = DEFAULT_VALUE,
double  nsigma2_or_tolerance_ = DEFAULT_VALUE,
double  nsigma3_or_tolerance_ = DEFAULT_VALUE 
) const
protected

◆ _match_3d()

bool geomtools::blur_spot::_match_3d ( const vector_3d position_,
int  mode_ = MODE_INTERVAL,
double  nsigma1_or_tolerance_ = DEFAULT_VALUE,
double  nsigma2_or_tolerance_ = DEFAULT_VALUE,
double  nsigma3_or_tolerance_ = DEFAULT_VALUE 
) const
protected

◆ generate_wires_self()

virtual void geomtools::blur_spot::generate_wires_self ( wires_type wires_,
uint32_t  options_ = 0 
) const
virtual

Generate rendering wires.

Implements geomtools::i_wires_3d_rendering.

◆ get_blur_dimension()

int geomtools::blur_spot::get_blur_dimension ( ) const

Return the intrinsic dimension of the object.

◆ get_inverse_rotation()

const rotation_3d& geomtools::blur_spot::get_inverse_rotation ( ) const

Return the inverse rotation matrix of the object.

◆ get_placement()

const placement& geomtools::blur_spot::get_placement ( ) const

Return the no mutable placement of the object.

◆ get_position()

const vector_3d& geomtools::blur_spot::get_position ( ) const

Return the position of the object.

◆ get_rotation()

const rotation_3d& geomtools::blur_spot::get_rotation ( ) const

Return the rotation matrix of the object.

◆ get_tolerance()

double geomtools::blur_spot::get_tolerance ( ) const

Return the intrinsic geometry tolerance of the object.

◆ get_x_error()

double geomtools::blur_spot::get_x_error ( ) const

Return the transverse error of the spot along the X axis.

◆ get_y_error()

double geomtools::blur_spot::get_y_error ( ) const

Return the transverse error of the spot along the Y axis.

◆ get_z_error()

double geomtools::blur_spot::get_z_error ( ) const

Return the longitudinal error of the spot along the Z axis.

◆ grab_placement()

placement& geomtools::blur_spot::grab_placement ( )

Return the mutable placement of the object.

◆ invalidate()

virtual void geomtools::blur_spot::invalidate ( )
virtual

Invalidate the object.

Reimplemented from geomtools::base_hit.

◆ invalidate_placement()

void geomtools::blur_spot::invalidate_placement ( )

Invalidate the placement of the object.

◆ is_dimension_one()

bool geomtools::blur_spot::is_dimension_one ( ) const

Check dimension one.

◆ is_dimension_three()

bool geomtools::blur_spot::is_dimension_three ( ) const

Check dimension three.

◆ is_dimension_two()

bool geomtools::blur_spot::is_dimension_two ( ) const

Check dimension two.

◆ is_dimension_zero()

bool geomtools::blur_spot::is_dimension_zero ( ) const

Check dimension zero (point-like spot)

◆ is_valid()

virtual bool geomtools::blur_spot::is_valid ( ) const
virtual

Check the validity of the object.

Reimplemented from geomtools::base_hit.

◆ match()

bool geomtools::blur_spot::match ( const vector_3d position_,
int  mode_ = MODE_INTERVAL,
double  nsigma1_or_tolerance_ = DEFAULT_VALUE,
double  nsigma2_or_tolerance_ = DEFAULT_VALUE,
double  nsigma3_or_tolerance_ = DEFAULT_VALUE 
) const

Check if a given point matches the object within some tolerance.

◆ print()

void geomtools::blur_spot::print ( ) const

Smart print shortcut.

◆ randomize_boost() [1/2]

template<class Randomizer >
void geomtools::blur_spot::randomize_boost ( Randomizer &  ran_,
vector_3d random_point_,
int  mode_ = MODE_INTERVAL 
) const

Randomize point from the spot region.

◆ randomize_boost() [2/2]

template<class BoostRandomizer >
void geomtools::blur_spot::randomize_boost ( BoostRandomizer &  ran_,
vector_3d random_point_,
int  mode_ 
) const

◆ randomize_mygsl()

void geomtools::blur_spot::randomize_mygsl ( mygsl::rng ran_,
vector_3d random_point_,
int  mode_ = MODE_INTERVAL 
) const

Randomize point from the spot region.

◆ reset()

void geomtools::blur_spot::reset ( )

Reset internal data.

◆ set_blur_dimension()

void geomtools::blur_spot::set_blur_dimension ( int  )

Set the intrinsic dimension of the object.

◆ set_errors()

void geomtools::blur_spot::set_errors ( double  ,
double  = std::numeric_limits< double >::quiet_NaN(),
double  = std::numeric_limits< double >::quiet_NaN() 
)

Set all errors of the spot.

◆ set_placement()

void geomtools::blur_spot::set_placement ( const placement placement_)

Set the placement of the object.

◆ set_position()

void geomtools::blur_spot::set_position ( const vector_3d position_)

Set the position of the object.

◆ set_tolerance()

void geomtools::blur_spot::set_tolerance ( double  tolerance_)

Set the intrinsic geometry tolerance of the object.

◆ set_x_error()

void geomtools::blur_spot::set_x_error ( double  )

Set the transverse error of the spot along the X axis.

◆ set_y_error()

void geomtools::blur_spot::set_y_error ( double  )

Set the transverse error of the spot along the Y axis.

◆ set_z_error()

void geomtools::blur_spot::set_z_error ( double  )

Set the longitudinal error of the spot along the Z axis.

◆ tree_dump()

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

Smart print.

Reimplemented from geomtools::base_hit.

Member Data Documentation

◆ DEFAULT_NSIGMA

const double geomtools::blur_spot::DEFAULT_NSIGMA
static

Special sigma factor.

◆ DEFAULT_VALUE

const double geomtools::blur_spot::DEFAULT_VALUE
static

Special default real value.


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