00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef GEOS_IDX_BINTREE_KEY_H
00017 #define GEOS_IDX_BINTREE_KEY_H
00018
00019 #include <geos/export.h>
00020
00021
00022 namespace geos {
00023 namespace index {
00024 namespace bintree {
00025 class Interval;
00026 }
00027 }
00028 }
00029
00030 namespace geos {
00031 namespace index {
00032 namespace bintree {
00033
00040 class GEOS_DLL Key {
00041
00042 public:
00043
00044 static int computeLevel(Interval *newInterval);
00045
00046 Key(Interval *newInterval);
00047
00048 ~Key();
00049
00050 double getPoint();
00051
00052 int getLevel();
00053
00054 Interval* getInterval();
00055
00056 void computeKey(Interval *itemInterval);
00057
00058 private:
00059
00060
00061 double pt;
00062 int level;
00063
00064
00065 Interval *interval;
00066
00067 void computeInterval(int level, Interval *itemInterval);
00068 };
00069
00070 }
00071 }
00072 }
00073
00074 #endif // GEOS_IDX_BINTREE_KEY_H
00075
00076
00077
00078
00079
00080
00081
00082