Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
DynamicTree.h
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6
7#ifndef _DYNTREE_H
8#define _DYNTREE_H
9
10#include "Define.h"
11
12namespace G3D
13{
14 class Ray;
15 class Vector3;
16}
17
18class GameObjectModel;
19struct DynTreeImpl;
20
22{
24
25public:
28
29 bool isInLineOfSight(float x1, float y1, float z1, float x2, float y2,
30 float z2, uint32 phasemask) const;
31
32 bool getIntersectionTime(uint32 phasemask, const G3D::Ray& ray,
33 const G3D::Vector3& endPos, float& maxDist) const;
34
35 bool getObjectHitPos(uint32 phasemask, const G3D::Vector3& pPos1,
36 const G3D::Vector3& pPos2, G3D::Vector3& pResultHitPos,
37 float pModifyDist) const;
38
39 float getHeight(float x, float y, float z, float maxSearchDist, uint32 phasemask) const;
40
41 void insert(const GameObjectModel&);
42 void remove(const GameObjectModel&);
43 bool contains(const GameObjectModel&) const;
44 int size() const;
45
46 void balance();
47 void update(uint32 diff);
48};
49
50#endif // _DYNTREE_H
std::uint32_t uint32
Definition Define.h:77
bool contains(const GameObjectModel &) const
void insert(const GameObjectModel &)
bool getIntersectionTime(uint32 phasemask, const G3D::Ray &ray, const G3D::Vector3 &endPos, float &maxDist) const
bool isInLineOfSight(float x1, float y1, float z1, float x2, float y2, float z2, uint32 phasemask) const
DynTreeImpl * impl
Definition DynamicTree.h:23
void update(uint32 diff)
int size() const
float getHeight(float x, float y, float z, float maxSearchDist, uint32 phasemask) const
bool getObjectHitPos(uint32 phasemask, const G3D::Vector3 &pPos1, const G3D::Vector3 &pPos2, G3D::Vector3 &pResultHitPos, float pModifyDist) const
void remove(const GameObjectModel &)