// Boost.Geometry (aka GGL, Generic Geometry Library) test file // // Copyright Barend Gehrels 2007-2009, Geodan, Amsterdam, the Netherlands // Copyright Bruno Lalande 2008, 2009 // 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) #include #include #include #include #include #include #include using namespace boost::geometry; struct test_operation { template static void apply(P& p) { set(p, get(p) * 10); } }; template void test_all() { P p; boost::geometry::assign(p, 1, 2, 3); boost::geometry::for_each_coordinate(p, test_operation()); BOOST_CHECK(get<0>(p) == 10); BOOST_CHECK(get<1>(p) == 20); BOOST_CHECK(get<2>(p) == 30); } int test_main(int, char* []) { test_all(); test_all(); test_all(); test_all(); test_all >(); test_all >(); test_all >(); return 0; }