8#ifndef FMTFOREST_Hm_included
9#define FMTFOREST_Hm_included
12#include "FMTLayer.hpp"
19 class FMTActualDevelopment;
20 class FMTFuturDevelopment;
34 friend class boost::serialization::access;
42 template<
class Archive>
43 void serialize(Archive& ar,
const unsigned int version)
77 std::vector<Core::FMTActualDevelopment>
getArea()
const;
86 const std::vector<Core::FMTTheme>& p_themes);
106 std::vector<FMTLayer<std::string>>
getThemes(
const std::vector<Core::FMTTheme>& themes)
const;
#define FMTEXPORT
Definition: FMTutility.h:125
Filter built from masks used to preSolve and postsolve FMTMask objects.
Definition: FMTMaskFilter.h:31
Spatially referenced layer of Core::FMTDevelopment representing the forest.
Definition: FMTForest.h:33
FMTForest postSolve(const Core::FMTMaskFilter &filter, const std::vector< Core::FMTTheme > &originalbasethemes) const
Return a postsolved copy of the forest by postsolving each development mask.
void setPeriod(int period)
Set the period of every development of the forest.
void setLastThemeWithArea(const std::vector< Core::FMTActualDevelopment > &p_devs, const std::vector< Core::FMTTheme > &p_themes)
Set the last theme attribute of each development from the area developments matching the other themes...
FMTForest(const FMTForest &rhs)
Copy constructor for FMTForest.
FMTLayer< std::string > getLock() const
Return a string layer with the lock of each locked development.
FMTForest preSolve(const Core::FMTMaskFilter &filter, const std::vector< Core::FMTTheme > &presolvedthemes) const
Return a presolved copy of the forest by presolving each development with the mask filter.
FMTForest()
Default constructor for FMTForest.
FMTForest getCopy(bool copyData=true) const
Return a copy of the forest layer.
std::vector< Core::FMTActualDevelopment > getArea() const
Return the actual developments of the forest, aggregating the area of identical developments by cell ...
FMTLayer< int > getAge() const
Return a layer with the age of each development.
FMTForest(const FMTLayer< Core::FMTDevelopment > &rhs)
Construct a FMTForest from a layer of developments.
FMTForest grow() const
Grow every development of the forest by one period.
std::vector< FMTLayer< std::string > > getThemes(const std::vector< Core::FMTTheme > &themes) const
Return one string layer per theme with the attribute value of each development.
Definition: FMTParser.h:54
The Core namespace provides classes for simulating stands/strata growth/harvest through time.
Definition: FMTAction.h:34
Definition: FMTAreaParser.h:40