GEOS  3.4.2
IntervalRTreeLeafNode.h
1 /**********************************************************************
2  *
3  * GEOS - Geometry Engine Open Source
4  * http://geos.osgeo.org
5  *
6  * Copyright (C) 2006 Refractions Research Inc.
7  *
8  * This is free software; you can redistribute and/or modify it under
9  * the terms of the GNU Lesser General Public Licence as published
10  * by the Free Software Foundation.
11  * See the COPYING file for more information.
12  *
13  *
14  **********************************************************************/
15 
16 #ifndef GEOS_INDEX_INTERVALRTREE_INTERVALRTREELEAFNODE_H
17 #define GEOS_INDEX_INTERVALRTREE_INTERVALRTREELEAFNODE_H
18 
19 
20 #include <geos/index/intervalrtree/IntervalRTreeNode.h> // inherited
21 
22 
23 // forward declarations
24 namespace geos {
25  namespace index {
26  class ItemVisitor;
27  }
28 }
29 
30 
31 namespace geos {
32 namespace index {
33 namespace intervalrtree {
34 
35 class IntervalRTreeLeafNode : public IntervalRTreeNode
36 {
37 private:
39  void * item;
40 
41 protected:
42 public:
43 
45  IntervalRTreeLeafNode( double min, double max, void * item)
46  : IntervalRTreeNode( min, max),
47  item( item)
48  { }
49 
50  ~IntervalRTreeLeafNode()
51  {
52  }
53 
54  void query( double queryMin, double queryMax, index::ItemVisitor * visitor) const;
55 
56 };
57 
58 } // geos::intervalrtree
59 } // geos::index
60 } // geos
61 
62 #endif // GEOS_INDEX_INTERVALRTREE_INTERVALRTREELEAFNODE_H