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 7 // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library 8 // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands. 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_STRATEGIES_CENTROID_HPP 15 #define BOOST_GEOMETRY_STRATEGIES_CENTROID_HPP 16 17 18 #include <cstddef> 19 20 #include <boost/mpl/assert.hpp> 21 22 #include <boost/geometry/core/tags.hpp> 23 #include <boost/geometry/strategies/tags.hpp> 24 25 26 namespace boost { namespace geometry 27 { 28 29 30 namespace strategy { namespace centroid 31 { 32 33 struct not_applicable_strategy 34 { 35 }; 36 37 38 namespace services 39 { 40 41 /*! 42 \brief Traits class binding a centroid calculation strategy to a coordinate system 43 \ingroup centroid 44 \tparam CsTag tag of coordinate system, for specialization 45 \tparam GeometryTag tag of geometry, for specialization 46 \tparam Dimension dimension of geometry, for specialization 47 \tparam Point point-type 48 \tparam Geometry 49 */ 50 template 51 < 52 typename CsTag, 53 typename GeometryTag, 54 std::size_t Dimension, 55 typename Point, 56 typename Geometry 57 > 58 struct default_strategy 59 { 60 typedef not_applicable_strategy type; 61 }; 62 63 64 } // namespace services 65 66 67 }} // namespace strategy::centroid 68 69 70 }} // namespace boost::geometry 71 72 #endif // BOOST_GEOMETRY_STRATEGIES_CENTROID_HPP 73