// Boost.Geometry // Copyright (c) 2017-2018, Oracle and/or its affiliates. // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle // Use, modification and distribution is subject to the Boost Software License, // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #ifndef BOOST_GEOMETRY_SRS_EPSG_HPP #define BOOST_GEOMETRY_SRS_EPSG_HPP #include #include #include #include namespace boost { namespace geometry { namespace projections { template <> struct dynamic_parameters { static const bool is_specialized = true; static inline srs::dpar::parameters<> apply(srs::epsg const& params) { return projections::detail::epsg_to_parameters(params.code); } }; template class proj_wrapper, CT> : public proj_wrapper < typename projections::detail::epsg_traits::parameters_type, CT > { typedef projections::detail::epsg_traits epsg_traits; typedef proj_wrapper < typename epsg_traits::parameters_type, CT > base_t; public: proj_wrapper() : base_t(epsg_traits::parameters()) {} explicit proj_wrapper(srs::static_epsg const&) : base_t(epsg_traits::parameters()) {} }; } // namespace projections }} // namespace boost::geometry #endif // BOOST_GEOMETRY_SRS_EPSG_HPP