VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager Class Reference

poor man's page manager. used so that no pointers are saved in the R-Tree data More...

#include <RTree.h>

List of all members.

Public Types

typedef std::vector< class
InnerNode * > 
innerpages_t
typedef std::vector< class
LeafNode * > 
leafpages_t

Public Member Functions

void clear ()
void deletePage (pageid_t pi)
NodeHeadgetPage (pageid_t pi) const
pageid_t new_innerpage ()
pageid_t new_leafpage ()
 create a new leaf page
pageid_t newPage (unsigned int nodesize)
 this is an evil workaround to get a new page of a generic type, because we need that in the splitNode() function.
PageManageroperator= (const PageManager &c)
 PageManager (const PageManager &c)
 PageManager ()
 ~PageManager ()

Public Attributes

std::vector< class InnerNode * > innerpages
std::vector< class LeafNode * > leafpages

Static Public Attributes

static const pageid_t leafmask = 0x80000000


Detailed Description

template<typename _DataType, typename _DataTypeCallback>
class VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager

poor man's page manager. used so that no pointers are saved in the R-Tree data

Definition at line 2023 of file RTree.h.


Member Typedef Documentation

template<typename _DataType, typename _DataTypeCallback>
typedef std::vector<class InnerNode*> VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::innerpages_t

Definition at line 2026 of file RTree.h.

template<typename _DataType, typename _DataTypeCallback>
typedef std::vector<class LeafNode*> VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::leafpages_t

Definition at line 2029 of file RTree.h.


Constructor & Destructor Documentation

template<typename _DataType, typename _DataTypeCallback>
VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::PageManager (  )  [inline]

Definition at line 2032 of file RTree.h.

template<typename _DataType, typename _DataTypeCallback>
VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::PageManager ( const PageManager c  )  [inline]

Definition at line 2035 of file RTree.h.

References VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::innerpages, and VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::leafpages.

template<typename _DataType, typename _DataTypeCallback>
VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::~PageManager (  )  [inline]

Definition at line 2057 of file RTree.h.


Member Function Documentation

template<typename _DataType, typename _DataTypeCallback>
void VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::clear (  )  [inline]

Definition at line 2149 of file RTree.h.

template<typename _DataType, typename _DataTypeCallback>
void VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::deletePage ( pageid_t  pi  )  [inline]

Definition at line 2131 of file RTree.h.

Referenced by VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::condenseTree(), and VGServer::RTree::Tree< _DataType, _DataTypeCallback >::LeafNode::deleteDataLeaf().

template<typename _DataType, typename _DataTypeCallback>
class NodeHead* VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::getPage ( pageid_t  pi  )  const [inline]

Definition at line 2068 of file RTree.h.

Referenced by VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::adjustTree(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::calcOverlap(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::calcStats(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::calcWasteArea(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::checkNode(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::chooseSubtree(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::condenseTree(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::LeafNode::deleteDataLeaf(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::insertChild(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::reinsertData(), VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::splitNode(), and VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::writeFig().

template<typename _DataType, typename _DataTypeCallback>
pageid_t VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::new_innerpage (  )  [inline]

Definition at line 2084 of file RTree.h.

Referenced by VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::insertChild().

template<typename _DataType, typename _DataTypeCallback>
pageid_t VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::new_leafpage (  )  [inline]

create a new leaf page

Definition at line 2100 of file RTree.h.

template<typename _DataType, typename _DataTypeCallback>
pageid_t VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::newPage ( unsigned int  nodesize  )  [inline]

this is an evil workaround to get a new page of a generic type, because we need that in the splitNode() function.

Definition at line 2117 of file RTree.h.

Referenced by VGServer::RTree::Tree< _DataType, _DataTypeCallback >::Node< VGServer::RTree::Tree::InnerNodeData >::splitNode().

template<typename _DataType, typename _DataTypeCallback>
PageManager& VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::operator= ( const PageManager c  )  [inline]

Definition at line 2044 of file RTree.h.

References VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::innerpages, and VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::leafpages.


Member Data Documentation

template<typename _DataType, typename _DataTypeCallback>
std::vector<class InnerNode*> VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::innerpages

Definition at line 2027 of file RTree.h.

Referenced by VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::operator=(), and VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::PageManager().

template<typename _DataType, typename _DataTypeCallback>
const pageid_t VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::leafmask = 0x80000000 [static]

Definition at line 2066 of file RTree.h.

template<typename _DataType, typename _DataTypeCallback>
std::vector<class LeafNode*> VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::leafpages

Definition at line 2030 of file RTree.h.

Referenced by VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::operator=(), and VGServer::RTree::Tree< _DataType, _DataTypeCallback >::PageManager::PageManager().


The documentation for this class was generated from the following file:
Generated on Wed Sep 27 14:34:01 2006 for VGServer by  doxygen 1.4.7