#include <Node.h>
Inheritance diagram for SpatialIndex::RTree::Node:


Definition at line 36 of file Node.h.
Public Member Functions | |
| virtual | ~Node () |
| virtual Tools::IObject * | clone () |
| virtual unsigned long | getByteArraySize () |
| virtual void | loadFromByteArray (const byte *data) |
| virtual void | storeToByteArray (byte **data, unsigned long &len) |
| virtual long | getIdentifier () const |
| virtual void | getShape (IShape **out) const |
| virtual unsigned long | getChildrenCount () const |
| virtual long | getChildIdentifier (unsigned long index) const |
| virtual void | getChildShape (unsigned long index, IShape **out) const |
| virtual unsigned long | getLevel () const |
| virtual bool | isIndex () const |
| virtual bool | isLeaf () const |
Private Member Functions | |
| Node () | |
| Node (RTree *pTree, long id, unsigned long level, unsigned long capacity) | |
| virtual Node & | operator= (const Node &) |
| virtual void | insertEntry (unsigned long dataLength, byte *pData, Region &mbr, long id) |
| virtual void | deleteEntry (unsigned long index) |
| virtual bool | insertData (unsigned long dataLength, byte *pData, Region &mbr, long id, std::stack< long > &pathBuffer, byte *overflowTable) |
| virtual void | reinsertData (unsigned long dataLength, byte *pData, Region &mbr, long id, std::vector< long > &reinsert, std::vector< long > &keep) |
| virtual void | rtreeSplit (unsigned long dataLength, byte *pData, Region &mbr, long id, std::vector< long > &group1, std::vector< long > &group2) |
| virtual void | rstarSplit (unsigned long dataLength, byte *pData, Region &mbr, long id, std::vector< long > &group1, std::vector< long > &group2) |
| virtual void | pickSeeds (unsigned long &index1, unsigned long &index2) |
| virtual void | condenseTree (std::stack< NodePtr > &toReinsert, std::stack< long > &pathBuffer, NodePtr &ptrThis) |
| virtual NodePtr | chooseSubtree (const Region &mbr, unsigned long level, std::stack< long > &pathBuffer)=0 |
| virtual NodePtr | findLeaf (const Region &mbr, long id, std::stack< long > &pathBuffer)=0 |
| virtual void | split (unsigned long dataLength, byte *pData, Region &mbr, long id, NodePtr &left, NodePtr &right)=0 |
Private Attributes | |
| RTree * | m_pTree |
| unsigned long | m_level |
| long | m_identifier |
| unsigned long | m_children |
| unsigned long | m_capacity |
| Region | m_nodeMBR |
| byte ** | m_pData |
| RegionPtr * | m_ptrMBR |
| long * | m_pIdentifier |
| unsigned long * | m_pDataLength |
| unsigned long | m_totalDataLength |
Friends | |
| class | RTree |
| class | Leaf |
| class | Index |
| class | Tools::PointerPool< Node > |
| class | BulkLoader |
Classes | |
| class | ReinsertEntry |
| class | RstarSplitEntry |
| virtual SpatialIndex::RTree::Node::~Node | ( | ) | [virtual] |
| SpatialIndex::RTree::Node::Node | ( | ) | [private] |
| SpatialIndex::RTree::Node::Node | ( | RTree * | pTree, | |
| long | id, | |||
| unsigned long | level, | |||
| unsigned long | capacity | |||
| ) | [private] |
| virtual Tools::IObject* SpatialIndex::RTree::Node::clone | ( | ) | [virtual] |
| virtual unsigned long SpatialIndex::RTree::Node::getByteArraySize | ( | ) | [virtual] |
| virtual void SpatialIndex::RTree::Node::storeToByteArray | ( | byte ** | data, | |
| unsigned long & | len | |||
| ) | [virtual] |
| virtual long SpatialIndex::RTree::Node::getIdentifier | ( | ) | const [virtual] |
| virtual void SpatialIndex::RTree::Node::getShape | ( | IShape ** | out | ) | const [virtual] |
| virtual unsigned long SpatialIndex::RTree::Node::getChildrenCount | ( | ) | const [virtual] |
| virtual long SpatialIndex::RTree::Node::getChildIdentifier | ( | unsigned long | index | ) | const [virtual] |
| virtual void SpatialIndex::RTree::Node::getChildShape | ( | unsigned long | index, | |
| IShape ** | out | |||
| ) | const [virtual] |
| virtual unsigned long SpatialIndex::RTree::Node::getLevel | ( | ) | const [virtual] |
| virtual bool SpatialIndex::RTree::Node::isIndex | ( | ) | const [virtual] |
| virtual bool SpatialIndex::RTree::Node::isLeaf | ( | ) | const [virtual] |
| virtual void SpatialIndex::RTree::Node::insertEntry | ( | unsigned long | dataLength, | |
| byte * | pData, | |||
| Region & | mbr, | |||
| long | id | |||
| ) | [private, virtual] |
| virtual void SpatialIndex::RTree::Node::deleteEntry | ( | unsigned long | index | ) | [private, virtual] |
| virtual bool SpatialIndex::RTree::Node::insertData | ( | unsigned long | dataLength, | |
| byte * | pData, | |||
| Region & | mbr, | |||
| long | id, | |||
| std::stack< long > & | pathBuffer, | |||
| byte * | overflowTable | |||
| ) | [private, virtual] |
| virtual void SpatialIndex::RTree::Node::reinsertData | ( | unsigned long | dataLength, | |
| byte * | pData, | |||
| Region & | mbr, | |||
| long | id, | |||
| std::vector< long > & | reinsert, | |||
| std::vector< long > & | keep | |||
| ) | [private, virtual] |
| virtual void SpatialIndex::RTree::Node::rtreeSplit | ( | unsigned long | dataLength, | |
| byte * | pData, | |||
| Region & | mbr, | |||
| long | id, | |||
| std::vector< long > & | group1, | |||
| std::vector< long > & | group2 | |||
| ) | [private, virtual] |
| virtual void SpatialIndex::RTree::Node::rstarSplit | ( | unsigned long | dataLength, | |
| byte * | pData, | |||
| Region & | mbr, | |||
| long | id, | |||
| std::vector< long > & | group1, | |||
| std::vector< long > & | group2 | |||
| ) | [private, virtual] |
| virtual void SpatialIndex::RTree::Node::pickSeeds | ( | unsigned long & | index1, | |
| unsigned long & | index2 | |||
| ) | [private, virtual] |
| virtual void SpatialIndex::RTree::Node::condenseTree | ( | std::stack< NodePtr > & | toReinsert, | |
| std::stack< long > & | pathBuffer, | |||
| NodePtr & | ptrThis | |||
| ) | [private, virtual] |
| virtual NodePtr SpatialIndex::RTree::Node::chooseSubtree | ( | const Region & | mbr, | |
| unsigned long | level, | |||
| std::stack< long > & | pathBuffer | |||
| ) | [private, pure virtual] |
Implemented in SpatialIndex::RTree::Index, and SpatialIndex::RTree::Leaf.
| virtual NodePtr SpatialIndex::RTree::Node::findLeaf | ( | const Region & | mbr, | |
| long | id, | |||
| std::stack< long > & | pathBuffer | |||
| ) | [private, pure virtual] |
Implemented in SpatialIndex::RTree::Index, and SpatialIndex::RTree::Leaf.
| virtual void SpatialIndex::RTree::Node::split | ( | unsigned long | dataLength, | |
| byte * | pData, | |||
| Region & | mbr, | |||
| long | id, | |||
| NodePtr & | left, | |||
| NodePtr & | right | |||
| ) | [private, pure virtual] |
Implemented in SpatialIndex::RTree::Index, and SpatialIndex::RTree::Leaf.
friend class RTree [friend] |
Reimplemented in SpatialIndex::RTree::Index, and SpatialIndex::RTree::Leaf.
friend class Tools::PointerPool< Node > [friend] |
friend class BulkLoader [friend] |
Reimplemented in SpatialIndex::RTree::Index, and SpatialIndex::RTree::Leaf.
RTree* SpatialIndex::RTree::Node::m_pTree [private] |
unsigned long SpatialIndex::RTree::Node::m_level [private] |
long SpatialIndex::RTree::Node::m_identifier [private] |
unsigned long SpatialIndex::RTree::Node::m_children [private] |
unsigned long SpatialIndex::RTree::Node::m_capacity [private] |
Region SpatialIndex::RTree::Node::m_nodeMBR [private] |
byte** SpatialIndex::RTree::Node::m_pData [private] |
RegionPtr* SpatialIndex::RTree::Node::m_ptrMBR [private] |
long* SpatialIndex::RTree::Node::m_pIdentifier [private] |
unsigned long* SpatialIndex::RTree::Node::m_pDataLength [private] |
unsigned long SpatialIndex::RTree::Node::m_totalDataLength [private] |
1.5.1