Isis 3 Programmer Reference
MinimumDifference.h
1#ifndef MinimumDifference_h
2#define MinimumDifference_h
8/* SPDX-License-Identifier: CC0-1.0 */
9
10#include "AutoReg.h"
11
12namespace Isis {
13 class Pvl;
14 class Chip;
15
41 class MinimumDifference : public AutoReg {
42 public:
53 MinimumDifference(Pvl &pvl) : AutoReg(pvl) { };
54
56 virtual ~MinimumDifference() {};
57
61 virtual double MostLenientTolerance() {
62 return DBL_MAX;
63 }
64
65 protected:
66 virtual double MatchAlgorithm(Chip &pattern, Chip &subsearch);
67 virtual bool CompareFits(double fit1, double fit2);
68 virtual double IdealFit() const {
69 return 0.0;
70 };
71 virtual QString AlgorithmName() const {
72 return "MinimumDifference";
73 };
74
75 };
76};
77
78#endif
Auto Registration class.
Definition AutoReg.h:167
A small chip of data used for pattern matching.
Definition Chip.h:86
Minimum difference pattern matching.
virtual ~MinimumDifference()
Destructor.
virtual QString AlgorithmName() const
Returns the name of the algorithm.
virtual bool CompareFits(double fit1, double fit2)
This virtual method must return if the 1st fit is equal to or better than the second fit.
virtual double IdealFit() const
Returns the ideal (perfect) fit that could be returned by the MatchAlgorithm.
virtual double MatchAlgorithm(Chip &pattern, Chip &subsearch)
Minimum difference match algorithm.
virtual double MostLenientTolerance()
Minimum tolerance specific to algorithm.
MinimumDifference(Pvl &pvl)
Construct a MinimumDifference search algorithm.
Container for cube-like labels.
Definition Pvl.h:119
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16