| 229 | /// \ingroup graphs |
| 230 | /// |
| 231 | /// \brief A static directed graph class. |
| 232 | /// |
| 233 | /// \ref StaticDigraph is a highly efficient digraph implementation, |
| 234 | /// but it is fully static. |
| 235 | /// It stores only two \c int values for each node and only four \c int |
| 236 | /// values for each arc. Moreover it provides faster item iteration than |
| 237 | /// \ref ListDigraph and \ref SmartDigraph, especially using \c OutArcIt |
| 238 | /// iterators, since its arcs are stored in an appropriate order. |
| 239 | /// However it only provides build() and clear() functions and does not |
| 240 | /// support any other modification of the digraph. |
| 241 | /// |
| 242 | /// This type fully conforms to the \ref concepts::Digraph "Digraph concept". |
| 243 | /// Most of its member functions and nested classes are documented |
| 244 | /// only in the concept class. |
| 245 | /// |
| 246 | /// \sa concepts::Digraph |
| 254 | /// \brief Clear the digraph. |
| 255 | /// |
| 256 | /// This function erases all nodes and arcs from the digraph. |
| 257 | void clear() { |
| 258 | Parent::clear(); |
| 259 | } |
| 260 | |
| 261 | /// \brief Build the digraph copying another digraph. |
| 262 | /// |
| 263 | /// This function builds the digraph copying another digraph of any |
| 264 | /// kind. It can be called more than once, but in such case, the whole |
| 265 | /// structure and all maps will be cleared and rebuilt. |
| 266 | /// |
| 267 | /// This method also makes possible to copy a digraph to a StaticDigraph |
| 268 | /// structure using \ref DigraphCopy. |
| 269 | /// |
| 270 | /// \param digraph An existing digraph to be copied. |
| 271 | /// \param nodeRef The node references will be copied into this map. |
| 272 | /// Its key type must be \c Digraph::Node and its value type must be |
| 273 | /// \c StaticDigraph::Node. |
| 274 | /// It must conform to the \ref concepts::ReadWriteMap "ReadWriteMap" |
| 275 | /// concept. |
| 276 | /// \param arcRef The arc references will be copied into this map. |
| 277 | /// Its key type must be \c Digraph::Arc and its value type must be |
| 278 | /// \c StaticDigraph::Arc. |
| 279 | /// It must conform to the \ref concepts::WriteMap "WriteMap" concept. |
| 280 | /// |
| 281 | /// \note If you do not need the arc references, then you could use |
| 282 | /// \ref NullMap for the last parameter. However the node references |
| 283 | /// are required by the function itself, thus they must be readable |
| 284 | /// from the map. |