1046 static int selfTest(
int argc = 0,
char **argv =
nullptr);
1049 template<
typename CanopyType,
typename... Args>
1052 std::vector<std::shared_ptr<BaseCanopyParameters>> getCanopyParametersList();
1059 void loadXML(
const char *filename,
bool build =
true);
1336 std::vector<std::shared_ptr<BaseCanopyParameters>> canopy_parameters_list;
1342 std::vector<std::vector<uint>> UUID_trunk;
1348 std::vector<std::vector<uint>> UUID_branch;
1354 std::vector<std::vector<std::vector<uint>>> UUID_leaf;
1360 std::vector<std::vector<std::vector<std::vector<uint>>>> UUID_fruit;
1363 std::vector<uint> UUID_ground;
1365 std::vector<uint> leaf_prototype_global;
1367 float sampleLeafAngle(
const std::vector<float> &leafAngleDist);
1371 std::minstd_rand0 generator;
1375 bool enable_element_labels;
1377 void cleanDeletedUUIDs(std::vector<uint> &UUIDs);
1379 void cleanDeletedUUIDs(std::vector<std::vector<uint>> &UUIDs);
1381 void cleanDeletedUUIDs(std::vector<std::vector<std::vector<uint>>> &UUIDs);