18 #ifndef GEOMTOOLS_BLUR_SPOT_H 19 #define GEOMTOOLS_BLUR_SPOT_H 1 23 #include <boost/serialization/access.hpp> 24 #include <boost/random/normal_distribution.hpp> 197 double = std::numeric_limits<double>::quiet_NaN(),
198 double = std::numeric_limits<double>::quiet_NaN());
201 template <
class Randomizer>
220 uint32_t options_ = 0)
const;
223 virtual void tree_dump(std::ostream & out_ = std::clog,
224 const std::string & title_ =
"",
225 const std::string & indent_ =
"",
226 bool inherit_ =
false)
const;
255 int8_t _blur_dimension_;
272 template <class BoostRandomizer>
284 local_pos.setZ(_z_error_ * ( -1. + 2 * ran_()));
286 boost::random::normal_distribution<double> gauss_random;
287 local_pos.setZ(gauss_random(ran_, boost::random::normal_distribution<double>::param_type(0.0, _z_error_)));
291 local_pos.setX(_x_error_ * ( -1. + 2 * ran_()));
292 local_pos.setY(_y_error_ * ( -1. + 2 * ran_()));
294 boost::random::normal_distribution<double> gauss_random;
295 local_pos.setX(gauss_random(ran_, boost::random::normal_distribution<double>::param_type(0.0, _x_error_)));
296 local_pos.setY(gauss_random(ran_, boost::random::normal_distribution<double>::param_type(0.0, _y_error_)));
300 local_pos.setX(_x_error_ * ( -1. + 2 * ran_()));
301 local_pos.setY(_y_error_ * ( -1. + 2 * ran_()));
302 local_pos.setZ(_z_error_ * ( -1. + 2 * ran_()));
304 boost::random::normal_distribution<double> gauss_random;
305 local_pos.setX(gauss_random(ran_, boost::random::normal_distribution<double>::param_type(0.0, _x_error_)));
306 local_pos.setY(gauss_random(ran_, boost::random::normal_distribution<double>::param_type(0.0, _y_error_)));
307 local_pos.setZ(gauss_random(ran_, boost::random::normal_distribution<double>::param_type(0.0, _z_error_)));
316 #include <boost/serialization/export.hpp> 324 #include <boost/serialization/version.hpp> 327 #endif // GEOMTOOLS_BLUR_SPOT_H #define DR_CLASS_INIT(Introspectable)
Inform Camp that class Introspectable exists and trigger the automatic registration of dedicated refl...
Definition: reflection_interface.h:149
#define DATATOOLS_SERIALIZATION_DECLARATION()
Definition: i_serializable.h:266
#define DR_CLASS_RTTI()
Declare Camp RTTI within class declaration.
Definition: reflection_interface.h:46
#define GEOMTOOLS_HIT_REGISTRATION_INTERFACE(HitClassName)
Definition: base_hit.h:393
Pseudo random number generator.
Definition: rng.h:53