forked from ADAPTLab/MuDBSCAN
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRTree.h
49 lines (32 loc) · 1.37 KB
/
RTree.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/*
Algorithm: Micro-cluster based DBSCAN
Author: Aditya Sarma
email: [email protected]
*/
#ifndef RTREE_H
#define RTREE_H
#include "RList.h"
#include "Data.h"
Region RinitRgnRect(Dimension iBottomLeft, Dimension iTopRight);
void RsetRect(RLstNd lstNd, RTreeNode tnInfo);
RTreeNode RinitExtNd(Data dataClstElem);
RTreeNode RinitIntNd(Dimension iBottomLeft, Dimension iTopRight);
RHdrNd RcreateRoot(RHdrNd hdrNdTree);
Boolean RexpansionArea(Region rgnRect, RTreeNode tnInfo, Double ptrDMinExp, Region rgnNewRect);
double Rarea(Region rgnRect);
RLstNd RpickChild(RHdrNd ptrChildLst, RTreeNode tnInfo);
void RpickSeeds(RHdrNd ptrChildList, RLstNd *lstNdChildOne, RLstNd *lstNdChildTwo);
void RsplitNode(RLstNd ptrChild);
Boolean RinsertTree(RHdrNd hdrNdTree, RTreeNode tnInfo);
RHdrNd RbuildRTree(DataHdr dataHdrLst);
RHdrNd RbuildRTreeFromCells(BCellListHd cellsList, Region epsExtendedRgn);
void RprintTree(RHdrNd hdrNdTree);
double RfindDist(DataPoint iDataOne, DataPoint iDataTwo);
unsigned int RgetNeighborHood(RHdrNd hdrNdTree, Data dataNdTemp,int size);
unsigned int RfindRecords(RHdrNd hdrNdTree, Region rgnRect, Data dataNdTemp);
Boolean RisContains(Region rgnRect, DataPoint iData);
Boolean RisOverLap(Region rgnRectOne, Region rgnRectTwo);
void RappendRTree(RHdrNd hdrNdTree, DataHdr dataHdrLst);
void freeRTree(RHdrNd auxRTree);
void isCorrectRTree(RHdrNd hdrNdTree);
#endif