Chris@16
|
1 // Boost.Geometry (aka GGL, Generic Geometry Library)
|
Chris@16
|
2
|
Chris@101
|
3 // Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.
|
Chris@101
|
4 // Copyright (c) 2008-2015 Bruno Lalande, Paris, France.
|
Chris@101
|
5 // Copyright (c) 2009-2015 Mateusz Loskot, London, UK.
|
Chris@101
|
6
|
Chris@101
|
7 // This file was modified by Oracle on 2015.
|
Chris@101
|
8 // Modifications copyright (c) 2015, Oracle and/or its affiliates.
|
Chris@101
|
9
|
Chris@101
|
10 // Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
|
Chris@16
|
11
|
Chris@16
|
12 // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library
|
Chris@16
|
13 // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.
|
Chris@16
|
14
|
Chris@16
|
15 // Use, modification and distribution is subject to the Boost Software License,
|
Chris@16
|
16 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
|
Chris@16
|
17 // http://www.boost.org/LICENSE_1_0.txt)
|
Chris@16
|
18
|
Chris@16
|
19 #ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_NOT_HPP
|
Chris@16
|
20 #define BOOST_GEOMETRY_ALGORITHMS_DETAIL_NOT_HPP
|
Chris@16
|
21
|
Chris@16
|
22 namespace boost { namespace geometry
|
Chris@16
|
23 {
|
Chris@16
|
24
|
Chris@16
|
25 #ifndef DOXYGEN_NO_DETAIL
|
Chris@16
|
26 namespace detail
|
Chris@16
|
27 {
|
Chris@16
|
28
|
Chris@16
|
29
|
Chris@16
|
30
|
Chris@16
|
31 /*!
|
Chris@16
|
32 \brief Structure negating the result of specified policy
|
Chris@16
|
33 \tparam Geometry1 \tparam_geometry
|
Chris@16
|
34 \tparam Geometry2 \tparam_geometry
|
Chris@16
|
35 \tparam Policy
|
Chris@16
|
36 \param geometry1 \param_geometry
|
Chris@16
|
37 \param geometry2 \param_geometry
|
Chris@16
|
38 \return Negation of the result of the policy
|
Chris@16
|
39 */
|
Chris@101
|
40 template <typename Policy>
|
Chris@16
|
41 struct not_
|
Chris@16
|
42 {
|
Chris@101
|
43 template <typename Geometry1, typename Geometry2>
|
Chris@101
|
44 static inline bool apply(Geometry1 const& geometry1,
|
Chris@101
|
45 Geometry2 const& geometry2)
|
Chris@16
|
46 {
|
Chris@16
|
47 return ! Policy::apply(geometry1, geometry2);
|
Chris@16
|
48 }
|
Chris@16
|
49 };
|
Chris@16
|
50
|
Chris@16
|
51
|
Chris@16
|
52 } // namespace detail
|
Chris@16
|
53 #endif // DOXYGEN_NO_DETAIL
|
Chris@16
|
54
|
Chris@16
|
55 }} // namespace boost::geometry
|
Chris@16
|
56
|
Chris@16
|
57 #endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_NOT_HPP
|