00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef GEOS_IDX_CHAIN_MONOTONECHAINSELECTACTION_H
00017 #define GEOS_IDX_CHAIN_MONOTONECHAINSELECTACTION_H
00018
00019
00020
00021 namespace geos {
00022 namespace geom {
00023 class Envelope;
00024 class LineSegment;
00025 }
00026 namespace index {
00027 namespace chain {
00028 class MonotoneChain;
00029 }
00030 }
00031 }
00032
00033 namespace geos {
00034 namespace index {
00035 namespace chain {
00036
00043 class MonotoneChainSelectAction {
00044
00045 protected:
00046
00047 geom::LineSegment* selectedSegment;
00048
00049 public:
00050
00051 MonotoneChainSelectAction();
00052
00053 virtual ~MonotoneChainSelectAction();
00054
00056 virtual void select(MonotoneChain& mc, unsigned int start);
00057
00063 virtual void select(geom::LineSegment* newSeg)=0;
00064
00065
00066 geom::Envelope* tempEnv1;
00067 };
00068
00069
00070 }
00071 }
00072 }
00073
00074 #endif // GEOS_IDX_CHAIN_MONOTONECHAINSELECTACTION_H
00075
00076
00077
00078
00079
00080
00081
00082