TrinityCore
Loading...
Searching...
No Matches
VMAP::VMapManager2 Class Reference

#include <VMapManager2.h>

+ Inheritance diagram for VMAP::VMapManager2:

Public Types

typedef uint32(* GetLiquidFlagsFn) (uint32 liquidType)
 
typedef bool(* IsVMAPDisabledForFn) (uint32 entry, uint8 flags)
 

Public Member Functions

G3D::Vector3 convertPositionToInternalRep (float x, float y, float z) const
 
 VMapManager2 ()
 
 ~VMapManager2 (void)
 
void InitializeThreadUnsafe (const std::vector< uint32 > &mapIds)
 
int loadMap (char const *pBasePath, unsigned int mapId, int x, int y) override
 
void unloadMap (unsigned int mapId, int x, int y) override
 
void unloadMap (unsigned int mapId) override
 
bool isInLineOfSight (unsigned int mapId, float x1, float y1, float z1, float x2, float y2, float z2, ModelIgnoreFlags ignoreFlags) override
 
bool getObjectHitPos (unsigned int mapId, float x1, float y1, float z1, float x2, float y2, float z2, float &rx, float &ry, float &rz, float modifyDist) override
 
float getHeight (unsigned int mapId, float x, float y, float z, float maxSearchDist) override
 
bool processCommand (char *) override
 
bool getAreaAndLiquidData (uint32 mapId, float x, float y, float z, Optional< uint8 > reqLiquidType, AreaAndLiquidData &data) const override
 
WorldModelacquireModelInstance (const std::string &basepath, const std::string &filename, uint32 flags=0)
 
void releaseModelInstance (const std::string &filename)
 
virtual std::string getDirFileName (unsigned int mapId, int, int) const override
 
virtual LoadResult existsMap (char const *basePath, unsigned int mapId, int x, int y) override
 
void getInstanceMapTree (InstanceTreeMap &instanceMapTree)
 
- Public Member Functions inherited from VMAP::IVMapManager
 IVMapManager ()
 
virtual ~IVMapManager (void)
 
void setEnableLineOfSightCalc (bool pVal)
 
void setEnableHeightCalc (bool pVal)
 
bool isLineOfSightCalcEnabled () const
 
bool isHeightCalcEnabled () const
 
bool isMapLoadingEnabled () const
 
virtual bool getAreaAndLiquidData (unsigned int mapId, float x, float y, float z, Optional< uint8 > reqLiquidType, AreaAndLiquidData &data) const =0
 

Static Public Member Functions

static std::string getMapFileName (unsigned int mapId)
 

Public Attributes

GetLiquidFlagsFn GetLiquidFlagsPtr
 
IsVMAPDisabledForFn IsVMAPDisabledForPtr
 

Protected Member Functions

bool _loadMap (uint32 mapId, const std::string &basePath, uint32 tileX, uint32 tileY)
 
InstanceTreeMap::const_iterator GetMapTree (uint32 mapId) const
 

Static Protected Member Functions

static uint32 GetLiquidFlagsDummy (uint32)
 
static bool IsVMAPDisabledForDummy (uint32, uint8)
 

Protected Attributes

ModelFileMap iLoadedModelFiles
 
InstanceTreeMap iInstanceMapTrees
 
bool thread_safe_environment
 
std::mutex LoadedModelFilesLock
 

Detailed Description

Definition at line 77 of file VMapManager2.h.

Member Typedef Documentation

◆ GetLiquidFlagsFn

typedef uint32(* VMAP::VMapManager2::GetLiquidFlagsFn) (uint32 liquidType)

Definition at line 132 of file VMapManager2.h.

◆ IsVMAPDisabledForFn

typedef bool(* VMAP::VMapManager2::IsVMAPDisabledForFn) (uint32 entry, uint8 flags)

Definition at line 135 of file VMapManager2.h.

Constructor & Destructor Documentation

◆ VMapManager2()

VMAP::VMapManager2::VMapManager2 ( )

Definition at line 35 of file VMapManager2.cpp.

+ Here is the call graph for this function:

◆ ~VMapManager2()

VMAP::VMapManager2::~VMapManager2 ( void  )

Definition at line 42 of file VMapManager2.cpp.

Member Function Documentation

◆ _loadMap()

bool VMAP::VMapManager2::_loadMap ( uint32  mapId,
const std::string &  basePath,
uint32  tileX,
uint32  tileY 
)
protected

Definition at line 109 of file VMapManager2.cpp.

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

◆ acquireModelInstance()

WorldModel * VMAP::VMapManager2::acquireModelInstance ( const std::string &  basepath,
const std::string &  filename,
uint32  flags = 0 
)

Critical section, thread safe access to iLoadedModelFiles

Definition at line 267 of file VMapManager2.cpp.

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

◆ convertPositionToInternalRep()

Vector3 VMAP::VMapManager2::convertPositionToInternalRep ( float  x,
float  y,
float  z 
) const

Definition at line 63 of file VMapManager2.cpp.

+ Here is the caller graph for this function:

◆ existsMap()

LoadResult VMAP::VMapManager2::existsMap ( char const *  basePath,
unsigned int  mapId,
int  x,
int  y 
)
overridevirtual

Implements VMAP::IVMapManager.

Definition at line 312 of file VMapManager2.cpp.

+ Here is the call graph for this function:

◆ getAreaAndLiquidData()

bool VMAP::VMapManager2::getAreaAndLiquidData ( uint32  mapId,
float  x,
float  y,
float  z,
Optional< uint8 reqLiquidType,
AreaAndLiquidData data 
) const
override

Definition at line 236 of file VMapManager2.cpp.

+ Here is the call graph for this function:

◆ getDirFileName()

virtual std::string VMAP::VMapManager2::getDirFileName ( unsigned int  mapId,
int  ,
int   
) const
inlineoverridevirtual

Implements VMAP::IVMapManager.

Definition at line 124 of file VMapManager2.h.

◆ getHeight()

float VMAP::VMapManager2::getHeight ( unsigned int  mapId,
float  x,
float  y,
float  z,
float  maxSearchDist 
)
overridevirtual

get height or INVALID_HEIGHT if no height available

Implements VMAP::IVMapManager.

Definition at line 217 of file VMapManager2.cpp.

+ Here is the call graph for this function:

◆ getInstanceMapTree()

void VMAP::VMapManager2::getInstanceMapTree ( InstanceTreeMap instanceMapTree)

Definition at line 317 of file VMapManager2.cpp.

◆ GetLiquidFlagsDummy()

static uint32 VMAP::VMapManager2::GetLiquidFlagsDummy ( uint32  )
inlinestaticprotected

Definition at line 90 of file VMapManager2.h.

+ Here is the caller graph for this function:

◆ getMapFileName()

std::string VMAP::VMapManager2::getMapFileName ( unsigned int  mapId)
static

Definition at line 75 of file VMapManager2.cpp.

+ Here is the caller graph for this function:

◆ GetMapTree()

InstanceTreeMap::const_iterator VMAP::VMapManager2::GetMapTree ( uint32  mapId) const
protected

Definition at line 98 of file VMapManager2.cpp.

+ Here is the caller graph for this function:

◆ getObjectHitPos()

bool VMAP::VMapManager2::getObjectHitPos ( unsigned int  mapId,
float  x1,
float  y1,
float  z1,
float  x2,
float  y2,
float  z2,
float &  rx,
float &  ry,
float &  rz,
float  modifyDist 
)
overridevirtual

fill the hit pos and return true, if an object was hit

get the hit position and return true if we hit something otherwise the result pos will be the dest pos

Implements VMAP::IVMapManager.

Definition at line 187 of file VMapManager2.cpp.

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

◆ InitializeThreadUnsafe()

void VMAP::VMapManager2::InitializeThreadUnsafe ( const std::vector< uint32 > &  mapIds)

Definition at line 54 of file VMapManager2.cpp.

+ Here is the caller graph for this function:

◆ isInLineOfSight()

bool VMAP::VMapManager2::isInLineOfSight ( unsigned int  mapId,
float  x1,
float  y1,
float  z1,
float  x2,
float  y2,
float  z2,
ModelIgnoreFlags  ignoreFlags 
)
overridevirtual

Implements VMAP::IVMapManager.

Definition at line 164 of file VMapManager2.cpp.

+ Here is the call graph for this function:

◆ IsVMAPDisabledForDummy()

static bool VMAP::VMapManager2::IsVMAPDisabledForDummy ( uint32  ,
uint8   
)
inlinestaticprotected

Definition at line 91 of file VMapManager2.h.

+ Here is the caller graph for this function:

◆ loadMap()

int VMAP::VMapManager2::loadMap ( char const *  pBasePath,
unsigned int  mapId,
int  x,
int  y 
)
overridevirtual

Implements VMAP::IVMapManager.

Definition at line 84 of file VMapManager2.cpp.

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

◆ processCommand()

bool VMAP::VMapManager2::processCommand ( char *  pCommand)
inlineoverridevirtual

send debug commands

Implements VMAP::IVMapManager.

Definition at line 116 of file VMapManager2.h.

◆ releaseModelInstance()

void VMAP::VMapManager2::releaseModelInstance ( const std::string &  filename)

Critical section, thread safe access to iLoadedModelFiles

Definition at line 293 of file VMapManager2.cpp.

+ Here is the caller graph for this function:

◆ unloadMap() [1/2]

void VMAP::VMapManager2::unloadMap ( unsigned int  mapId)
overridevirtual

Implements VMAP::IVMapManager.

Definition at line 136 of file VMapManager2.cpp.

◆ unloadMap() [2/2]

void VMAP::VMapManager2::unloadMap ( unsigned int  mapId,
int  x,
int  y 
)
overridevirtual

Implements VMAP::IVMapManager.

Definition at line 150 of file VMapManager2.cpp.

+ Here is the caller graph for this function:

Member Data Documentation

◆ GetLiquidFlagsPtr

GetLiquidFlagsFn VMAP::VMapManager2::GetLiquidFlagsPtr

Definition at line 133 of file VMapManager2.h.

◆ iInstanceMapTrees

InstanceTreeMap VMAP::VMapManager2::iInstanceMapTrees
protected

Definition at line 82 of file VMapManager2.h.

◆ iLoadedModelFiles

ModelFileMap VMAP::VMapManager2::iLoadedModelFiles
protected

Definition at line 81 of file VMapManager2.h.

◆ IsVMAPDisabledForPtr

IsVMAPDisabledForFn VMAP::VMapManager2::IsVMAPDisabledForPtr

Definition at line 136 of file VMapManager2.h.

◆ LoadedModelFilesLock

std::mutex VMAP::VMapManager2::LoadedModelFilesLock
protected

Definition at line 85 of file VMapManager2.h.

◆ thread_safe_environment

bool VMAP::VMapManager2::thread_safe_environment
protected

Definition at line 83 of file VMapManager2.h.


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