00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef TA_SPACEDIVISIONOBJECT_H
00013 #define TA_SPACEDIVISIONOBJECT_H
00014
00015 #ifndef TA_PHYSICSCOMMON_H
00016 #include "PhysicsCommon.h"
00017 #endif // TA_PHYSICSCOMMON_H
00018
00019 namespace TA
00020 {
00021
00022 struct Vec3;
00023 struct AABB;
00024 class CollisionGrid;
00025 class CollisionOctree;
00026
00027 class TAPHYSICS_CLASS SpaceDivisionObject
00028 {
00029 public:
00030 TA_OBFUSCATION_RESERVED_ON
00031 virtual const Vec3& GetCollisionGridWorldPos() const = 0;
00032 virtual const AABB& GetCollisionGridWorldAABB() const = 0;
00033 virtual const AABB& GetCollisionGridGetLocalAABB() const = 0;
00034
00035 protected:
00036 SpaceDivisionObject();
00037 TA_OBFUSCATION_RESERVED_OFF
00038
00039 private:
00040 friend class CollisionGrid;
00041 friend class CollisionOctree;
00042
00043 SpaceDivisionObject* m_pNext;
00044 SpaceDivisionObject** m_ppPrev;
00045 };
00046
00047 }
00048
00049 #endif // TA_SPACEDIVISIONOBJECT_H
© Copyright 2004-2006 TRUE AXIS PTY LTD Australia. All rights reserved.