Skip to content

C++ Curve

cpp
template <typename ValueT, size_t XCount, typename AxisT = int32_t>
class table::Curve

Owning fixed-size one-axis lookup curve.

Curve

cpp
table::Curve< ValueT, XCount, AxisT >::Curve()=default

Constructs an uninitialised curve with zeroed storage.

init

cpp
Status table::Curve< ValueT, XCount, AxisT >::init(const AxisT(&xAxis)[XCount], const ValueT(&cells)[XCount]) noexcept

Copies and validates a complete curve.

xAxis Strictly increasing X-axis points. cells Cell values. Operation status.

isReady

cpp
bool table::Curve< ValueT, XCount, AxisT >::isReady() const noexcept

Tests whether initialisation succeeded.

True when ready for lookup.

lookup

cpp
Status table::Curve< ValueT, XCount, AxisT >::lookup(float x, float &output) const noexcept

Performs a clamped lookup.

x Finite X coordinate. output Result written only on success. Operation status.

setX

cpp
Status table::Curve< ValueT, XCount, AxisT >::setX(size_t index, AxisT value) noexcept

Replaces an X-axis point while preserving ordering.

index Point index. value New value. Operation status.

setCell

cpp
Status table::Curve< ValueT, XCount, AxisT >::setCell(size_t index, ValueT value) noexcept

Replaces a cell.

index Point index. value New value. Operation status.

x

cpp
Status table::Curve< ValueT, XCount, AxisT >::x(size_t index, AxisT &value) const noexcept

Reads an X-axis point.

index Point index. value Value written only on success. Operation status.

cell

cpp
Status table::Curve< ValueT, XCount, AxisT >::cell(size_t index, ValueT &value) const noexcept

Reads a cell.

index Point index. value Value written only on success. Operation status.

nativeView

cpp
const table_view_t * table::Curve< ValueT, XCount, AxisT >::nativeView() const noexcept

Accesses the immutable native view.

View pointer, or null before initialisation.

Released under the MIT Licence.