ALMaSS Skylark ODDox
1.1
The skylark model description following ODdox protocol
|
#include <skylarks_all.h>
|
void | Tick (void) |
|
void | EvaluateAllTerritories (void) |
|
void | PreCachePoly (int a_poly) |
|
double | PrePoly2Qual (int a_poly) |
|
double | PrePolyNQual (int a_poly, int *a_good_polys) |
|
void | PreProcessLandscape2 (Landscape *L) |
|
void | ClaimGrid (int x, int y, int range) |
|
void | UpdateQuality () |
|
bool | IsGridPositionValid (int &x, int &y, int range) |
|
bool | IsExtGridPositionValid (int &x, int &y, int range) |
|
int | IsValid (int nx, int ny) |
|
void | GetTerritoriesByDistance (int nx, int ny, vector< APoint > *alist) |
|
int | Supply_quality (int ref) |
|
int | Supply_x (int ref) |
|
int | Supply_y (int ref) |
|
int | Supply_size (int ref) |
|
skTTerritory * | Supply_terr (int ref) |
|
void | RemoveFemale (int ref) |
|
void | RemoveMale (int ref) |
|
void | Split (int ref) |
|
Skylark_Male * | Supply_Owner (int ref) |
|
Skylark_Female * | Supply_F_Owner (int ref) |
|
void | Occupy (int ref, Skylark_Male *Male) |
|
void | FemaleOccupy (int ref, Skylark_Female *Female) |
|
double | EvaluateHabitatN (skTTerritory *a_terr) |
|
int | SupplyNoTerritories () |
|
int | SupplyNoMaleOccupied () |
|
int | SupplyNoFemaleOccupied () |
|
bool | SupplyIsNestValid (int ref) |
|
APoint | SupplyNestPosition (int ref) |
|
| SkTerritories (Landscape *L) |
|
| ~SkTerritories () |
|
|
int | EvaluateHabitatSquare (int xmin, int xmax, int ymin, int ymax, int NoPolygons) |
|
int | PreMakeForIterator (int a_min_incl, int a_max_excl, int *a_iter, int a_norm_max_excl) |
|
void | PreFillTerrPolyLists (skTTerritory *a_terr) |
|
void | PreFillQualGrid (void) |
|
void | PreEvaluateQualGrid (SkQualGrid *a_grid, int a_x, int a_y, int a_width, int a_height) |
|
void | PreFillQualCache (void) |
|
int | PreEvaluateHabitat (int a_x, int a_y, int a_range_x, int a_range_y) |
|
int | PreEvaluateHabitatStripX (int a_x, int a_y, int a_range_x) |
|
int | PreEvaluateHabitatStripY (int a_x, int a_y, int a_range_x) |
|
void | DumpMapGraphics (const char *a_filename, Landscape *a_map) |
|
◆ SkTerritories()
SkTerritories::SkTerritories |
( |
Landscape * |
L | ) |
|
◆ ~SkTerritories()
SkTerritories::~SkTerritories |
( |
| ) |
|
◆ ClaimGrid()
void SkTerritories::ClaimGrid |
( |
int |
x, |
|
|
int |
y, |
|
|
int |
range |
|
) |
| |
◆ DumpMapGraphics()
void SkTerritories::DumpMapGraphics |
( |
const char * |
a_filename, |
|
|
Landscape * |
a_map |
|
) |
| |
|
private |
1480 unsigned int linesize = l_width * 3;
1481 unsigned char * frame_buffer = (
unsigned char * ) malloc(
sizeof(
unsigned char ) * linesize * l_height );
1485 if ( frame_buffer == NULL ) {
1486 g_msg->Warn( WARN_FILE,
"SkTerritories::DumpMapGraphics(): Out of memory!",
"" );
1490 for (
int y = 0, i = 0; y < l_height; y++ ) {
1491 for (
int x = 0; x < l_width; x++ ) {
1493 int localcolor = 16777215/eletype;
1498 if ( hei > 50.0 ) category = 0;
else
1499 category = ( int )( 200.0 - ( hei * 4.0 ) );
1500 localcolor = ( ( category * 65536 ) + 65535 );
1503 frame_buffer[ i++ ] = (
unsigned char)(localcolor & 0xff);
1504 frame_buffer[ i++ ] = (
unsigned char)(( localcolor >> 8 ) & 0xff);
1505 frame_buffer[ i++ ] = (
unsigned char) (( localcolor >> 16 ) & 0xff);
1514 for (
int x = l_x; x < l_x + l_s; x++ ) {
1516 if ( x >= 0 && x < l_width && y >= 0 && y < l_height ) {
1517 int pixel_p = x * 3 + linesize * y;
1518 frame_buffer[ pixel_p++ ] = 200;
1519 frame_buffer[ pixel_p++ ] = 0;
1520 frame_buffer[ pixel_p ] = 0;
1523 if ( x >= 0 && x < l_width && y >= 0 && y < l_height ) {
1524 int pixel_p = x * 3 + linesize * y;
1525 frame_buffer[ pixel_p++ ] = 200;
1526 frame_buffer[ pixel_p++ ] = 0;
1527 frame_buffer[ pixel_p ] = 0;
1530 for (
int y = l_y; y < l_y + l_s; y++ ) {
1532 if ( x >= 0 && x < l_width && y >= 0 && y < l_height ) {
1533 int pixel_p = x * 3 + linesize * y;
1534 frame_buffer[ pixel_p++ ] = 200;
1535 frame_buffer[ pixel_p++ ] = 0;
1536 frame_buffer[ pixel_p ] = 0;
1539 if ( x >= 0 && x < l_width && y >= 0 && y < l_height ) {
1540 int pixel_p = x * 3 + linesize * y;
1541 frame_buffer[ pixel_p++ ] = 200;
1542 frame_buffer[ pixel_p++ ] = 0;
1543 frame_buffer[ pixel_p ] = 0;
1548 l_file = fopen(a_filename,
"w" );
1550 g_msg->Warn( WARN_FILE,
"SkTerritories::DumpMapGraphics(): ""Unable to open file for writing: %s\n", a_filename );
1554 fprintf( l_file,
"P6\n%d %d %d\n", l_width, l_height, 255 );
1555 fwrite( frame_buffer,
sizeof(
unsigned char ), linesize * l_height, l_file );
1558 free( frame_buffer );
References skTTerritory::m_Location_x, skTTerritory::m_Location_y, NoTerritories, skTTerritory::Size, Landscape::SupplyElementType(), Landscape::SupplySimAreaHeight(), Landscape::SupplySimAreaWidth(), Landscape::SupplyVegHeight(), Territories, and tole_Field.
◆ EvaluateAllTerritories()
void SkTerritories::EvaluateAllTerritories |
( |
void |
| ) |
|
◆ EvaluateHabitatN()
double SkTerritories::EvaluateHabitatN |
( |
skTTerritory * |
a_terr | ) |
|
◆ EvaluateHabitatSquare()
int SkTerritories::EvaluateHabitatSquare |
( |
int |
xmin, |
|
|
int |
xmax, |
|
|
int |
ymin, |
|
|
int |
ymax, |
|
|
int |
NoPolygons |
|
) |
| |
|
private |
◆ FemaleOccupy()
◆ GetTerritoriesByDistance()
void SkTerritories::GetTerritoriesByDistance |
( |
int |
nx, |
|
|
int |
ny, |
|
|
vector< APoint > * |
alist |
|
) |
| |
◆ IsExtGridPositionValid()
bool SkTerritories::IsExtGridPositionValid |
( |
int & |
x, |
|
|
int & |
y, |
|
|
int |
range |
|
) |
| |
◆ IsGridPositionValid()
bool SkTerritories::IsGridPositionValid |
( |
int & |
x, |
|
|
int & |
y, |
|
|
int |
range |
|
) |
| |
◆ IsValid()
int SkTerritories::IsValid |
( |
int |
nx, |
|
|
int |
ny |
|
) |
| |
◆ Occupy()
◆ PreCachePoly()
void SkTerritories::PreCachePoly |
( |
int |
a_poly | ) |
|
◆ PreEvaluateHabitat()
int SkTerritories::PreEvaluateHabitat |
( |
int |
a_x, |
|
|
int |
a_y, |
|
|
int |
a_range_x, |
|
|
int |
a_range_y |
|
) |
| |
|
inlineprivate |
◆ PreEvaluateHabitatStripX()
int SkTerritories::PreEvaluateHabitatStripX |
( |
int |
a_x, |
|
|
int |
a_y, |
|
|
int |
a_range_x |
|
) |
| |
|
inlineprivate |
◆ PreEvaluateHabitatStripY()
int SkTerritories::PreEvaluateHabitatStripY |
( |
int |
a_x, |
|
|
int |
a_y, |
|
|
int |
a_range_x |
|
) |
| |
|
inlineprivate |
◆ PreEvaluateQualGrid()
void SkTerritories::PreEvaluateQualGrid |
( |
SkQualGrid * |
a_grid, |
|
|
int |
a_x, |
|
|
int |
a_y, |
|
|
int |
a_width, |
|
|
int |
a_height |
|
) |
| |
|
private |
◆ PreFillQualCache()
void SkTerritories::PreFillQualCache |
( |
void |
| ) |
|
|
private |
◆ PreFillQualGrid()
void SkTerritories::PreFillQualGrid |
( |
void |
| ) |
|
|
private |
1592 g_msg->Warn( WARN_FILE,
"SkTerritories::PreFillQualGrid(): ""Out of memory!\n",
"" );
References g_land, m_hash_size, m_poly_seen, m_poly_size, m_qual_cache, m_qual_grid, m_qual_grid_signal, m_sim_h_div_10, m_sim_w_div_10, PreEvaluateQualGrid(), Landscape::SkylarkEvaluation(), Landscape::SupplyLargestPolyNumUsed(), and TheLandscape.
Referenced by PreProcessLandscape2().
◆ PreFillTerrPolyLists()
void SkTerritories::PreFillTerrPolyLists |
( |
skTTerritory * |
a_terr | ) |
|
|
private |
2147 for (
int y = y_min_inc; y < y_max_exc; y++ ) {
2148 for (
int x = x_min_inc; x < x_max_exc; x++ ) {
2150 int l_gmax = (int)
m_qual_grid[ l_i ]->m_polys.size();
2151 for (
int g = 0; g < l_gmax; g++ ) {
2164 a_terr->
m_polys.resize( l_polygons );
2165 a_terr->
m_sizes.resize( l_polygons );
2166 for (
int i = 0; i < l_polygons; i++ ) {
2169 a_terr->
m_polys[ i ] = l_poly;
2186 for (
int l_y = 0; l_y < l_c; l_y++ ) {
2188 for (
int l_x = 0; l_x < l_c; l_x++ ) {
2190 int l_gmax = (int)
m_qual_grid[ l_i ]->m_polys.size();
2191 for (
int g = 0; g < l_gmax; g++ ) {
2206 for (
int i = 0; i < l_polygons; i++ ) {
References HomeRangeDiameterDiv20, m_for_iter_x, m_for_iter_y, skTTerritory::m_hr_polys, skTTerritory::m_hr_sizes, m_poly_seen, m_poly_size, skTTerritory::m_polys, SkQualGrid::m_polys, m_qual_grid, skTTerritory::m_range_div10, m_sim_h_div_10, m_sim_w_div_10, skTTerritory::m_sizes, SkQualGrid::m_sizes, skTTerritory::m_x_div10, skTTerritory::m_y_div10, PolyRefData, and PreMakeForIterator().
Referenced by PreProcessLandscape2(), and Split().
◆ PreMakeForIterator()
int SkTerritories::PreMakeForIterator |
( |
int |
a_min_incl, |
|
|
int |
a_max_excl, |
|
|
int * |
a_iter, |
|
|
int |
a_norm_max_excl |
|
) |
| |
|
private |
2220 if ( a_max_excl >= a_norm_max_excl ) {
2221 med_max = a_norm_max_excl;
2222 high_max = a_max_excl;
2224 med_max = a_max_excl;
2227 for ( i = a_min_incl; i < 0; i++ ) {
2228 a_iter[ index++ ] = i + a_norm_max_excl;
2230 for ( ; i < med_max; i++ ) {
2231 a_iter[ index++ ] = i;
2233 for ( ; i < high_max; i++ ) {
2234 a_iter[ index++ ] = i - a_norm_max_excl;
Referenced by PreFillTerrPolyLists().
◆ PrePoly2Qual()
double SkTerritories::PrePoly2Qual |
( |
int |
a_poly | ) |
|
|
inline |
Used only on start-up when potential territories need to be determined.
1649 double l_score = -9999.0;
1710 if ( l_height >= 200.0 )
1715 if ( l_height >= 110.0 )
1756 static char l_errornum[ 20 ];
1757 sprintf( l_errornum,
"%d", l_type );
1758 TheLandscape->
Warn(
"SkTerritories::PrePoly2Qual(): ""Unknown tole_type", l_errornum );
References HQualityBareEarth, HQualityHedge, HQualityHedgeScrub, HQualityMetalRoad, HQualityTall, HQualityTall2, HQualityTallVeg, HQualityWater, PatchyPremium, SKOPTIMALHABITATSCORE, Landscape::SupplyElementType(), Landscape::SupplyVegHeight(), Landscape::SupplyVegPatchy(), TheLandscape, tole_ActivePit, tole_AmenityGrass, tole_BeetleBank, tole_Building, tole_BuiltUpWithParkland, tole_Carpark, tole_Churchyard, tole_Coast, tole_ConiferousForest, tole_Copse, tole_DeciduousForest, tole_Fence, tole_Field, tole_FieldBoundary, tole_FishFarm, tole_Foobar, tole_Freshwater, tole_Garden, tole_Heath, tole_HedgeBank, tole_Hedges, tole_HeritageSite, tole_IndividualTree, tole_LargeRoad, tole_Marsh, tole_MetalledPath, tole_MixedForest, tole_MownGrass, tole_NaturalGrassDry, tole_NaturalGrassWet, tole_Orchard, tole_Parkland, tole_PermanentSetaside, tole_PermPasture, tole_PermPastureLowYield, tole_PermPastureTussocky, tole_PitDisused, tole_PlantNursery, tole_Pond, tole_Pylon, tole_Railway, tole_River, tole_RiversidePlants, tole_RiversideTrees, tole_RoadsideSlope, tole_RoadsideVerge, tole_Saltmarsh, tole_Saltwater, tole_SandDune, tole_Scrub, tole_SmallRoad, tole_StoneWall, tole_Stream, tole_Track, tole_UnknownGrass, tole_UnsprayedFieldMargin, tole_UrbanNoVeg, tole_UrbanPark, tole_Vildtager, tole_Wasteland, tole_WindTurbine, tole_WoodlandMargin, tole_WoodyEnergyCrop, tole_YoungForest, and Landscape::Warn().
Referenced by PreCachePoly(), and PreFillQualCache().
◆ PrePolyNQual()
double SkTerritories::PrePolyNQual |
( |
int |
a_poly, |
|
|
int * |
a_good_polys |
|
) |
| |
|
inline |
1771 double l_score = -9999.0;
1772 bool ppremium =
false;
1836 if ( l_height >= 200.0 )
1841 if ( l_height >= 110.0 )
1845 else if ( l_height < 3.0 )
1852 if (l_height>70) hh = 70;
else hh = l_height;
1862 if ( l_height >= 200.0 )
1867 if ( l_height >= 110.0 )
1872 else if ( l_height < 3.0 )
1921 static char l_errornum[ 20 ];
1922 sprintf( l_errornum,
"%d", l_type );
1923 TheLandscape->
Warn(
"SkTerritories::PrePolyNQual(): ""Unknown tole_type", l_errornum );
References cfg_SkScrapesPremiumII, cfg_SkTramlinesPremium, DensityScore, HeightScore, HQualityBareEarth, HQualityHedge, HQualityHedgeScrub, HQualityMetalRoad, HQualityTall, HQualityTall2, HQualityTallVeg, HQualityWater, PatchyPremium, SKOPTIMALHABITATSCORE, Landscape::SupplyElementType(), Landscape::SupplyHasTramlines(), Landscape::SupplySkScrapes(), Landscape::SupplyVegDensity(), Landscape::SupplyVegHeight(), Landscape::SupplyVegPatchy(), TheLandscape, tole_ActivePit, tole_AmenityGrass, tole_BeetleBank, tole_Building, tole_BuiltUpWithParkland, tole_Carpark, tole_Churchyard, tole_Coast, tole_ConiferousForest, tole_Copse, tole_DeciduousForest, tole_Fence, tole_Field, tole_FieldBoundary, tole_FishFarm, tole_Foobar, tole_Freshwater, tole_Garden, tole_Heath, tole_HedgeBank, tole_Hedges, tole_HeritageSite, tole_IndividualTree, tole_LargeRoad, tole_Marsh, tole_MetalledPath, tole_MixedForest, tole_MownGrass, tole_NaturalGrassDry, tole_NaturalGrassWet, tole_Orchard, tole_Parkland, tole_PermanentSetaside, tole_PermPasture, tole_PermPastureLowYield, tole_PermPastureTussocky, tole_PitDisused, tole_PlantNursery, tole_Pond, tole_Pylon, tole_Railway, tole_River, tole_RiversidePlants, tole_RiversideTrees, tole_RoadsideSlope, tole_RoadsideVerge, tole_Saltmarsh, tole_Saltwater, tole_SandDune, tole_Scrub, tole_SmallRoad, tole_StoneWall, tole_Stream, tole_Track, tole_UnknownGrass, tole_UnsprayedFieldMargin, tole_UrbanNoVeg, tole_UrbanPark, tole_Vildtager, tole_Wasteland, tole_WindTurbine, tole_WoodlandMargin, tole_WoodyEnergyCrop, tole_YoungForest, and Landscape::Warn().
Referenced by EvaluateHabitatN().
◆ PreProcessLandscape2()
void SkTerritories::PreProcessLandscape2 |
( |
Landscape * |
L | ) |
|
2058 if ( qual >= targetqual ) {
2062 static char errornum[ 20 ];
2064 L->
Warn(
"SkTerritories::PreProcessLandscape2(): ""Too many territories!", errornum );
2082 bool success =
false;
2084 if ( ++range > 28 ) {
2095 if ( qual >= targetqual ) {
2098 if ( NoTerritories < 0 || NoTerritories > 199999 ) {
2099 static char errornum[ 20 ];
2101 L->
Warn(
"SkTerritories::PreProcessLandscape2():"" Too many territories!", errornum );
2132 static char errornum[20];
2134 L->
Warn(
"SkTerritories::PreProcessLandscape2(): ""Not enough territories! ", errornum);
References cfg_FemaleMinTerritoryAcceptScore, ClaimGrid(), g_rand_uni, Grid, IsExtGridPositionValid(), IsGridPositionValid(), m_sim_h_div_10, m_sim_w_div_10, NoTerritories, PreEvaluateHabitat(), PreEvaluateHabitatStripX(), PreEvaluateHabitatStripY(), PreFillQualGrid(), PreFillTerrPolyLists(), Territories, skTTerritory::TestNestPossibility(), and Landscape::Warn().
Referenced by Skylark_Population_Manager::DoFirst().
◆ RemoveFemale()
void SkTerritories::RemoveFemale |
( |
int |
ref | ) |
|
◆ RemoveMale()
void SkTerritories::RemoveMale |
( |
int |
ref | ) |
|
◆ Split()
void SkTerritories::Split |
( |
int |
ref | ) |
|
◆ Supply_F_Owner()
◆ Supply_Owner()
◆ Supply_quality()
int SkTerritories::Supply_quality |
( |
int |
ref | ) |
|
◆ Supply_size()
int SkTerritories::Supply_size |
( |
int |
ref | ) |
|
◆ Supply_terr()
◆ Supply_x()
int SkTerritories::Supply_x |
( |
int |
ref | ) |
|
◆ Supply_y()
int SkTerritories::Supply_y |
( |
int |
ref | ) |
|
◆ SupplyIsNestValid()
bool SkTerritories::SupplyIsNestValid |
( |
int |
ref | ) |
|
|
inline |
◆ SupplyNestPosition()
APoint SkTerritories::SupplyNestPosition |
( |
int |
ref | ) |
|
|
inline |
◆ SupplyNoFemaleOccupied()
int SkTerritories::SupplyNoFemaleOccupied |
( |
| ) |
|
◆ SupplyNoMaleOccupied()
int SkTerritories::SupplyNoMaleOccupied |
( |
| ) |
|
◆ SupplyNoTerritories()
int SkTerritories::SupplyNoTerritories |
( |
| ) |
|
◆ Tick()
void SkTerritories::Tick |
( |
void |
| ) |
|
|
inline |
◆ UpdateQuality()
void SkTerritories::UpdateQuality |
( |
| ) |
|
◆ Grid
bool* SkTerritories::Grid |
|
private |
◆ m_for_iter_x
int SkTerritories::m_for_iter_x[1000] |
|
private |
◆ m_for_iter_y
int SkTerritories::m_for_iter_y[1000] |
|
private |
◆ m_hash_size
int SkTerritories::m_hash_size |
|
private |
◆ m_poly_seen
int* SkTerritories::m_poly_seen |
|
private |
◆ m_poly_size
int* SkTerritories::m_poly_size |
|
private |
◆ m_qual_cache
double* SkTerritories::m_qual_cache |
|
private |
◆ m_qual_cache_filled
bool SkTerritories::m_qual_cache_filled |
|
private |
◆ m_qual_grid
◆ m_qual_grid_signal
int SkTerritories::m_qual_grid_signal |
|
private |
◆ m_sim_h_div_10
int SkTerritories::m_sim_h_div_10 |
|
private |
Referenced by ClaimGrid(), IsExtGridPositionValid(), IsGridPositionValid(), PreEvaluateHabitat(), PreEvaluateHabitatStripY(), PreFillQualCache(), PreFillQualGrid(), PreFillTerrPolyLists(), PreProcessLandscape2(), SkTerritories(), and ~SkTerritories().
◆ m_sim_w_div_10
int SkTerritories::m_sim_w_div_10 |
|
private |
Referenced by ClaimGrid(), IsExtGridPositionValid(), IsGridPositionValid(), PreEvaluateHabitat(), PreEvaluateHabitatStripX(), PreEvaluateHabitatStripY(), PreFillQualCache(), PreFillQualGrid(), PreFillTerrPolyLists(), PreProcessLandscape2(), SkTerritories(), and ~SkTerritories().
◆ NoTerritories
int SkTerritories::NoTerritories |
|
private |
Referenced by DumpMapGraphics(), EvaluateAllTerritories(), GetTerritoriesByDistance(), IsValid(), PreProcessLandscape2(), SkTerritories(), Split(), SupplyNoFemaleOccupied(), SupplyNoMaleOccupied(), SupplyNoTerritories(), and ~SkTerritories().
◆ PolyHeightData
double SkTerritories::PolyHeightData[2500] |
◆ PolyRefData
int SkTerritories::PolyRefData[2500] |
◆ PolySizeData
int SkTerritories::PolySizeData[2500] |
◆ PolyTypeData
◆ SimH
◆ SimW
◆ Territories
Referenced by DumpMapGraphics(), EvaluateAllTerritories(), FemaleOccupy(), GetTerritoriesByDistance(), IsValid(), Occupy(), PreProcessLandscape2(), RemoveFemale(), RemoveMale(), Split(), Supply_F_Owner(), Supply_Owner(), Supply_quality(), Supply_size(), Supply_terr(), Supply_x(), Supply_y(), SupplyNoFemaleOccupied(), SupplyNoMaleOccupied(), and ~SkTerritories().
◆ TheLandscape
The documentation for this class was generated from the following files:
int HQualityMetalRoad
Definition: skylarks_all.cpp:258
Definition: tole_declaration.h:68
Definition: tole_declaration.h:78
void SetVirtualDiameter(double dia)
Definition: skylarks_all.h:278
Definition: tole_declaration.h:66
Definition: tole_declaration.h:72
void PreFillQualGrid(void)
Definition: skylarks_all.cpp:1568
Skylark_Female * F_Owner
Definition: skylarks_all.h:287
int GetQuality(void)
Definition: skylarks_all.h:284
int PreMakeForIterator(int a_min_incl, int a_max_excl, int *a_iter, int a_norm_max_excl)
Definition: skylarks_all.cpp:2214
Definition: tole_declaration.h:62
int HQualityTallVeg
Definition: skylarks_all.cpp:267
Definition: tole_declaration.h:64
TTypesOfLandscapeElement SupplyElementType(int a_polyref)
Definition: Landscape.h:1110
Definition: tole_declaration.h:77
Definition: tole_declaration.h:56
int m_sim_h_div_10
Definition: skylarks_all.h:355
Definition: tole_declaration.h:49
Definition: tole_declaration.h:102
Definition: tole_declaration.h:58
Definition: tole_declaration.h:86
Definition: tole_declaration.h:83
Definition: tole_declaration.h:53
bool SupplySkScrapes(int a_polyref)
Definition: Landscape.h:981
Definition: tole_declaration.h:82
double m_competitionscaler
Definition: skylarks_all.h:276
int HQualityTall
Definition: skylarks_all.cpp:255
Definition: tole_declaration.h:91
Definition: tole_declaration.h:88
double PrePoly2Qual(int a_poly)
Definition: skylarks_all.cpp:1642
int NoTerritories
Definition: skylarks_all.h:347
Definition: tole_declaration.h:39
bool CompareDist(APoint i, APoint j)
Definition: skylarks_all.cpp:159
void SkylarkEvaluation(SkTerritories *a_skt)
Definition: Landscape.cpp:3025
Definition: tole_declaration.h:38
Definition: tole_declaration.h:96
void SetQuality(int a_qual)
Definition: skylarks_all.h:285
int m_sim_w_div_10
Definition: skylarks_all.h:355
Definition: tole_declaration.h:98
CfgFloat cfg_FemaleMinTerritoryAcceptScore
Definition: tole_declaration.h:97
Definition: tole_declaration.h:63
int m_qual_grid_signal
Definition: skylarks_all.h:356
int Insert(int a_poly)
Definition: skylarks_all.h:328
int SimW
Definition: skylarks_all.h:348
void SetNestPossibility(bool valid, int nx, int ny)
Definition: skylarks_all.h:291
int PreEvaluateHabitatStripX(int a_x, int a_y, int a_range_x)
Definition: skylarks_all.cpp:1976
int HQualityBareEarth
Definition: skylarks_all.cpp:268
int SupplyVegDensity(int a_polyref)
Definition: Landscape.h:975
Definition: tole_declaration.h:74
Definition: tole_declaration.h:55
Definition: tole_declaration.h:89
void TestNestPossibility()
Definition: skylarks_all.cpp:1292
Definition: tole_declaration.h:111
const int HomeRangeDiameterDiv20
Definition: skylarks_all.cpp:212
Definition: tole_declaration.h:54
Landscape * TheLandscape
Definition: skylarks_all.h:402
int m_Location_x
Definition: skylarks_all.h:282
Definition: tole_declaration.h:61
double DensityScore[111]
Definition: skylarks_all.cpp:218
double m_qual
Definition: skylarks_all.h:326
int m_Location_y
Definition: skylarks_all.h:283
Definition: skylarks_all.h:321
bool IsGridPositionValid(int &x, int &y, int range)
Definition: skylarks_all.cpp:2272
boost::variate_generator< base_generator_type &, boost::uniform_real<> > g_rand_uni
Definition: tole_declaration.h:41
int PolyRefData[2500]
Definition: skylarks_all.h:398
Definition: tole_declaration.h:101
int SupplySimAreaHeight(void)
Definition: Landscape.h:1637
int SupplySimAreaWidth(void)
Definition: Landscape.h:1632
int * m_poly_seen
Definition: skylarks_all.h:361
#define SKOPTIMALHABITATSCORE
Definition: skylarks_all.cpp:45
Definition: tole_declaration.h:47
vector< int > m_polys
Definition: skylarks_all.h:325
int m_for_iter_x[1000]
Definition: skylarks_all.h:368
int m_y_div10
Definition: skylarks_all.h:271
bool SupplyVegPatchy(int a_polyref)
Definition: Landscape.h:986
Definition: tole_declaration.h:46
Definition: tole_declaration.h:79
bool * Grid
Definition: skylarks_all.h:349
int HQualityHedgeScrub
Definition: skylarks_all.cpp:259
double HeightScore[111]
Definition: skylarks_all.cpp:219
Definition: tole_declaration.h:59
CfgFloat cfg_MaleSplitScale
void ClaimGrid(int x, int y, int range)
Definition: skylarks_all.cpp:2331
bool m_nest_valid
Definition: skylarks_all.h:273
bool SupplyHasTramlines(int a_x, int a_y)
Definition: Landscape.h:1252
CfgInt cfg_SkTramlinesPremium
bool IsExtGridPositionValid(int &x, int &y, int range)
Definition: skylarks_all.cpp:2296
Definition: tole_declaration.h:87
double * m_qual_cache
Definition: skylarks_all.h:365
void PreFillTerrPolyLists(skTTerritory *a_terr)
Definition: skylarks_all.cpp:2140
Definition: tole_declaration.h:71
int PreEvaluateHabitat(int a_x, int a_y, int a_range_x, int a_range_y)
Definition: skylarks_all.cpp:1957
Definition: tole_declaration.h:84
vector< int > m_hr_polys
Definition: skylarks_all.h:267
Definition: tole_declaration.h:81
bool m_qual_cache_filled
Definition: skylarks_all.h:366
double EvaluateHabitatN(skTTerritory *a_terr)
Definition: skylarks_all.cpp:2246
Definition: tole_declaration.h:94
Definition: tole_declaration.h:65
Definition: tole_declaration.h:42
Definition: tole_declaration.h:45
vector< int > m_sizes
Definition: skylarks_all.h:324
vector< int > m_polys
Definition: skylarks_all.h:265
double SupplyVegHeight(int a_polyref)
Definition: Landscape.h:936
Definition: tole_declaration.h:43
Definition: tole_declaration.h:40
Definition: tole_declaration.h:44
int Size
Definition: skylarks_all.h:281
double GetVirtualDiameter()
Definition: skylarks_all.h:277
Definition: skylarks_all.h:262
Definition: tole_declaration.h:51
void PreEvaluateQualGrid(SkQualGrid *a_grid, int a_x, int a_y, int a_width, int a_height)
Definition: skylarks_all.cpp:1611
TTypesOfLandscapeElement
Definition: tole_declaration.h:36
CfgFloat cfg_SkScrapesPremiumII
Definition: tole_declaration.h:93
Landscape * g_land
Definition: skylarks_all.cpp:49
SkQualGrid ** m_qual_grid
Definition: skylarks_all.h:357
Definition: tole_declaration.h:50
int m_x_div10
Definition: skylarks_all.h:270
Definition: tole_declaration.h:92
Definition: tole_declaration.h:90
int * m_poly_size
Definition: skylarks_all.h:362
Definition: tole_declaration.h:95
vector< int > m_sizes
Definition: skylarks_all.h:266
vector< int > m_hr_sizes
Definition: skylarks_all.h:268
Definition: tole_declaration.h:85
int HQualityTall2
Definition: skylarks_all.cpp:256
Definition: tole_declaration.h:52
Definition: tole_declaration.h:37
skTTerritory * Territories[400000]
Definition: skylarks_all.h:346
int PreEvaluateHabitatStripY(int a_x, int a_y, int a_range_x)
Definition: skylarks_all.cpp:1997
int PatchyPremium
Definition: skylarks_all.cpp:265
int SupplyLargestPolyNumUsed()
Definition: Landscape.h:355
int HQualityWater
Definition: skylarks_all.cpp:262
Definition: tole_declaration.h:99
void Warn(std::string a_msg1, std::string a_msg2)
Definition: Landscape.h:1579
int m_hash_size
Definition: skylarks_all.h:360
double PrePolyNQual(int a_poly, int *a_good_polys)
Definition: skylarks_all.cpp:1768
Skylark_Male * Owner
Definition: skylarks_all.h:286
Definition: tole_declaration.h:76
int m_for_iter_y[1000]
Definition: skylarks_all.h:369
int SimH
Definition: skylarks_all.h:348
Definition: tole_declaration.h:48
Definition: tole_declaration.h:69
int SupplyPolyRef(int a_x, int a_y)
Definition: Landscape.h:1488
Definition: tole_declaration.h:67
Definition: tole_declaration.h:80
int HQualityHedge
Definition: skylarks_all.cpp:261
Definition: tole_declaration.h:60
int m_range_div10
Definition: skylarks_all.h:272
Definition: tole_declaration.h:57
Definition: tole_declaration.h:70