struct mola::MatchingDistanceProfile

Overview

Flat-only stand-in used when building against an mp2p_icp release that predates mp2p_icp::MatchingDistanceProfile.

It exposes the same (small) surface the map implementations use, and is constrained to the flat case by construction: there is no way to build a range-adaptive profile, because the matcher on the other side of the interface cannot ask for one either. This is what keeps the search implementations themselves free of preprocessor branches.

#include <MatchingDistanceProfileCompat.h>

struct MatchingDistanceProfile
{
    // fields

    float near = 0.40f;
    float far = 0.40f;

    // construction

    MatchingDistanceProfile();
    MatchingDistanceProfile(float flatThreshold);

    // methods

    bool isFlat() const;
    bool needsRange() const;
    float operator () (float) const;
};

Construction

MatchingDistanceProfile(float flatThreshold)

Implicit on purpose, matching the real type.