mirror of
https://github.com/boostorg/geometry.git
synced 2026-02-12 12:12:10 +00:00
node tag names changed
[SVN r73140]
This commit is contained in:
@@ -17,28 +17,28 @@ namespace boost { namespace geometry { namespace index {
|
||||
namespace detail { namespace rtree {
|
||||
|
||||
template <typename Value, typename Parameters, typename Box>
|
||||
struct internal_node_poly<Value, Parameters, Box, default_static_tag>
|
||||
: public node_poly<Value, Parameters, Box, default_static_tag>
|
||||
struct internal_node_poly<Value, Parameters, Box, node_default_static_tag>
|
||||
: public node_poly<Value, Parameters, Box, node_default_static_tag>
|
||||
{
|
||||
typedef index::pushable_array<
|
||||
std::pair<Box, node_poly<Value, Parameters, Box, default_static_tag> *>,
|
||||
std::pair<Box, node_poly<Value, Parameters, Box, node_default_static_tag> *>,
|
||||
Parameters::max_elements + 1
|
||||
> elements_type;
|
||||
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, default_static_tag, false> & v) { v(*this); }
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, default_static_tag, true> & v) const { v(*this); }
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, node_default_static_tag, false> & v) { v(*this); }
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, node_default_static_tag, true> & v) const { v(*this); }
|
||||
|
||||
elements_type elements;
|
||||
};
|
||||
|
||||
template <typename Value, typename Parameters, typename Box>
|
||||
struct leaf_poly<Value, Parameters, Box, default_static_tag>
|
||||
: public node_poly<Value, Parameters, Box, default_static_tag>
|
||||
struct leaf_poly<Value, Parameters, Box, node_default_static_tag>
|
||||
: public node_poly<Value, Parameters, Box, node_default_static_tag>
|
||||
{
|
||||
typedef index::pushable_array<Value, Parameters::max_elements + 1> elements_type;
|
||||
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, default_static_tag, false> & v) { v(*this); }
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, default_static_tag, true> & v) const { v(*this); }
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, node_default_static_tag, false> & v) { v(*this); }
|
||||
void apply_visitor(visitor_poly<Value, Parameters, Box, node_default_static_tag, true> & v) const { v(*this); }
|
||||
|
||||
elements_type elements;
|
||||
};
|
||||
|
||||
@@ -42,24 +42,24 @@ struct leaf_variant
|
||||
// nodes traits
|
||||
|
||||
template <typename Value, typename Parameters, typename Box>
|
||||
struct node<Value, Parameters, Box, default_variant_tag>
|
||||
struct node<Value, Parameters, Box, node_default_variant_tag>
|
||||
{
|
||||
typedef boost::variant<
|
||||
leaf_variant<Value, Parameters, Box, default_variant_tag>,
|
||||
internal_node_variant<Value, Parameters, Box, default_variant_tag>
|
||||
leaf_variant<Value, Parameters, Box, node_default_variant_tag>,
|
||||
internal_node_variant<Value, Parameters, Box, node_default_variant_tag>
|
||||
> type;
|
||||
};
|
||||
|
||||
template <typename Value, typename Parameters, typename Box>
|
||||
struct internal_node<Value, Parameters, Box, default_variant_tag>
|
||||
struct internal_node<Value, Parameters, Box, node_default_variant_tag>
|
||||
{
|
||||
typedef internal_node_variant<Value, Parameters, Box, default_variant_tag> type;
|
||||
typedef internal_node_variant<Value, Parameters, Box, node_default_variant_tag> type;
|
||||
};
|
||||
|
||||
template <typename Value, typename Parameters, typename Box>
|
||||
struct leaf<Value, Parameters, Box, default_variant_tag>
|
||||
struct leaf<Value, Parameters, Box, node_default_variant_tag>
|
||||
{
|
||||
typedef leaf_variant<Value, Parameters, Box, default_variant_tag> type;
|
||||
typedef leaf_variant<Value, Parameters, Box, node_default_variant_tag> type;
|
||||
};
|
||||
|
||||
// nodes conversion
|
||||
@@ -76,10 +76,12 @@ inline V & get(
|
||||
}
|
||||
|
||||
template <typename V, typename Value, typename Parameters, typename Box, typename Tag>
|
||||
inline V * get(boost::variant<
|
||||
leaf_variant<Value, Parameters, Box, Tag>,
|
||||
internal_node_variant<Value, Parameters, Box, Tag>
|
||||
> *v)
|
||||
inline V * get(
|
||||
boost::variant<
|
||||
leaf_variant<Value, Parameters, Box, Tag>,
|
||||
internal_node_variant<Value, Parameters, Box, Tag>
|
||||
> *v
|
||||
)
|
||||
{
|
||||
return boost::get<V>(v);
|
||||
}
|
||||
@@ -87,7 +89,7 @@ inline V * get(boost::variant<
|
||||
// visitor traits
|
||||
|
||||
template <typename Value, typename Parameters, typename Box, bool IsVisitableConst>
|
||||
struct visitor<Value, Parameters, Box, default_variant_tag, IsVisitableConst>
|
||||
struct visitor<Value, Parameters, Box, node_default_variant_tag, IsVisitableConst>
|
||||
{
|
||||
typedef static_visitor<> type;
|
||||
};
|
||||
|
||||
@@ -26,9 +26,9 @@ struct quadratic_tag {};
|
||||
struct rstar_tag {};
|
||||
|
||||
// NodeTag
|
||||
struct default_tag {};
|
||||
struct default_variant_tag {};
|
||||
struct default_static_tag {};
|
||||
struct node_default_tag {};
|
||||
struct node_default_variant_tag {};
|
||||
struct node_default_static_tag {};
|
||||
|
||||
// TODO: awulkiew - implement those:
|
||||
//if ( m_min_elems_per_node < 1 )
|
||||
@@ -115,7 +115,7 @@ struct options_type< linear<MaxElements, MinElements> >
|
||||
insert_tag,
|
||||
choose_by_content_diff_tag,
|
||||
linear_tag,
|
||||
default_tag
|
||||
node_default_tag
|
||||
> type;
|
||||
};
|
||||
|
||||
@@ -127,7 +127,7 @@ struct options_type< quadratic<MaxElements, MinElements> >
|
||||
insert_tag,
|
||||
choose_by_content_diff_tag,
|
||||
quadratic_tag,
|
||||
default_tag
|
||||
node_default_tag
|
||||
> type;
|
||||
};
|
||||
|
||||
@@ -139,7 +139,7 @@ struct options_type< rstar<MaxElements, MinElements, OverlapCostThreshold, Reins
|
||||
reinsert_tag,
|
||||
choose_by_overlap_diff_tag,
|
||||
rstar_tag,
|
||||
default_tag
|
||||
node_default_tag
|
||||
> type;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user