Trait.hpp
Directly measure a target quality about a type of object.
These objects are able to measure a specific trait on another object. They (will eventually) interface smoothly with DataNodes for data collection.
-
template<typename TARGET_T, typename VALUE_T = double>
class Trait - #include <Trait.hpp>
Public Types
Public Functions
-
template<typename TARGET_T>
class BaseTrait - #include <Trait.hpp>
-
template<typename TARGET_T, typename VALUE_T = double>
class Trait - #include <Trait.hpp>
Public Functions
-
Trait(const Trait&) = default
-
Trait(Trait&&) = default
-
inline const std::string &GetName() const
-
inline const std::string &GetDesc() const
-
inline const fun_t &GetFun() const
-
inline const range_t &GetRange() const
-
inline void SetName(const std::string &_in)
-
inline void SetDesc(const std::string &_in)
-
inline void SetFun(const fun_t &_in)
-
inline void SetRange(const range_t &_in)
-
inline void SetMin(value_t min)
-
inline void SetMax(value_t max)
-
inline double EvalValue(target_t &target) const
-
inline size_t EvalBin(target_t &target, size_t num_bins) const
-
Trait(const Trait&) = default
-
template<typename TARGET_T>
class TraitSet - #include <Trait.hpp>
A TraitSet houses a collection of traits and can trigger them to all be evaluated at once.