FMT 1.2.0
Forest management tools for forest planning
Loading...
Searching...
No Matches
FMTGraphStats.h
Go to the documentation of this file.
1/*
2Copyright (c) 2019 Gouvernement du Québec
3
4SPDX-License-Identifier: LiLiQ-R-1.1
5License-Filename: LICENSES/EN/LiLiQ-R11unicode.txt
6*/
7
8#ifndef FMTgraphstats_Hm_included
9#define FMTgraphstats_Hm_included
10
11/*#ifdef FMTWITHOSI
12 #include "OsiSolverInterface.h"
13#endif*/
14#include <boost/serialization/serialization.hpp>
15#include <boost/serialization/nvp.hpp>
16#include <boost/serialization/export.hpp>
17#include <memory>
18#include <string>
19#include "FMTObject.h"
20
21namespace Graph
22{
23// DocString: FMTGraphStats
28 {
29 friend class boost::serialization::access;
30 // DocString: FMTGraphStats::serialize
37 template<class Archive>
38 void serialize(Archive& ar, const unsigned int version)
39 {
40 ar & BOOST_SERIALIZATION_NVP(cols);
41 ar & BOOST_SERIALIZATION_NVP(rows);
42 ar & BOOST_SERIALIZATION_NVP(vertices);
43 ar & BOOST_SERIALIZATION_NVP(edges);
44 ar & BOOST_SERIALIZATION_NVP(transfer_rows);
45 ar & BOOST_SERIALIZATION_NVP(output_rows);
46 ar & BOOST_SERIALIZATION_NVP(output_cols);
47 }
48 public:
49 // DocString: FMTGraphStats::cols
51 int cols;
52 // DocString: FMTGraphStats::rows
54 int rows;
55 // DocString: FMTGraphStats::vertices
58 // DocString: FMTGraphStats::edges
60 int edges;
61 // DocString: FMTGraphStats::transfer_rows
64 // DocString: FMTGraphStats::output_rows
67 // DocString: FMTGraphStats::output_cols
70 // DocString: FMTGraphStats()
75 // DocString: FMTGraphStats(const FMTGraphStats&)
80 FMTGraphStats(const FMTGraphStats& rhs)=default;
81 // DocString: FMTGraphStats::operator=
87 FMTGraphStats& operator = (const FMTGraphStats& rhs)=default;
88 // DocString: FMTGraphStats::operator+=
94 FMTGraphStats& operator += (const FMTGraphStats& rhs);
95 // DocString: FMTGraphStats::operator-=
101 FMTGraphStats& operator -= (const FMTGraphStats& rhs);
102 // DocString: FMTGraphStats::operator+
108 FMTGraphStats operator + (const FMTGraphStats& rhs);
109 // DocString: FMTGraphStats::operator-
115 FMTGraphStats operator - (const FMTGraphStats& rhs);
116 // DocString: FMTGraphStats::operator==
122 bool operator == (const FMTGraphStats& rhs) const;
123 // DocString: FMTGraphStats::operator!=
129 bool operator != (const FMTGraphStats& rhs) const;
130 // DocString: FMTGraphStats::operator std::string
135 operator std::string() const;
136 // DocString: ~FMTGraphStats()
140 ~FMTGraphStats()=default;
141 };
142}
143BOOST_CLASS_EXPORT_KEY(Graph::FMTGraphStats)
144#endif
#define FMTEXPORT
Definition: FMTutility.h:125
Statistics about a FMTGraph and its FMTLpSolver: their size, elements and type of elements.
Definition: FMTGraphStats.h:28
int rows
Number of rows in the matrix of FMTLpSolver.
Definition: FMTGraphStats.h:54
int output_cols
Number of output cols in the FMTLpSolver.
Definition: FMTGraphStats.h:69
FMTGraphStats()
Default constructor for FMTGraphStats.
int transfer_rows
Number of area transfer rows in the FMTLpSolver.
Definition: FMTGraphStats.h:63
~FMTGraphStats()=default
Default destructor for FMTGraphStats.
int cols
Number of columns in the matrix of FMTLpSolver.
Definition: FMTGraphStats.h:51
int edges
Number of edges in the FMTGraph.
Definition: FMTGraphStats.h:60
FMTGraphStats(const FMTGraphStats &rhs)=default
Default copy constructor for FMTGraphStats.
int vertices
Number of vertices in the FMTGraph.
Definition: FMTGraphStats.h:57
int output_rows
Number of output rows in the FMTLpSolver.
Definition: FMTGraphStats.h:66
Definition: FMTAreaParser.h:35