TrinityCore
Loading...
Searching...
No Matches
MMAP::MapBuilder Class Reference

#include <MapBuilder.h>

Public Member Functions

 MapBuilder (boost::filesystem::path const &inputDirectory, boost::filesystem::path const &outputDirectory, Optional< float > maxWalkableAngle, Optional< float > maxWalkableAngleNotSteep, bool skipLiquid, bool skipContinents, bool skipJunkMaps, bool skipBattlegrounds, bool debugOutput, bool bigBaseUnit, int mapid, char const *offMeshFilePath, unsigned int threads)
 
 ~MapBuilder ()
 
void buildMeshFromFile (char const *name)
 
void buildSingleTile (uint32 mapID, uint32 tileX, uint32 tileY)
 
void buildMaps (Optional< uint32 > mapID)
 

Private Member Functions

void buildMap (uint32 mapID)
 
void discoverTiles ()
 
std::span< uint32 const > getTileList (uint32 mapID) const
 
void buildNavMesh (uint32 mapID, dtNavMesh *&navMesh)
 
bool shouldSkipMap (uint32 mapID) const
 
bool isTransportMap (uint32 mapID) const
 
bool isDevMap (uint32 mapID) const
 
bool isBattlegroundMap (uint32 mapID) const
 
bool isContinentMap (uint32 mapID) const
 
uint32 percentageDone (uint32 totalTiles, uint32 totalTilesDone) const
 
uint32 currentPercentageDone () const
 
void ParseOffMeshConnectionsFile (char const *offMeshFilePath)
 

Private Attributes

TileList m_tiles
 
boost::filesystem::path m_inputDirectory
 
boost::filesystem::path m_outputDirectory
 
bool m_debugOutput
 
std::vector< OffMeshDatam_offMeshConnections
 
unsigned int m_threads
 
bool m_skipContinents
 
bool m_skipJunkMaps
 
bool m_skipBattlegrounds
 
bool m_skipLiquid
 
Optional< float > m_maxWalkableAngle
 
Optional< float > m_maxWalkableAngleNotSteep
 
bool m_bigBaseUnit
 
int32 m_mapid
 
uint32 m_totalTiles
 
std::atomic< uint32m_totalTilesProcessed
 
std::vector< std::unique_ptr< TileBuilder > > m_tileBuilders
 
ProducerConsumerQueue< TileInfo_queue
 
std::atomic< bool > _cancelationToken
 

Friends

class TileBuilder
 
class MapTileBuilder
 

Detailed Description

Definition at line 76 of file MapBuilder.h.

Constructor & Destructor Documentation

◆ MapBuilder()

MMAP::MapBuilder::MapBuilder ( boost::filesystem::path const &  inputDirectory,
boost::filesystem::path const &  outputDirectory,
Optional< float >  maxWalkableAngle,
Optional< float >  maxWalkableAngleNotSteep,
bool  skipLiquid,
bool  skipContinents,
bool  skipJunkMaps,
bool  skipBattlegrounds,
bool  debugOutput,
bool  bigBaseUnit,
int  mapid,
char const *  offMeshFilePath,
unsigned int  threads 
)

Definition at line 62 of file MapBuilder.cpp.

+ Here is the call graph for this function:

◆ ~MapBuilder()

MMAP::MapBuilder::~MapBuilder ( )

Definition at line 92 of file MapBuilder.cpp.

Member Function Documentation

◆ buildMap()

void MMAP::MapBuilder::buildMap ( uint32  mapID)
private

Definition at line 363 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildMaps()

void MMAP::MapBuilder::buildMaps ( Optional< uint32 mapID)

Definition at line 251 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildMeshFromFile()

void MMAP::MapBuilder::buildMeshFromFile ( char const *  name)

Definition at line 284 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildNavMesh()

void MMAP::MapBuilder::buildNavMesh ( uint32  mapID,
dtNavMesh *&  navMesh 
)
private

‍*** calculate number of bits needed to store tiles & polys ***‍/

Definition at line 401 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildSingleTile()

void MMAP::MapBuilder::buildSingleTile ( uint32  mapID,
uint32  tileX,
uint32  tileY 
)

Definition at line 340 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ currentPercentageDone()

uint32 MMAP::MapBuilder::currentPercentageDone ( ) const
private

Definition at line 607 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ discoverTiles()

void MMAP::MapBuilder::discoverTiles ( )
private

Definition at line 103 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getTileList()

std::span< uint32 const > MMAP::MapBuilder::getTileList ( uint32  mapID) const
private

Definition at line 216 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isBattlegroundMap()

bool MMAP::MapBuilder::isBattlegroundMap ( uint32  mapID) const
private

Definition at line 543 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isContinentMap()

bool MMAP::MapBuilder::isContinentMap ( uint32  mapID) const
private

Definition at line 551 of file MapBuilder.cpp.

+ Here is the caller graph for this function:

◆ isDevMap()

bool MMAP::MapBuilder::isDevMap ( uint32  mapID) const
private

Definition at line 535 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isTransportMap()

bool MMAP::MapBuilder::isTransportMap ( uint32  mapID) const
private

Definition at line 527 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ParseOffMeshConnectionsFile()

void MMAP::MapBuilder::ParseOffMeshConnectionsFile ( char const *  offMeshFilePath)
private

Definition at line 181 of file MapBuilder.cpp.

+ Here is the caller graph for this function:

◆ percentageDone()

uint32 MMAP::MapBuilder::percentageDone ( uint32  totalTiles,
uint32  totalTilesDone 
) const
private

Definition at line 599 of file MapBuilder.cpp.

+ Here is the caller graph for this function:

◆ shouldSkipMap()

bool MMAP::MapBuilder::shouldSkipMap ( uint32  mapID) const
private

Definition at line 487 of file MapBuilder.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ MapTileBuilder

friend class MapTileBuilder
friend

Definition at line 79 of file MapBuilder.h.

◆ TileBuilder

friend class TileBuilder
friend

Definition at line 78 of file MapBuilder.h.

Member Data Documentation

◆ _cancelationToken

std::atomic<bool> MMAP::MapBuilder::_cancelationToken
private

Definition at line 150 of file MapBuilder.h.

◆ _queue

ProducerConsumerQueue<TileInfo> MMAP::MapBuilder::_queue
private

Definition at line 149 of file MapBuilder.h.

◆ m_bigBaseUnit

bool MMAP::MapBuilder::m_bigBaseUnit
private

Definition at line 141 of file MapBuilder.h.

◆ m_debugOutput

bool MMAP::MapBuilder::m_debugOutput
private

Definition at line 130 of file MapBuilder.h.

◆ m_inputDirectory

boost::filesystem::path MMAP::MapBuilder::m_inputDirectory
private

Definition at line 128 of file MapBuilder.h.

◆ m_mapid

int32 MMAP::MapBuilder::m_mapid
private

Definition at line 143 of file MapBuilder.h.

◆ m_maxWalkableAngle

Optional<float> MMAP::MapBuilder::m_maxWalkableAngle
private

Definition at line 139 of file MapBuilder.h.

◆ m_maxWalkableAngleNotSteep

Optional<float> MMAP::MapBuilder::m_maxWalkableAngleNotSteep
private

Definition at line 140 of file MapBuilder.h.

◆ m_offMeshConnections

std::vector<OffMeshData> MMAP::MapBuilder::m_offMeshConnections
private

Definition at line 132 of file MapBuilder.h.

◆ m_outputDirectory

boost::filesystem::path MMAP::MapBuilder::m_outputDirectory
private

Definition at line 129 of file MapBuilder.h.

◆ m_skipBattlegrounds

bool MMAP::MapBuilder::m_skipBattlegrounds
private

Definition at line 136 of file MapBuilder.h.

◆ m_skipContinents

bool MMAP::MapBuilder::m_skipContinents
private

Definition at line 134 of file MapBuilder.h.

◆ m_skipJunkMaps

bool MMAP::MapBuilder::m_skipJunkMaps
private

Definition at line 135 of file MapBuilder.h.

◆ m_skipLiquid

bool MMAP::MapBuilder::m_skipLiquid
private

Definition at line 137 of file MapBuilder.h.

◆ m_threads

unsigned int MMAP::MapBuilder::m_threads
private

Definition at line 133 of file MapBuilder.h.

◆ m_tileBuilders

std::vector<std::unique_ptr<TileBuilder> > MMAP::MapBuilder::m_tileBuilders
private

Definition at line 148 of file MapBuilder.h.

◆ m_tiles

TileList MMAP::MapBuilder::m_tiles
private

Definition at line 126 of file MapBuilder.h.

◆ m_totalTiles

uint32 MMAP::MapBuilder::m_totalTiles
private

Definition at line 145 of file MapBuilder.h.

◆ m_totalTilesProcessed

std::atomic<uint32> MMAP::MapBuilder::m_totalTilesProcessed
private

Definition at line 146 of file MapBuilder.h.


The documentation for this class was generated from the following files: