Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:35:29

0001 // Boost.Geometry Index
0002 //
0003 // R-tree node concept
0004 //
0005 // Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
0006 //
0007 // This file was modified by Oracle on 2020.
0008 // Modifications copyright (c) 2020 Oracle and/or its affiliates.
0009 // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
0010 //
0011 // Use, modification and distribution is subject to the Boost Software License,
0012 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
0013 // http://www.boost.org/LICENSE_1_0.txt)
0014 
0015 #ifndef BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_CONCEPT_HPP
0016 #define BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_CONCEPT_HPP
0017 
0018 #include <boost/geometry/core/static_assert.hpp>
0019 
0020 namespace boost { namespace geometry { namespace index {
0021 
0022 namespace detail { namespace rtree {
0023 
0024 template <typename Value, typename Parameters, typename Box, typename Allocators, typename Tag>
0025 struct node
0026 {
0027     BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
0028         "Not implemented for this Tag type.",
0029         Value, Parameters, Box, Allocators, Tag);
0030 };
0031 
0032 template <typename Value, typename Parameters, typename Box, typename Allocators, typename Tag>
0033 struct internal_node
0034 {
0035     BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
0036         "Not implemented for this Tag type.",
0037         Value, Parameters, Box, Allocators, Tag);
0038 };
0039 
0040 template <typename Value, typename Parameters, typename Box, typename Allocators, typename Tag>
0041 struct leaf
0042 {
0043     BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
0044         "Not implemented for this Tag type.",
0045         Value, Parameters, Box, Allocators, Tag);
0046 };
0047 
0048 template <typename Value, typename Parameters, typename Box, typename Allocators, typename Tag, bool IsVisitableConst>
0049 struct visitor
0050 {
0051     BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
0052         "Not implemented for this Tag type.",
0053         Value, Parameters, Box, Allocators, Tag);
0054 };
0055 
0056 template <typename Allocator, typename Value, typename Parameters, typename Box, typename Tag>
0057 class allocators
0058 {
0059     BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
0060         "Not implemented for this Tag type.",
0061         Allocator, Value, Parameters, Box, Tag);
0062 };
0063 
0064 template <typename Allocators, typename Node>
0065 struct create_node
0066 {
0067     BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
0068         "Not implemented for this Node type.",
0069         Allocators, Node);
0070 };
0071 
0072 template <typename Allocators, typename Node>
0073 struct destroy_node
0074 {
0075     BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
0076         "Not implemented for this Node type.",
0077         Allocators, Node);
0078 };
0079 
0080 }} // namespace detail::rtree
0081 
0082 }}} // namespace boost::geometry::index
0083 
0084 #endif // BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_CONCEPT_HPP