85 virtual void Set(
const T& value) = 0;
Represents a continuous numeric interval with inclusive lower and upper bounds.
Definition peak_common_interval.hpp:44
Represents a numeric range with defined boundaries and a fixed increment.
Definition peak_common_range.hpp:44
Interface for objects that can be serialized to and deserialized from an archive.
Definition peak_common_iserializable.hpp:31
Base interface for auto feature implementations.
Definition peak_afl_ifeature.hpp:61
virtual PEAK_COMMON_NO_DISCARD T Get() const =0
Gets the current feature value.
virtual ~IFeature()=default
Virtual destructor for proper cleanup of derived classes.
virtual void Set(const T &value)=0
Sets the feature value.
Interface for features that have a list of valid values.
Definition peak_afl_ifeature.hpp:171
virtual PEAK_COMMON_NO_DISCARD std::vector< T > GetList() const =0
Gets the list of valid values for this feature.
Interface for features that have a valid range of values.
Definition peak_afl_ifeature.hpp:128
virtual PEAK_COMMON_NO_DISCARD peak::common::detail::RangeT< T > GetRange() const =0
Gets the valid range for this feature's values.
#define PEAK_COMMON_NO_DISCARD
Compatability macro for the nodiscard attribute.
Definition peak_common_defines.hpp:91
Interface definitions and implementations for individual module types used within a pipeline.
Definition peak_afl_generic_auto_brightness.hpp:39
Interfaces and implementations for defining and controlling data processing pipelines.
Definition peak_afl_generic_auto_brightness.hpp:37
peak::common::detail::RangeT< double > RangeD
Type alias for double-precision range values.
Definition peak_afl_ifeature.hpp:27
peak::common::detail::IntervalT< double > IntervalD
Type alias for double-precision interval values.
Definition peak_afl_ifeature.hpp:29