3 Copyright Daniel Trebbien 2010.
4 Distributed under the Boost Software License, Version 1.0.
5 (See accompanying file LICENSE_1_0.txt or the copy at
6 http://www.boost.org/LICENSE_1_0.txt)
10 <title>KeyedUpdatableQueue
</title>
13 <img src=
"../../../boost.png" alt=
"C++ Boost">
15 <h2><a name=
"concept:KeyedUpdatableQueue">KeyedUpdatableQueue
</a></h2>
17 <p>A
<i>KeyedUpdatableQueue
</i> is a refinement of the
<a href=
"./UpdatableQueue.html">UpdatableQueue
</a> concept.
18 It requires that models order the contained values by their
<i>keys
</i>, to which
19 values are mapped via a read/write key map.
24 <tr> <td> <tt>Q
</tt> </td> <td> is a type that models KeyedUpdatableQueue.
</td></tr>
25 <tr> <td> <tt>T
</tt> </td> <td> is the value type of
<tt>Q
</tt>.
</td></tr>
31 For a type to model the KeyedUpdatableQueue concept it must have the following members
32 in addition to the members that are required of types that model
<a href=
"./UpdatableQueue.html">UpdatableQueue
</a>:
38 <tr> <td><b>Member
</b></td> <td><b>Description
</b></td> </tr>
40 <tr> <td> <tt>key_type
</tt> </td>
41 <td> The type of keys that are associated with values
</td>
44 <tr> <td> <tt>key_map
</tt> </td>
45 <td> The key property map type. This type must model
<a href=
"../../property_map/doc/ReadWritePropertyMap.html">Read/Write Property Map
</a>.
</td>
48 <tr> <td> <tt>key_map keys() const
</tt> </td>
49 <td> Returns the key map
</td>
54 <h3>Concept Checking Class
</h3>
56 <p><a href=
"../../../boost/graph/buffer_concepts.hpp"><tt>boost/graph/buffer_concepts.hpp
</tt></a>
59 template
<class Q
>
60 struct KeyedUpdatableQueueConcept
62 typedef typename Q::key_type key_type;
63 typedef typename Q::key_map key_map;
66 BOOST_CONCEPT_ASSERT(( UpdatableQueue
<Q
> ));
67 BOOST_CONCEPT_ASSERT(( ReadWritePropertyMap
< key_map, typename Buffer
<Q
>::value_type
> ));
70 void const_constraints(const Q
& cq) {
75 static const typename Buffer
<Q
>::value_type g_ct;
85 <li><tt>boost::d_ary_heap_indirect
</tt></a>
92 <td>Copyright
© 2010</td>
93 <td>Daniel Trebbien (
<a href=
"mailto:dtrebbien@gmail.com">dtrebbien@gmail.com
</a>)