TrinityCore
Loading...
Searching...
No Matches
MMAP Namespace Reference

Namespaces

namespace  VMapFactory
 

Classes

class  DynamicTileBuilder
 
struct  IntermediateValues
 
class  MapBuilder
 
struct  MapEntry
 
class  MapTileBuilder
 
struct  MeshData
 
struct  MMapData
 
class  MMapManager
 
struct  MMapMapData
 
class  TerrainBuilder
 
class  TileBuilder
 
struct  TileBuildRequest
 
struct  TileConfig
 
struct  TileInfo
 

Typedefs

using detour_unique_ptr = std::unique_ptr< unsigned char, decltype(Trinity::unique_ptr_deleter< unsigned char *, &::dtFree >())>
 
using NavMeshQuerySet = std::unordered_map< std::pair< uint32, uint32 >, dtNavMeshQuery >
 
using MMapTileSet = std::unordered_map< uint32, dtTileRef >
 
using MeshDataMap = std::unordered_map< uint32, MMapMapData >
 
typedef std::unordered_map< uint32, std::unique_ptr< MMapData > > MMapDataSet
 
typedef std::unordered_map< uint32, Trinity::Containers::FlatSet< uint32 > > TileList
 

Enumerations

enum  Spot {
  TOP = 1 , RIGHT = 2 , LEFT = 3 , BOTTOM = 4 ,
  ENTIRE = 5
}
 
enum  Grid { GRID_V8 , GRID_V9 }
 
enum class  LoadResult : uint8 {
  Success , AlreadyLoaded , FileNotFound , VersionMismatch ,
  ReadFromFileFailed , LibraryError
}
 
enum  ListFilesResult { LISTFILE_DIRECTORY_NOT_FOUND = 0 , LISTFILE_OK = 1 }
 

Functions

bool InvokeAsyncCallbackIfReady (TileBuildRequest &request)
 
bool matchWildcardFilter (std::string_view filter, std::string_view str)
 
ListFilesResult getDirContents (std::vector< std::string > &fileList, boost::filesystem::path const &dirpath, boost::filesystem::file_type type=boost::filesystem::regular_file, std::string_view filter="*"sv)
 

Variables

std::unique_ptr< VMAP::VMapManager >(* CreateVMapManager )(uint32 mapId)
 
static const int V9_SIZE = 129
 
static const int V9_SIZE_SQ = V9_SIZE*V9_SIZE
 
static const int V8_SIZE = 128
 
static const int V8_SIZE_SQ = V8_SIZE*V8_SIZE
 
static const float GRID_SIZE = 533.3333f
 
static const float GRID_PART_SIZE = GRID_SIZE/V8_SIZE
 
static const float INVALID_MAP_LIQ_HEIGHT = -2000.f
 
static const float INVALID_MAP_LIQ_HEIGHT_MAX = 5000.0f
 
constexpr char MAP_FILE_NAME_FORMAT [] = "{}mmaps/{:04}.mmap"
 
constexpr char TILE_FILE_NAME_FORMAT [] = "{}mmaps/{:04}_{:02}_{:02}.mmtile"
 
static constexpr auto SetAsyncCallbackReady
 
std::unordered_map< uint32, MapEntry > sMapStore
 

Typedef Documentation

◆ detour_unique_ptr

using MMAP::detour_unique_ptr = typedef std::unique_ptr<unsigned char, decltype(Trinity::unique_ptr_deleter<unsigned char*, &::dtFree>())>

Definition at line 32 of file TileBuilder.h.

◆ MeshDataMap

using MMAP::MeshDataMap = typedef std::unordered_map<uint32, MMapMapData>

Definition at line 41 of file MMapManager.cpp.

◆ MMapDataSet

typedef std::unordered_map<uint32, std::unique_ptr<MMapData> > MMAP::MMapDataSet

Definition at line 34 of file MMapManager.h.

◆ MMapTileSet

using MMAP::MMapTileSet = typedef std::unordered_map<uint32, dtTileRef>

Definition at line 33 of file MMapManager.cpp.

◆ NavMeshQuerySet

using MMAP::NavMeshQuerySet = typedef std::unordered_map<std::pair<uint32, uint32>, dtNavMeshQuery>

Definition at line 32 of file MMapManager.cpp.

◆ TileList

typedef std::unordered_map<uint32, Trinity::Containers::FlatSet<uint32> > MMAP::TileList

Definition at line 35 of file MapBuilder.h.

Enumeration Type Documentation

◆ Grid

enum MMAP::Grid
Enumerator
GRID_V8 
GRID_V9 

Definition at line 44 of file TerrainBuilder.h.

◆ ListFilesResult

Enumerator
LISTFILE_DIRECTORY_NOT_FOUND 
LISTFILE_OK 

Definition at line 63 of file PathCommon.h.

◆ LoadResult

enum class MMAP::LoadResult : uint8
strong
Enumerator
Success 
AlreadyLoaded 
FileNotFound 
VersionMismatch 
ReadFromFileFailed 
LibraryError 

Definition at line 36 of file MMapManager.h.

◆ Spot

enum MMAP::Spot
Enumerator
TOP 
RIGHT 
LEFT 
BOTTOM 
ENTIRE 

Definition at line 35 of file TerrainBuilder.h.

Function Documentation

◆ getDirContents()

ListFilesResult MMAP::getDirContents ( std::vector< std::string > &  fileList,
boost::filesystem::path const &  dirpath,
boost::filesystem::file_type  type = boost::filesystem::regular_file,
std::string_view  filter = "*"sv 
)
inline

Definition at line 69 of file PathCommon.h.

References LISTFILE_DIRECTORY_NOT_FOUND, LISTFILE_OK, and matchWildcardFilter().

Referenced by checkDirectories().

◆ InvokeAsyncCallbackIfReady()

◆ matchWildcardFilter()

bool MMAP::matchWildcardFilter ( std::string_view  filter,
std::string_view  str 
)
inline

Definition at line 28 of file PathCommon.h.

Referenced by getDirContents().

Variable Documentation

◆ CreateVMapManager

TC_MMAPS_COMMON_API std::unique_ptr< VMAP::VMapManager >(* MMAP::CreateVMapManager)(uint32 mapId) ( uint32  mapId)

◆ GRID_PART_SIZE

◆ GRID_SIZE

◆ INVALID_MAP_LIQ_HEIGHT

const float MMAP::INVALID_MAP_LIQ_HEIGHT = -2000.f
static

Definition at line 58 of file TerrainBuilder.h.

Referenced by MMAP::TerrainBuilder::loadMap().

◆ INVALID_MAP_LIQ_HEIGHT_MAX

const float MMAP::INVALID_MAP_LIQ_HEIGHT_MAX = 5000.0f
static

Definition at line 59 of file TerrainBuilder.h.

Referenced by MMAP::TerrainBuilder::loadMap().

◆ MAP_FILE_NAME_FORMAT

constexpr char MMAP::MAP_FILE_NAME_FORMAT[] = "{}mmaps/{:04}.mmap"
constexpr

Definition at line 29 of file MMapManager.cpp.

Referenced by MMAP::MMapManager::parseNavMeshParamsFile().

◆ SetAsyncCallbackReady

constexpr auto MMAP::SetAsyncCallbackReady
staticconstexpr
Initial value:
= [](DynamicTileBuilder::AsyncTileResult* result)
{
result->IsReady.store(true, std::memory_order::release);
}

Definition at line 241 of file DynamicMMapTileBuilder.cpp.

◆ sMapStore

◆ TILE_FILE_NAME_FORMAT

constexpr char MMAP::TILE_FILE_NAME_FORMAT[] = "{}mmaps/{:04}_{:02}_{:02}.mmtile"
constexpr

Definition at line 30 of file MMapManager.cpp.

Referenced by MMAP::MMapManager::loadMap().

◆ V8_SIZE

const int MMAP::V8_SIZE = 128
static

◆ V8_SIZE_SQ

const int MMAP::V8_SIZE_SQ = V8_SIZE*V8_SIZE
static

◆ V9_SIZE

◆ V9_SIZE_SQ

const int MMAP::V9_SIZE_SQ = V9_SIZE*V9_SIZE
static