24 #ifndef _SRPTINDEXLOGIC_HH_
25 #define _SRPTINDEXLOGIC_HH_
105 const bool* facesToExtendLo,
106 const bool* facesToExtendHi);
static void splitLeaf(HierIndexDS *n1, HierIndexDS *n2, KeyObjectVector &keyvec, r_Dimension axis, r_Range value, r_Minterval &domain, const StorageLayout &sl)
static void getObjects(const IndexDS *ixDS, KeyObjectVector &objs, const StorageLayout &sl)
std::vector< IndexDS * > IndexPVector
Definition: lists.h:87
static void redistributeEntries(IndexDS *node, KeyObjectVector &listMinKO, const StorageLayout &sl)
std::vector< KeyObject > KeyObjectVector
Definition: lists.h:79
static bool insertObject2(IndexDS *ixDS, const KeyObject &newObject, const StorageLayout &sl)
int r_Range
Definition: mddtypes.hh:100
unsigned int r_Dimension
Definition: mddtypes.hh:118
Definition: hierindexds.hh:50
Definition: indexds.hh:51
static bool removeObject(IndexDS *ixDS, const KeyObject &tileToRemove, const StorageLayout &sl)
Definition: keyobject.hh:43
static bool intersectNoDuplicates(const r_Minterval &searchInter, const r_Minterval &entryDomain, const r_Minterval &parentDomain)
static HierIndexDS * convert(const KeyObject &toConvert)
static void extendFaces(HierIndexDS *ix, const r_Minterval &newKeyObjectDom, const r_Minterval &oldCurrDom, const bool *facesToExtendLo, const bool *facesToExtendHi)
static void intersect2(const IndexDS *ixDS, const r_Minterval &searchInter, KeyObjectVector &objs, const StorageLayout &sl)
static void calculateDistribution(r_Dimension axis, r_Range value, float &dist1, float &dist2, const HierIndexDS *node)
static void containPointQuery(const r_Point &searchPoint, const HierIndexDS *ix, KeyObject &result, const StorageLayout &sl)
static void containPointQuery2(const IndexDS *ixDS, const r_Point &searchPoint, KeyObject &result, const StorageLayout &sl)
static int insertObject(const KeyObject &newObject, HierIndexDS *ix, IndexPVector &leafNodes2Split, const StorageLayout &sl)
uint64_t r_Area
Definition: mddtypes.hh:85
static void intersect(const r_Minterval &searchInter, const r_Minterval &parentDomain, KeyObjectVector &intersectedObjs, const HierIndexDS *ix, r_Area &area)
static void calculatePartition(r_Dimension &axis, r_Range &value, const HierIndexDS *node)
static void splitNodes(HierIndexDS *ixDS, IndexPVector &leafNodes2Split, const StorageLayout &sl)
static void splitNonLeaf(HierIndexDS *n1, HierIndexDS *n2, KeyObjectVector &keyvec, IndexPVector &leafNodes2Split, r_Dimension axis, r_Range value, const r_Minterval &domain, const StorageLayout &sl)
static int regionSearch(const HierIndexDS *ixNode, const r_Minterval &mint, r_Area &area, KeyObjectVector &intersectedObjects, const r_Minterval &parentDomain)
Definition: sstoragelayout.hh:65
static int binaryRegionSearch(const HierIndexDS *ixNode, const r_Minterval &mint, r_Area &area, KeyObjectVector &intersectedObjects, int first, int last, const r_Minterval &parentEntryDom)
Definition: minterval.hh:249
Definition: srptindexlogic.hh:55