Package.hpp
Go to the documentation of this file.
1
// Copyright 2019, University of Maryland and the MANGO development team.
2
//
3
// This file is part of MANGO.
4
//
5
// MANGO is free software: you can redistribute it and/or modify it
6
// under the terms of the GNU Lesser General Public License as
7
// published by the Free Software Foundation, either version 3 of the
8
// License, or (at your option) any later version.
9
//
10
// MANGO is distributed in the hope that it will be useful, but
11
// WITHOUT ANY WARRANTY; without even the implied warranty of
12
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
// Lesser General Public License for more details.
14
//
15
// You should have received a copy of the GNU Lesser General Public
16
// License along with MANGO. If not, see
17
// <https://www.gnu.org/licenses/>.
18
19
#ifndef MANGO_PACKAGE_H
20
#define MANGO_PACKAGE_H
21
22
namespace
mango
{
23
24
class
Solver;
25
class
Least_squares_solver;
26
27
//////////////////////////////////////////////////////////////////////////////////////
28
// Abstract class for optimization packages
29
class
Package
{
30
public
:
31
virtual
void
optimize
(
Solver
*) = 0;
32
virtual
void
optimize_least_squares
(
Least_squares_solver
*) = 0;
33
};
34
}
35
36
#endif
mango::Package
Definition:
Package.hpp:29
mango::Least_squares_solver
Definition:
Least_squares_solver.hpp:28
mango::Package::optimize
virtual void optimize(Solver *)=0
mango
This C++ namespace contains everything related to MANGO.
Definition:
Imfil.hpp:7
mango::Solver
Definition:
Solver.hpp:31
mango::Package::optimize_least_squares
virtual void optimize_least_squares(Least_squares_solver *)=0