GEOS
3.15.0dev
include
geos
index
intervalrtree
IntervalRTreeBranchNode.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
#pragma once
17
18
#include <geos/index/intervalrtree/IntervalRTreeNode.h>
// inherited
19
20
#include <algorithm>
21
22
// forward declarations
23
namespace
geos
{
24
namespace
index {
25
class
ItemVisitor;
26
}
27
}
28
29
30
namespace
geos
{
31
namespace
index {
32
namespace
intervalrtree {
33
34
class
IntervalRTreeBranchNode :
public
IntervalRTreeNode {
35
private
:
36
const
IntervalRTreeNode* node1;
37
const
IntervalRTreeNode* node2;
38
39
protected
:
40
public
:
41
IntervalRTreeBranchNode(
const
IntervalRTreeNode* n1,
const
IntervalRTreeNode* n2)
42
: IntervalRTreeNode(std::min(n1->getMin(), n2->getMin()), std::max(n1->getMax(), n2->getMax())),
43
node1(n1),
44
node2(n2)
45
{ }
46
47
void
query(
double
queryMin,
double
queryMax,
index::ItemVisitor
* visitor)
const override
;
48
};
49
50
}
// geos::intervalrtree
51
}
// geos::index
52
}
// geos
53
geos::index::ItemVisitor
A visitor for items in an index.
Definition
ItemVisitor.h:28
geos
Basic namespace for all GEOS functionalities.
Definition
geos.h:38
Generated by
1.9.8