Template Struct SO2_Adaptor

Struct Documentation

template<class T, class DataSource, typename _DistanceType = T, typename IndexType = uint32_t>
struct SO2_Adaptor

SO2 distance functor Corresponding distance traits: nanoflann::metric_SO2

Template Parameters:
  • T – Type of the elements (e.g. double, float, uint8_t)

  • DataSource – Source of the data, i.e. where the vectors are stored

  • _DistanceType – Type of distance variables (must be signed) (e.g. float, double) orientation is constrained to be in [-pi, pi]

  • IndexType – Type of the arguments with which the data can be accessed (e.g. float, double, int64_t, T*)

Public Types

using ElementType = T
using DistanceType = _DistanceType

Public Functions

inline SO2_Adaptor(const DataSource &_data_source)
inline DistanceType evalMetric(const T *a, const IndexType b_idx, size_t size) const
template<typename U, typename V>
inline DistanceType accum_dist(const U a, const V b, const size_t) const

Note: this assumes that input angles are already in the range [-pi,pi]

Public Members

const DataSource &data_source