|
mmcfilters
Public API documentation
|
Shared altitude type contracts and buffer aliases. More...
#include <concepts>#include <cstdint>#include <span>#include <type_traits>#include <vector>

Go to the source code of this file.
Concepts | |
| concept | mmcfilters::AltitudeValue |
| Value types accepted by generic altitude helpers. | |
Typedefs | |
| template<AltitudeValue T> | |
| using | mmcfilters::NodeAltitudeSpan = std::span< const T > |
| Read-only contiguous view over node altitudes. | |
| template<AltitudeValue T> | |
| using | mmcfilters::AltitudeDifference = typename detail::AltitudeDifferenceSelector< T >::type |
| Arithmetic result type for altitude differences. | |
| template<AltitudeValue T> | |
| using | mmcfilters::NodeAltitudeBuffer = std::vector< T > |
| Owning dense altitude buffer indexed by internal node id. | |
Variables | |
| template<class T > | |
| constexpr bool | mmcfilters::detail::SupportedIntegralAltitude = std::is_integral_v<std::remove_cv_t<T>> && sizeof(std::remove_cv_t<T>) < sizeof(std::int64_t) |
True when T is an integral altitude type with safe 64-bit differences. | |
| template<class T > | |
| constexpr bool | mmcfilters::detail::SupportedFloatingAltitude = std::is_floating_point_v<std::remove_cv_t<T>> |
True when T is a floating-point altitude type. | |
Shared altitude type contracts and buffer aliases.
Definition in file Altitude.hpp.
| using mmcfilters::AltitudeDifference = typedef typename detail::AltitudeDifferenceSelector<T>::type |
Arithmetic result type for altitude differences.
Integral altitudes use a signed 64-bit difference type to avoid narrowing when comparing typed trees whose altitude domain is wider than uint8_t. Floating-point altitudes keep their own precision so callers can express real-valued differences such as 0.05f.
Definition at line 72 of file Altitude.hpp.
| using mmcfilters::NodeAltitudeBuffer = typedef std::vector<T> |
Owning dense altitude buffer indexed by internal node id.
ValuedMorphologicalTree<T> owns one of these buffers. Read-only kernels may instead accept a NodeAltitudeSpan<T> or ValuedMorphologicalTreeView<T> when the topology and altitude storage have separate owners.
Definition at line 81 of file Altitude.hpp.
| using mmcfilters::NodeAltitudeSpan = typedef std::span<const T> |
Read-only contiguous view over node altitudes.
The span is indexed by dense internal NodeId. Callers must provide at least one value for every internal node slot in the associated topology.
Definition at line 48 of file Altitude.hpp.
|
inlineconstexpr |
True when T is a floating-point altitude type.
Definition at line 23 of file Altitude.hpp.
|
inlineconstexpr |
True when T is an integral altitude type with safe 64-bit differences.
Definition at line 20 of file Altitude.hpp.