8#ifndef PYEXPORTHEURISTICS_H_INCLUDED
9#define PYEXPORTHEURISTICS_H_INCLUDED
20#include "boost/python.hpp"
27 namespace bp = boost::python;
28 bp::object HeuristicsModule(bp::handle<>(bp::borrowed(PyImport_AddModule(
"FMT.Heuristics"))));
29 bp::scope().attr(
"Heuristics") = HeuristicsModule;
30 bp::scope HeuristicsModule_scope = HeuristicsModule;
31 bp::scope().attr(
"__doc__") =
".. module:: Heuristics\n"
33 " :platform: Unix, Windows\n"
34 " :synopsis: Module used for Heuristics.\n"
47 bp::class_<Heuristics::FMToperatingarea>(
"FMToperatingarea",
"@DocString(FMToperatingarea)")
48 .def(bp::init<const Core::FMTmask&, const double&>())
49 .def_pickle(FMT_pickle_suite<Heuristics::FMToperatingarea>())
51 "@DocString(FMToperatingarea::getneighbors)")
53 "@DocString(FMToperatingarea::setneighbors)")
55 "@DocString(FMToperatingarea::getmask)")
57 "@DocString(FMToperatingarea::getneihgborsperimeter)");
59 define_pylist<Heuristics::FMToperatingarea>();
61 bp::class_<Heuristics::FMToperatingareascheme,bp::bases<Heuristics::FMToperatingarea>>(
"FMToperatingareascheme",
"@DocString(FMToperatingareascheme)")
63 const size_t&,
const size_t&,
const size_t&,
const size_t&,
double>())
65 "@DocString(FMToperatingareascheme::presolve)");
67 define_pylist<Heuristics::FMToperatingareascheme>();
69 bp::class_<Heuristics::FMToperatingareaclusterbinary,bp::bases<Heuristics::FMToperatingarea>>(
"FMToperatingareaclusterbinary",
"@DocString(FMToperatingareaclusterbinary)");
71 define_pylist<Heuristics::FMToperatingareaclusterbinary>();
73 bp::class_<Heuristics::FMToperatingareacluster>(
"FMToperatingareacluster",
"@DocString(FMToperatingareacluster)")
74 .def(bp::init<const Heuristics::FMToperatingareacluster&,const double&, const double&>())
76 "@DocString(FMToperatingareacluster::getfilteredcluster)")
78 "@DocString(FMToperatingareacluster::getallmasks)")
80 "@DocString(FMToperatingareacluster::getcentroid)")
82 "@DocString(FMToperatingareacluster::setminimalarea)")
84 "@DocString(FMToperatingareacluster::setmaximalarea)");
86 define_pylist<Heuristics::FMToperatingareacluster>();
88 bp::class_<Heuristics::FMTlpheuristic, bp::bases<Core::FMTobject, Models::FMTlpsolver>>(
"FMTlpheuristic",
"@DocString(Heuristics::FMTlpheuristic)");
90 bp::class_<Heuristics::FMToperatingareaclusterer, bp::bases<Heuristics::FMTlpheuristic>>(
"Heuristics::FMToperatingareaclusterer",
"@DocString(FMToperatingareaclusterer)")
92 "@DocString(FMToperatingareaclusterer::initialsolve)")
94 "@DocString(FMToperatingareaclusterer::branchnboundsolve)")
96 "@DocString(FMToperatingareaclusterer::setnumberofsimulationpass)")
98 "@DocString(FMToperatingareaclusterer::getsolution)");
100 define_pylist<Heuristics::FMToperatingareaclusterer>();
102 bp::class_<Heuristics::FMToperatingareascheduler, bp::bases<Heuristics::FMTlpheuristic>>(
"Heuristics::FMToperatingareascheduler",
"@DocString(FMToperatingareascheduler)")
104 "@DocString(FMToperatingareascheduler::initialsolve)")
106 "@DocString(FMToperatingareascheduler::branchnboundsolve)")
108 "@DocString(FMToperatingareaheuristic::getsolution)")
110 "@DocString(FMToperatingareascheduler::setasprimal)")
112 "@DocString(FMToperatingareascheduler::setproportionofset)");
114 define_pylist<Heuristics::FMToperatingareascheduler>();
Definition: FMToperatingarea.hpp:29
double getneihgborsperimeter() const
Core::FMTmask getmask() const
void setneighbors(const std::vector< Core::FMTmask > &lneighbors)
std::vector< Core::FMTmask > getneighbors() const
FMToperatingareacluster getfilteredcluster(const Core::FMTmask &filtermask) const
void setmaximalarea(const double &newmaximalarea)
FMToperatingareaclusterbinary getcentroid() const
Definition: FMToperatingareacluster.hpp:106
void setminimalarea(const double &newminimalarea)
std::vector< Core::FMTmask > getallmasks() const
bool initialsolve() final
std::vector< FMToperatingareacluster > getsolution() const
void setnumberofsimulationpass(const int &pass)
bool branchnboundsolve() final
void setproportionofset(const double &proportion)
bool branchnboundsolve() final
std::vector< Core::FMTtimeyieldhandler > getsolution(const std::string &yldname) const
bool initialsolve() final
FMToperatingareascheme presolve(const Core::FMTmask &selectedmask, const std::vector< Core::FMTtheme > &presolvedthemes) const
Definition: PYdefinitions.hpp:14
void exportHeuristics()
Definition: PYexportHeuristics.hpp:25