1 /**********************************************************************
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
6 * Copyright (C) 2006 Refractions Research Inc.
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.
14 **********************************************************************/
16 #ifndef GEOS_INDEX_INTERVALRTREE_INTERVALRTREEBRANCHNODE_H
17 #define GEOS_INDEX_INTERVALRTREE_INTERVALRTREEBRANCHNODE_H
19 #include <geos/index/intervalrtree/IntervalRTreeNode.h> // inherited
23 // forward declarations
33 namespace intervalrtree
{
35 class IntervalRTreeBranchNode
: public IntervalRTreeNode
38 const IntervalRTreeNode
* node1
;
39 const IntervalRTreeNode
* node2
;
41 //void buildExtent( IntervalRTreeNode * n1, IntervalRTreeNode * n2)
43 // min = std::min( n1->min, n2->min);
44 // max = std::max( n1->max, n2->max);
49 IntervalRTreeBranchNode( const IntervalRTreeNode
* n1
, const IntervalRTreeNode
* n2
)
50 : IntervalRTreeNode( std::min( n1
->getMin(), n2
->getMin()), std::max( n1
->getMax(), n2
->getMax())),
55 ~IntervalRTreeBranchNode()
62 void query(double queryMin
, double queryMax
, index::ItemVisitor
* visitor
) const;
65 } // geos::intervalrtree
69 #endif // GEOS_INDEX_INTERVALRTREE_INTERVALRTREEBRANCHNODE_H