00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef GEOS_IDX_BINTREE_INTERVAL_H
00017 #define GEOS_IDX_BINTREE_INTERVAL_H
00018
00019 namespace geos {
00020 namespace index {
00021 namespace bintree {
00022
00024 class Interval {
00025
00026 public:
00027
00028 double min, max;
00029
00030 Interval();
00031
00032 ~Interval();
00033
00034 Interval(double nmin, double nmax);
00035
00036 Interval(Interval *interval);
00037
00038 void init(double nmin, double nmax);
00039
00040 double getMin();
00041
00042 double getMax();
00043
00044 double getWidth();
00045
00046 void expandToInclude(Interval *interval);
00047
00048 bool overlaps(Interval *interval);
00049
00050 bool overlaps(double nmin, double nmax);
00051
00052 bool contains(Interval *interval);
00053
00054 bool contains(double nmin, double nmax);
00055
00056 bool contains(double p);
00057 };
00058
00059 }
00060 }
00061 }
00062
00063 #endif // GEOS_IDX_BINTREE_INTERVAL_H
00064
00065
00066
00067
00068
00069
00070
00071