]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/boost/geometry/strategies/transform.hpp
import quincy beta 17.1.0
[ceph.git] / ceph / src / boost / boost / geometry / strategies / transform.hpp
CommitLineData
7c673cae
FG
1// Boost.Geometry (aka GGL, Generic Geometry Library)
2
3// Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
4// Copyright (c) 2008-2012 Bruno Lalande, Paris, France.
5// Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
6
20effc67
TL
7// This file was modified by Oracle on 2020.
8// Modifications copyright (c) 2020, Oracle and/or its affiliates.
9// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
10
7c673cae
FG
11// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library
12// (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.
13
14// Use, modification and distribution is subject to the Boost Software License,
15// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
16// http://www.boost.org/LICENSE_1_0.txt)
17
18#ifndef BOOST_GEOMETRY_STRATEGIES_TRANSFORM_HPP
19#define BOOST_GEOMETRY_STRATEGIES_TRANSFORM_HPP
20
21#include <cstddef>
22
20effc67 23#include <boost/geometry/core/static_assert.hpp>
7c673cae
FG
24
25#include <boost/geometry/strategies/tags.hpp>
26
27namespace boost { namespace geometry
28{
29
30namespace strategy { namespace transform { namespace services
31{
32
33/*!
34 \brief Traits class binding a transformation strategy to a coordinate system
35 \ingroup transform
36 \details Can be specialized
37 - per coordinate system family (tag)
38 - per coordinate system (or groups of them)
39 - per dimension
40 - per point type
41 \tparam CoordinateSystemTag 1,2 coordinate system tags
42 \tparam CoordinateSystem 1,2 coordinate system
43 \tparam D 1, 2 dimension
44 \tparam Point 1, 2 point type
45 */
46template
47<
48 typename CoordinateSystemTag1, typename CoordinateSystemTag2,
49 typename CoordinateSystem1, typename CoordinateSystem2,
50 std::size_t Dimension1, std::size_t Dimension2,
51 typename Point1, typename Point2
52>
53struct default_strategy
54{
20effc67
TL
55 BOOST_GEOMETRY_STATIC_ASSERT_FALSE(
56 "Not implemented for these Point types.",
57 Point1, Point2);
7c673cae
FG
58};
59
60}}} // namespace strategy::transform::services
61
62
63}} // namespace boost::geometry
64
65#endif // BOOST_GEOMETRY_STRATEGIES_TRANSFORM_HPP