]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/boost/geometry/srs/iau2000.hpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / boost / geometry / srs / iau2000.hpp
CommitLineData
11fdf7f2
TL
1// Boost.Geometry
2
92f5a8d4 3// Copyright (c) 2017-2018, Oracle and/or its affiliates.
11fdf7f2
TL
4// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
5
6// Use, modification and distribution is subject to the Boost Software License,
7// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
8// http://www.boost.org/LICENSE_1_0.txt)
9
10#ifndef BOOST_GEOMETRY_SRS_IAU2000_HPP
11#define BOOST_GEOMETRY_SRS_IAU2000_HPP
12
13
14#include <boost/geometry/srs/projection.hpp>
15#include <boost/geometry/srs/projections/iau2000.hpp>
16#include <boost/geometry/srs/projections/iau2000_params.hpp>
17#include <boost/geometry/srs/projections/iau2000_traits.hpp>
18
19
20namespace boost { namespace geometry
21{
22
23namespace projections
24{
25
92f5a8d4
TL
26template <>
27struct dynamic_parameters<srs::iau2000>
11fdf7f2 28{
92f5a8d4
TL
29 static const bool is_specialized = true;
30 static inline srs::dpar::parameters<> apply(srs::iau2000 const& params)
11fdf7f2 31 {
92f5a8d4
TL
32 return projections::detail::iau2000_to_parameters(params.code);
33 }
11fdf7f2
TL
34};
35
36template <int Code, typename CT>
37class proj_wrapper<srs::static_iau2000<Code>, CT>
92f5a8d4 38 : public proj_wrapper
11fdf7f2 39 <
92f5a8d4 40 typename projections::detail::iau2000_traits<Code>::parameters_type,
11fdf7f2
TL
41 CT
42 >
43{
44 typedef projections::detail::iau2000_traits<Code> iau2000_traits;
92f5a8d4
TL
45
46 typedef proj_wrapper
47 <
48 typename iau2000_traits::parameters_type,
49 CT
50 > base_t;
11fdf7f2
TL
51
52public:
53 proj_wrapper()
92f5a8d4 54 : base_t(iau2000_traits::parameters())
11fdf7f2 55 {}
11fdf7f2 56
92f5a8d4
TL
57 explicit proj_wrapper(srs::static_iau2000<Code> const&)
58 : base_t(iau2000_traits::parameters())
11fdf7f2
TL
59 {}
60};
61
62
92f5a8d4 63} // namespace projections
11fdf7f2
TL
64
65}} // namespace boost::geometry
66
67
68#endif // BOOST_GEOMETRY_SRS_IAU2000_HPP