C++ Map
template <typename ValueT, size_t XCount, size_t YCount, typename XAxisT = int32_t, typename YAxisT = int32_t>
class table::MapOwning fixed-size two-axis lookup map.
Map
table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::Map()=defaultConstructs an uninitialised map with zeroed storage.
init
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::init(const XAxisT(&xAxis)[XCount], const YAxisT(&yAxis)[YCount], const ValueT(&cells)[XCount *YCount]) noexceptCopies and validates a complete row-major map.
xAxis Strictly increasing X-axis points. yAxis Strictly increasing Y-axis points. cells Flat row-major cells. Operation status.
init
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::init(const XAxisT(&xAxis)[XCount], const YAxisT(&yAxis)[YCount], const ValueT(&cells)[YCount][XCount]) noexceptCopies and validates a complete two-dimensional row-major map.
xAxis Strictly increasing X-axis points. yAxis Strictly increasing Y-axis points. cells Cells indexed as [y][x]. Operation status.
isReady
bool table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::isReady() const noexceptTests whether initialisation succeeded.
True when ready for lookup.
lookup
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::lookup(float x, float y, float &output) const noexceptPerforms a clamped bilinear lookup.
x Finite X coordinate. y Finite Y coordinate. output Result written only on success. Operation status.
setX
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::setX(size_t index, XAxisT value) noexceptReplaces an X-axis point while preserving ordering.
index Point index. value New value. Operation status.
setY
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::setY(size_t index, YAxisT value) noexceptReplaces a Y-axis point while preserving ordering.
index Point index. value New value. Operation status.
setCell
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::setCell(size_t xIndex, size_t yIndex, ValueT value) noexceptReplaces a map cell.
xIndex X index. yIndex Y index. value New value. Operation status.
x
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::x(size_t index, XAxisT &value) const noexceptReads an X-axis point.
index Point index. value Value written only on success. Operation status.
y
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::y(size_t index, YAxisT &value) const noexceptReads a Y-axis point.
index Point index. value Value written only on success. Operation status.
cell
Status table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::cell(size_t xIndex, size_t yIndex, ValueT &value) const noexceptReads a map cell.
xIndex X index. yIndex Y index. value Value written only on success. Operation status.
nativeView
const table_view_t * table::Map< ValueT, XCount, YCount, XAxisT, YAxisT >::nativeView() const noexceptAccesses the immutable native view.
View pointer, or null before initialisation.
