1 //======================================================================= 2 // Copyright 2009 Trustees of Indiana University. 3 // Authors: Michael Hansen, Andrew Lumsdaine 4 // 5 // Distributed under the Boost Software License, Version 1.0. (See 6 // accompanying file LICENSE_1_0.txt or copy at 7 // http://www.boost.org/LICENSE_1_0.txt) 8 //======================================================================= 9 10 #include <boost/graph/graph_archetypes.hpp> 11 #include <boost/graph/graph_concepts.hpp> 12 #include <boost/graph/grid_graph.hpp> 13 #include <boost/concept/assert.hpp> 14 15 using namespace boost; 16 check()17template < unsigned int Dims > void check() 18 { 19 typedef grid_graph< Dims > Graph; 20 typedef typename graph_traits< Graph >::vertex_descriptor Vertex; 21 typedef typename graph_traits< Graph >::edge_descriptor Edge; 22 23 BOOST_CONCEPT_ASSERT((BidirectionalGraphConcept< Graph >)); 24 BOOST_CONCEPT_ASSERT((VertexListGraphConcept< Graph >)); 25 BOOST_CONCEPT_ASSERT((EdgeListGraphConcept< Graph >)); 26 BOOST_CONCEPT_ASSERT((IncidenceGraphConcept< Graph >)); 27 BOOST_CONCEPT_ASSERT((AdjacencyGraphConcept< Graph >)); 28 BOOST_CONCEPT_ASSERT((AdjacencyMatrixConcept< Graph >)); 29 BOOST_CONCEPT_ASSERT( 30 (ReadablePropertyGraphConcept< Graph, Vertex, vertex_index_t >)); 31 BOOST_CONCEPT_ASSERT( 32 (ReadablePropertyGraphConcept< Graph, Edge, edge_index_t >)); 33 } 34 main(int,char * [])35int main(int, char*[]) 36 { 37 check< 0 >(); 38 check< 1 >(); 39 check< 2 >(); 40 check< 3 >(); 41 check< 4 >(); 42 43 return (0); 44 } 45