"L. Spiro Engine"

F:/My Projects/LSEngine/Modules/LSPhysicsLib/Src/SpatialPartitions/LSPQuadTreeObject.h

00001 
00016 #ifndef __LSP_QUADTREEOBJECT_H__
00017 #define __LSP_QUADTREEOBJECT_H__
00018 
00019 #include "../LSPPhysicsLib.h"
00020 #include "../BoundingBoxes/LSPAabb2d.h"
00021 
00022 namespace lsp {
00023 
00024         class CQuadTreeNode;
00025 
00032         class CQuadTreeObject {
00033         public :
00034                 // == Various constructors.
00035                 LSE_CALLCTOR                                            CQuadTreeObject();
00036                 LSE_CALLCTOR                                            ~CQuadTreeObject();
00037 
00038 
00039                 // == Functions.
00045                 LSVOID LSE_CALL                                         SetQuadTreeNode( CQuadTreeNode * _pqtnNode );
00046 
00052                 virtual const CAabb2d & LSE_CALL        QuadTreeAabb() const = 0;
00053 
00059                 LSE_INLINE const CQuadTreeNode * LSE_CALL
00060                                                                                         QuadTreeNode() const;
00061 
00062         protected :
00063                 // == Members.
00067                 CQuadTreeNode *                                         m_pqtnNode;
00068         };
00069 
00070 
00071         // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
00072         // DEFINITIONS
00073         // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
00074         // == Functions.
00080         LSE_INLINE const CQuadTreeNode * LSE_CALL CQuadTreeObject::QuadTreeNode() const {
00081                 return m_pqtnNode;
00082         }
00083 
00084 }       // namespace lsp
00085 
00086 #endif  // __LSP_QUADTREEOBJECT_H__
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator