graph/test/grid_graph_cc.cpp

45 lines
1.5 KiB
C++

//=======================================================================
// Copyright 2009 Trustees of Indiana University.
// Authors: Michael Hansen, Andrew Lumsdaine
//
// Distributed under 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 <boost/graph/graph_archetypes.hpp>
#include <boost/graph/graph_concepts.hpp>
#include <boost/graph/grid_graph.hpp>
#include <boost/concept/assert.hpp>
using namespace boost;
template < unsigned int Dims > void check()
{
typedef grid_graph< Dims > Graph;
typedef typename graph_traits< Graph >::vertex_descriptor Vertex;
typedef typename graph_traits< Graph >::edge_descriptor Edge;
BOOST_CONCEPT_ASSERT((BidirectionalGraphConcept< Graph >));
BOOST_CONCEPT_ASSERT((VertexListGraphConcept< Graph >));
BOOST_CONCEPT_ASSERT((EdgeListGraphConcept< Graph >));
BOOST_CONCEPT_ASSERT((IncidenceGraphConcept< Graph >));
BOOST_CONCEPT_ASSERT((AdjacencyGraphConcept< Graph >));
BOOST_CONCEPT_ASSERT((AdjacencyMatrixConcept< Graph >));
BOOST_CONCEPT_ASSERT(
(ReadablePropertyGraphConcept< Graph, Vertex, vertex_index_t >));
BOOST_CONCEPT_ASSERT(
(ReadablePropertyGraphConcept< Graph, Edge, edge_index_t >));
}
int main(int, char*[])
{
check< 0 >();
check< 1 >();
check< 2 >();
check< 3 >();
check< 4 >();
return (0);
}