Vespucci  1.0.0
distancemetricwrapper.h
Go to the documentation of this file.
1 /*******************************************************************************
2  Copyright (C) 2014-2016 Wright State University - All Rights Reserved
3  Daniel P. Foose - Maintainer/Lead Developer
4 
5  This file is part of Vespucci.
6 
7  Vespucci is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  Vespucci is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with Vespucci. If not, see <http://www.gnu.org/licenses/>.
19 *******************************************************************************/
20 #ifndef DISTANCEMETRICWRAPPER_H
21 #define DISTANCEMETRICWRAPPER_H
22 #include "Global/libvespucci.h"
23 #include <mlpack/core.hpp>
24 
25 namespace Vespucci{
26  namespace Math{
28  {
29  public:
30  DistanceMetricWrapper(std::string metric_description);
31  double Evaluate(arma::vec &first, arma::vec &second);
32  private:
33  std::string metric_description_;
34  mlpack::metric::ChebyshevDistance chebyshev_;
35  mlpack::metric::EuclideanDistance euclidean_;
36  mlpack::metric::ManhattanDistance manhattan_;
37  mlpack::metric::SquaredEuclideanDistance squared_euclidean_;
38  };
39  }
40 }
41 
42 
43 #endif // DISTANCEMETRICWRAPPER_H
#define VESPUCCI_EXPORT
Definition: libvespucci.h:7
A namespace for "global" functions, including math functions.