9#ifndef FMTserializablematrix_Hm_included
10#define FMTserializablematrix_Hm_included
16#include <boost/serialization/vector.hpp>
18class OsiSolverInterface;
19class CoinPackedMatrix;
32 std::unique_ptr<CoinPackedMatrix> matrix;
35 std::vector<double>collb;
38 std::vector<double>colub;
41 std::vector<double>obj;
44 std::vector<double>rowlb;
47 std::vector<double>rowub;
50 std::vector<double>colsolution;
53 std::vector<double>rowprice;
61 friend class boost::serialization::access;
62 template<
class Archive>
63 void serialize(Archive& ar,
const unsigned int version)
65 const bool loading = Archive::is_loading::value;
74 std::vector<double> lelement;
75 std::vector<int> lindex;
76 std::vector<int> llength;
77 std::vector<int> lstart;
79 std::vector<double> lcollb;
80 std::vector<double> lcolub;
81 std::vector<double> lobj;
82 std::vector<double> lrowlb;
83 std::vector<double> lrowub;
84 std::vector<double> lcolsolution;
85 std::vector<double> lrowprice;
88 getSetMatrixElements(
false,
101 getSetMemberElements(
false,
132 getSetMatrixElements(
true,
145 getSetMemberElements(
true,
174 void getSetMatrixElements(
bool loading,
183 std::vector<double>& lelement,
184 std::vector<int>& lindex,
185 std::vector<int>& llength,
186 std::vector<int>& lstart);
199 void getSetMemberElements(
bool loading,
200 std::vector<double>&lcollb,
201 std::vector<double>&lcolub,
202 std::vector<double>&lobj,
203 std::vector<double>&lrowlb,
204 std::vector<double>&lrowub,
205 std::vector<double>&lcolsolution,
206 std::vector<double>&lrowprice);
242 void setMatrix(std::shared_ptr<OsiSolverInterface>& solverinterface)
const;
#define FMTEXPORT
Definition: FMTutility.h:125
Helper for the serialization of an OSI solver interface matrix.
Definition: FMTSerializableMatrix.h:29
FMTSerializableMatrix(const FMTSerializableMatrix &rhs)
Copy constructor for FMTSerializableMatrix.
FMTSerializableMatrix(const std::shared_ptr< OsiSolverInterface > &solverinterface)
Construct a serializable matrix from a solver interface, normally used during the saving part of seri...
FMTSerializableMatrix()
Default constructor for FMTSerializableMatrix.
void setMatrix(std::shared_ptr< OsiSolverInterface > &solverinterface) const
Set the content of a solver interface matrix, used during the loading part of serialization.
~FMTSerializableMatrix()
Destructor for FMTSerializableMatrix.
Namespace containing all enumerator and classes used to construct or manipulate the different type of...
Definition: FMTAreaParser.h:54