chronon::params::Param
Self-registering parameter that hooks into its owning ParameterSet. More...
#include <Param.hpp>
Inherits from chronon::params::ParamBase
Public Functions
| Name | |
|---|---|
| virtual std::string | valueAsString() const override |
| const T & | value() const |
| virtual bool | validate() const override |
| void | setValue(const T & v) Set value, applying validator if installed. |
| void | setValidator(std::function< bool(const T &)> validator) |
| virtual void | setFromString(const std::string & s) override Parse s and assign it as the current value. |
| virtual void | reset() override |
| Param & | operator=(const Param & ) =delete |
| Param & | operator=(Param && ) =delete |
| Param & | operator=(const T & v) Assignment shorthand: params.num_requests = 50; |
| operator const T &() const Implicit read access: uint32_t n = params.num_requests; | |
| virtual const std::string & | name() const override |
| virtual void | loadFromYAML(const void * yaml_node) override Defined in [YAMLSerialization.hpp]. |
| virtual bool | isModified() const override |
| virtual const std::string & | description() const override |
| const T & | defaultValue() const |
| virtual std::string | defaultAsString() const override |
| Param(ParameterSet * owner, const std::string & name, T default_val, const std::string & desc) Construct and self-register with owner. | |
| Param(const Param & ) =delete | |
| Param(Param && ) =delete |
Additional inherited members
Public Functions inherited from chronon::params::ParamBase
| Name | |
|---|---|
| virtual | ~ParamBase() =default |
Detailed Description
template <ParameterType T>
class chronon::params::Param;
Self-registering parameter that hooks into its owning ParameterSet.
Template Parameters:
- T Parameter value type satisfying [ParameterType].
Registration in the constructor lets the owning set iterate every parameter without manual listing, which drives YAML serialization/deserialization.
class CPUParams : public ParameterSet {
public:
Param<uint32_t> num_requests{this, "num_requests", 100, "Number of requests"};
Param<uint32_t> request_delay{this, "request_delay", 1, "Request delay"};
};
uint32_t n = params.num_requests; // implicit conversion
params.num_requests = 50; // assignment
Public Functions Documentation
function valueAsString
inline virtual std::string valueAsString() const override
Reimplements: chronon::params::ParamBase::valueAsString
function value
inline const T & value() const
function validate
inline virtual bool validate() const override
Reimplements: chronon::params::ParamBase::validate
function setValue
inline void setValue(
const T & v
)
Set value, applying validator if installed.
Exceptions:
- std::invalid_argument if validation fails.
function setValidator
inline void setValidator(
std::function< bool(const T &)> validator
)
function setFromString
inline virtual void setFromString(
const std::string & s
) override
Parse s and assign it as the current value.
Exceptions:
- std::invalid_argument if parsing or validation fails.
Reimplements: chronon::params::ParamBase::setFromString
function reset
inline virtual void reset() override
Reimplements: chronon::params::ParamBase::reset
function operator=
Param & operator=(
const Param &
) =delete
function operator=
Param & operator=(
Param &&
) =delete
function operator=
inline Param & operator=(
const T & v
)
Assignment shorthand: params.num_requests = 50;
function operator const T &
inline operator const T &() const
Implicit read access: uint32_t n = params.num_requests;
function name
inline virtual const std::string & name() const override
Reimplements: chronon::params::ParamBase::name
function loadFromYAML
virtual void loadFromYAML(
const void * yaml_node
) override
Defined in [YAMLSerialization.hpp].
Reimplements: chronon::params::ParamBase::loadFromYAML
function isModified
inline virtual bool isModified() const override
Return: true if the current value differs from the default.
Reimplements: chronon::params::ParamBase::isModified
function description
inline virtual const std::string & description() const override
Reimplements: chronon::params::ParamBase::description
function defaultValue
inline const T & defaultValue() const
function defaultAsString
inline virtual std::string defaultAsString() const override
Reimplements: chronon::params::ParamBase::defaultAsString
function Param
Param(
ParameterSet * owner,
const std::string & name,
T default_val,
const std::string & desc
)
Construct and self-register with owner.
Parameters:
- owner Owning ParameterSet (non-null).
function Param
Param(
const Param &
) =delete
function Param
Param(
Param &&
) =delete
Updated on 2026-05-26 at 05:42:32 +0000