template struct cvflann::L2_Simple

Squared Euclidean distance functor.

This is the simpler, unrolled version. This is preferable for very low dimensionality data (eg 3D points)

#include <dist.h>

template <class T>
struct L2_Simple
{
    // typedefs

    typedef T ElementType;
    typedef True is_kdtree_distance;
    typedef True is_vector_space_distance;
    typedef Accumulator<T>::Type ResultType;

    // methods

    template <
        typename U,
        typename V
        >
    ResultType
    accum_dist(
        const U& a,
        const V& b,
        int
        ) const;

    template <
        typename Iterator1,
        typename Iterator2
        >
    ResultType
    operator()(
        Iterator1 a,
        Iterator2 b,
        size_t size,
        ResultType = -1
        ) const;
};