![]() |
ALMaSS
1.2 (after EcoStack, March 2024)
The Animal, Landscape and Man Simulation System
|
#include <Osmia_Population_Manager.h>
Public Member Functions | |
Osmia_Nest_Manager () | |
Osmia nest manager constructor. More... | |
~Osmia_Nest_Manager () | |
Osmia nest manager denstructor. More... | |
void | InitOsmiaBeeNesting () |
Read in the Osmia nest density files and allocate to each LE object. More... | |
void | UpdateOsmiaNesting () |
Tell all LE objects to update their osmia nest status. More... | |
bool | IsOsmiaNestPossible (int a_polyindex) |
Find out whether an osmia nest can be made here. More... | |
Osmia_Nest * | CreateNest (int a_x, int a_y, int a_polyindex) |
Create the osmia nest here More... | |
void | ReleaseOsmiaNest (int a_polyindex, Osmia_Nest *a_nest) |
release nest here More... | |
bool | GetNestPossible (TTypesOfLandscapeElement index) |
Is a nest possible in this polytype. More... | |
int | GetNoNests (int a_polyindex) |
bool | SanityCheck (int a_polyindex) |
bool | CheckZeroNests () |
Protected Attributes | |
vector< OsmiaPolygonEntry > | m_PolyList |
vector< omp_nest_lock_t * > | m_PolyListLocks |
bool | m_PossibleNestType [tole_Foobar] |
Holds a set of flags indicating whether an Osmia nest is possible (true) or not (false) More... | |
|
inline |
|
inline |
|
inline |
Create the osmia nest here
References m_PolyList.
Referenced by Osmia_Population_Manager::CreateNest().
|
inline |
|
inline |
References m_PolyList.
Referenced by Osmia_Nest::GetNoNests().
void Osmia_Nest_Manager::InitOsmiaBeeNesting | ( | ) |
Read in the Osmia nest density files and allocate to each LE object.
Reads in an input file Ela and provides a max nest number to each instance of LE* in the m_elems vector
References cfg_OsmiaNestByLE_Datafile, g_landscape_ptr, g_msg, g_rand_uni_fnc(), m_PolyList, m_PolyListLocks, m_PossibleNestType, OsmiaPolygonEntry::SetAreaAttribute(), OsmiaPolygonEntry::SetIndexAttribute(), Landscape::SupplyElementTypeFromVector(), Landscape::SupplyNumberOfPolygons(), Landscape::SupplyPolygonAreaVector(), tole_Foobar, Landscape::TranslateEleTypes(), CfgStr::value(), and MapErrorMsg::Warn().
Referenced by Osmia_Population_Manager::Init().
|
inline |
Find out whether an osmia nest can be made here.
References m_PolyList.
Referenced by Osmia_Population_Manager::IsOsmiaNestPossible().
|
inline |
release nest here
References m_PolyList, and m_PolyListLocks.
Referenced by Osmia_Nest::KillAllSubsequentCells(), Osmia_Population_Manager::ReleaseOsmiaNest(), and Osmia_Nest::RemoveCell().
|
inline |
References m_PolyList.
Referenced by Osmia_Population_Manager::SantityCheck().
|
inline |
Tell all LE objects to update their osmia nest status.
Loops through all landscape element objects and updates their Osmia nesting status
References m_PolyList.
Referenced by Osmia_Population_Manager::DoFirst(), and Osmia_Population_Manager::Osmia_Population_Manager().
|
protected |
|
protected |
Referenced by InitOsmiaBeeNesting(), ReleaseOsmiaNest(), and ~Osmia_Nest_Manager().
|
protected |
Holds a set of flags indicating whether an Osmia nest is possible (true) or not (false)
Referenced by GetNestPossible(), and InitOsmiaBeeNesting().