]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/geometry/algorithms/detail/overlay/do_reverse.hpp
import quincy beta 17.1.0
[ceph.git] / ceph / src / boost / boost / geometry / algorithms / detail / overlay / do_reverse.hpp
1 // Boost.Geometry (aka GGL, Generic Geometry Library)
2
3 // Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
4 // Copyright (c) 2013 Adam Wulkiewicz, Lodz, Poland
5
6 // This file was modified by Oracle on 2020.
7 // Modifications copyright (c) 2020 Oracle and/or its affiliates.
8 // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
9
10 // Use, modification and distribution is subject to the Boost Software License,
11 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
12 // http://www.boost.org/LICENSE_1_0.txt)
13
14 #ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DO_REVERSE_HPP
15 #define BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DO_REVERSE_HPP
16
17 #include <boost/geometry/core/point_order.hpp>
18
19 namespace boost { namespace geometry
20 {
21
22
23 #ifndef DOXYGEN_NO_DETAIL
24 namespace detail { namespace overlay
25 {
26
27 // Metafunction helper for intersection and union
28 template <order_selector Selector, bool Reverse = false>
29 struct do_reverse {};
30
31 template <>
32 struct do_reverse<clockwise, false> : std::false_type {};
33
34 template <>
35 struct do_reverse<clockwise, true> : std::true_type {};
36
37 template <>
38 struct do_reverse<counterclockwise, false> : std::true_type {};
39
40 template <>
41 struct do_reverse<counterclockwise, true> : std::false_type {};
42
43
44 }} // namespace detail::overlay
45 #endif // DOXYGEN_NO_DETAIL
46
47
48 }} // namespace boost::geometry
49
50
51 #endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_OVERLAY_DO_REVERSE_HPP