![]() |
![]() ![]() ![]() ![]() |
![]() |
BidirectionalBoost , ,
|
||||||||||||||||||||
| G | Тип, который является моделью графа. |
| г | Объект типаG. |
| против | Объект типаboost::graph_traits |
| boost::graph_traits Этот тип тега должен быть конвертируемым вbidirectional_graph_tag. |
<boost::graph_traits<G>::in_edge_iterator>Передний итератор для вершиныvобеспечивает доступ к краямv. Таким образом, тип значения в переднем итераторе является типом дескриптора края его графика. Итератор должен соответствовать требованиямMultiPassInputIterator. |
| in_edges(v, g) | Возвращает итератор-диапазон, обеспечивающий доступ к выступам (для направленных графов) или краям инцидента (для ненаправленных графов) вершиныvв графеg. Для как направленных, так и ненаправленных графов, целью края должна быть вершинаv, а источником должна быть вершина, прилегающая кv. Тип возврата:std::pair |
| in_degree (v, g) | Возвращает число краев (для направленных графов) или число краев (для ненаправленных графов) вершиныvв графеg. Тип возврата:Степень_size_type |
| степень (v, g) | Возвращает число in-edges plus out-edges (для направленных графов) или число краев инцидента (для ненаправленных графов) вершиныvв графеg. Тип возврата:Степень_size_type |
template <class G>
struct BidirectionalGraphConcept
{
typedef typename boost::graph_traits<G>::in_edge_iterator
in_edge_iterator;
void constraints() {
BOOST_CONCEPT_ASSERT(( IncidenceGraphConcept<G> ));
BOOST_CONCEPT_ASSERT(( MultiPassInputIteratorConcept<in_edge_iterator> ));
p = in_edges(v, g);
n = in_degree(v, g);
n = degree(v, g);
e = *p.first;
const_constraints(g);
}
void const_constraints(const G& g) {
p = in_edges(v, g);
n = in_degree(v, g);
n = degree(v, g);
e = *p.first;
}
std::pair<in_edge_iterator, in_edge_iterator> p;
typename boost::graph_traits<G>::vertex_descriptor v;
typename boost::graph_traits<G>::edge_descriptor e;
typename boost::graph_traits<G>::degree_size_type n;
G g;
};
| Copyright © 2000-2001 | Джереми Сик, Университет Индианыjsiek@osl.iu.edu |
Статья Bidirectional раздела может быть полезна для разработчиков на c++ и boost.
:: Главная :: ::
реклама |