FMT 0.9.8
Forest management tools for forest planning
Loading...
Searching...
No Matches
FMTpredictor.hpp
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#ifndef FMTPREDICTOR_H
8#define FMTPREDICTOR_H
9
10
11#include <vector>
12#include <string>
13#include <map>
14#include "FMTutility.hpp"
15
16
17
18namespace Core
19{
20 class FMTyields;
21 class FMTaction;
22}
23
24namespace Graph
25{
26 class FMTbasevertexproperties;
27 class FMTbaseedgeproperties;
29 {
30 const FMTbasevertexproperties* source_vertex;
31 const FMTbasevertexproperties* target_vertex;
32 std::vector<double>source_yields;
33 std::vector<double>target_yields;
34 std::vector<int>periodgaps;
35 std::vector<int>sourceactions;
36 std::vector<double>getyields(const FMTbasevertexproperties& vertex,const Core::FMTyields& yields, const std::vector<std::string>& yieldnames) const;
37 public:
38 FMTpredictor() = default;
39 ~FMTpredictor() = default;
40 FMTpredictor(const std::vector<Core::FMTaction>& actions, const std::vector<std::string>& yieldnames,const Core::FMTyields& yields,
41 const FMTbasevertexproperties& source, const FMTbasevertexproperties& target, const std::vector<const FMTbaseedgeproperties*>& edges, const std::vector<int>& gaps,bool withGCBMid = true);
43 FMTpredictor& operator = (const FMTpredictor& rhs);
44 bool operator==(const FMTpredictor& rhs) const;
45 bool operator<(const FMTpredictor& rhs) const;
46 std::vector<double>getpredictors() const;
47 double getDistance(size_t actId) const;
48 double getDisturbance(size_t actId) const;
49 double getSourceAge() const;
50 std::vector<double> getSourceYields() const;
51 double getTargetAge() const;
52 std::vector<double> getTargetYields() const;
53 std::vector<std::string>getpredictornames(const std::vector<std::string>& yieldnames)const;
54 };
55}
56
57#endif // predictor
#define FMTEXPORT
Definition: FMTutility.hpp:92
Definition: FMTyields.hpp:40
Definition: FMTbasevertexproperties.hpp:23
Definition: FMTpredictor.hpp:29
std::vector< double > getSourceYields() const
double getDistance(size_t actId) const
bool operator<(const FMTpredictor &rhs) const
bool operator==(const FMTpredictor &rhs) const
FMTpredictor(const std::vector< Core::FMTaction > &actions, const std::vector< std::string > &yieldnames, const Core::FMTyields &yields, const FMTbasevertexproperties &source, const FMTbasevertexproperties &target, const std::vector< const FMTbaseedgeproperties * > &edges, const std::vector< int > &gaps, bool withGCBMid=true)
double getDisturbance(size_t actId) const
std::vector< std::string > getpredictornames(const std::vector< std::string > &yieldnames) const
std::vector< double > getpredictors() const
std::vector< double > getTargetYields() const
~FMTpredictor()=default
double getSourceAge() const
FMTpredictor()=default
FMTpredictor(const FMTpredictor &rhs)
double getTargetAge() const
The Core namespace provides classes for simulating stands/strata growth/harvest through time.
Definition: FMTaction.hpp:31
Namespace for using/building unidirectional graphs in FMT.
Definition: FMTareaparser.hpp:31