Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Macros | Typedefs | Functions
CCmpTerritoryManager.cpp File Reference
#include "precompiled.h"
#include "simulation2/system/Component.h"
#include "ICmpTerritoryManager.h"
#include "graphics/Overlay.h"
#include "graphics/Terrain.h"
#include "graphics/TextureManager.h"
#include "graphics/TerritoryBoundary.h"
#include "maths/MathUtil.h"
#include "maths/Vector2D.h"
#include "ps/Overlay.h"
#include "renderer/Renderer.h"
#include "renderer/Scene.h"
#include "renderer/TerrainOverlay.h"
#include "simulation2/MessageTypes.h"
#include "simulation2/components/ICmpObstruction.h"
#include "simulation2/components/ICmpObstructionManager.h"
#include "simulation2/components/ICmpOwnership.h"
#include "simulation2/components/ICmpPathfinder.h"
#include "simulation2/components/ICmpPlayer.h"
#include "simulation2/components/ICmpPlayerManager.h"
#include "simulation2/components/ICmpPosition.h"
#include "simulation2/components/ICmpSettlement.h"
#include "simulation2/components/ICmpTerrain.h"
#include "simulation2/components/ICmpTerritoryInfluence.h"
#include "simulation2/helpers/Geometry.h"
#include "simulation2/helpers/Grid.h"
#include "simulation2/helpers/PriorityQueue.h"
#include "simulation2/helpers/Render.h"

Go to the source code of this file.

Classes

class  TerritoryOverlay
 
class  CCmpTerritoryManager
 
struct  CCmpTerritoryManager::SBoundaryLine
 

Macros

#define MARK_AND_PUSH(i, j)   STMT(grid.set(i, j, owner | TERRITORY_CONNECTED_MASK); tileStack.push_back(std::make_pair(i, j)); )
 

Typedefs

typedef PriorityQueueHeap
< std::pair< u16, u16 >, u32,
std::greater< u32 > > 
OpenQueue
 

Functions

static void ProcessNeighbour (u32 falloff, u16 i, u16 j, u32 pg, bool diagonal, Grid< u32 > &grid, OpenQueue &queue, const Grid< u8 > &costGrid)
 
static void FloodFill (Grid< u32 > &grid, Grid< u8 > &costGrid, OpenQueue &openTiles, u32 falloff)
 
static void NearestTile (entity_pos_t x, entity_pos_t z, u16 &i, u16 &j, u16 w, u16 h)
 Compute the tile indexes on the grid nearest to a given point. More...
 
static void TileCenter (u16 i, u16 j, entity_pos_t &x, entity_pos_t &z)
 Returns the position of the center of the given tile. More...
 

Macro Definition Documentation

#define MARK_AND_PUSH (   i,
 
)    STMT(grid.set(i, j, owner | TERRITORY_CONNECTED_MASK); tileStack.push_back(std::make_pair(i, j)); )

Typedef Documentation

typedef PriorityQueueHeap<std::pair<u16, u16>, u32, std::greater<u32> > OpenQueue

Definition at line 280 of file CCmpTerritoryManager.cpp.

Function Documentation

static void FloodFill ( Grid< u32 > &  grid,
Grid< u8 > &  costGrid,
OpenQueue openTiles,
u32  falloff 
)
static

Definition at line 301 of file CCmpTerritoryManager.cpp.

static void NearestTile ( entity_pos_t  x,
entity_pos_t  z,
u16 i,
u16 j,
u16  w,
u16  h 
)
static

Compute the tile indexes on the grid nearest to a given point.

Definition at line 543 of file CCmpTerritoryManager.cpp.

static void ProcessNeighbour ( u32  falloff,
u16  i,
u16  j,
u32  pg,
bool  diagonal,
Grid< u32 > &  grid,
OpenQueue queue,
const Grid< u8 > &  costGrid 
)
static

Definition at line 282 of file CCmpTerritoryManager.cpp.

static void TileCenter ( u16  i,
u16  j,
entity_pos_t x,
entity_pos_t z 
)
static

Returns the position of the center of the given tile.

Definition at line 552 of file CCmpTerritoryManager.cpp.