COIN-OR::LEMON - Graph Library

Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • lemon/grid_graph.h

    r617 r787  
    471471  /// \brief Grid graph class
    472472  ///
    473   /// This class implements a special graph type. The nodes of the
    474   /// graph can be indexed by two integer \c (i,j) value where \c i is
    475   /// in the \c [0..width()-1] range and j is in the \c
    476   /// [0..height()-1] range. Two nodes are connected in the graph if
    477   /// the indexes differ exactly on one position and exactly one is
    478   /// the difference. The nodes of the graph can be indexed by position
    479   /// with the \c operator()() function. The positions of the nodes can be
    480   /// get with \c pos(), \c col() and \c row() members. The outgoing
     473  /// GridGraph implements a special graph type. The nodes of the
     474  /// graph can be indexed by two integer values \c (i,j) where \c i is
     475  /// in the range <tt>[0..width()-1]</tt> and j is in the range
     476  /// <tt>[0..height()-1]</tt>. Two nodes are connected in the graph if
     477  /// the indices differ exactly on one position and the difference is
     478  /// also exactly one. The nodes of the graph can be obtained by position
     479  /// using the \c operator()() function and the indices of the nodes can
     480  /// be obtained using \c pos(), \c col() and \c row() members. The outgoing
    481481  /// arcs can be retrieved with the \c right(), \c up(), \c left()
    482482  /// and \c down() functions, where the bottom-left corner is the
    483483  /// origin.
     484  ///
     485  /// This class is completely static and it needs constant memory space.
     486  /// Thus you can neither add nor delete nodes or edges, however
     487  /// the structure can be resized using resize().
    484488  ///
    485489  /// \image html grid_graph.png
     
    497501  ///\endcode
    498502  ///
    499   /// This graph type fully conforms to the \ref concepts::Graph
    500   /// "Graph concept".
     503  /// This type fully conforms to the \ref concepts::Graph "Graph concept".
     504  /// Most of its member functions and nested classes are documented
     505  /// only in the concept class.
     506  ///
     507  /// This class provides constant time counting for nodes, edges and arcs.
    501508  class GridGraph : public ExtendedGridGraphBase {
    502509    typedef ExtendedGridGraphBase Parent;
     
    504511  public:
    505512
    506     /// \brief Map to get the indices of the nodes as dim2::Point<int>.
    507     ///
    508     /// Map to get the indices of the nodes as dim2::Point<int>.
     513    /// \brief Map to get the indices of the nodes as \ref dim2::Point
     514    /// "dim2::Point<int>".
     515    ///
     516    /// Map to get the indices of the nodes as \ref dim2::Point
     517    /// "dim2::Point<int>".
    509518    class IndexMap {
    510519    public:
     
    515524
    516525      /// \brief Constructor
    517       ///
    518       /// Constructor
    519526      IndexMap(const GridGraph& graph) : _graph(graph) {}
    520527
    521528      /// \brief The subscript operator
    522       ///
    523       /// The subscript operator.
    524529      Value operator[](Key key) const {
    525530        return _graph.pos(key);
     
    541546
    542547      /// \brief Constructor
    543       ///
    544       /// Constructor
    545548      ColMap(const GridGraph& graph) : _graph(graph) {}
    546549
    547550      /// \brief The subscript operator
    548       ///
    549       /// The subscript operator.
    550551      Value operator[](Key key) const {
    551552        return _graph.col(key);
     
    567568
    568569      /// \brief Constructor
    569       ///
    570       /// Constructor
    571570      RowMap(const GridGraph& graph) : _graph(graph) {}
    572571
    573572      /// \brief The subscript operator
    574       ///
    575       /// The subscript operator.
    576573      Value operator[](Key key) const {
    577574        return _graph.row(key);
     
    584581    /// \brief Constructor
    585582    ///
    586     /// Construct a grid graph with given size.
     583    /// Construct a grid graph with the given size.
    587584    GridGraph(int width, int height) { construct(width, height); }
    588585
    589     /// \brief Resize the graph
    590     ///
    591     /// Resize the graph. The function will fully destroy and rebuild
    592     /// the graph.  This cause that the maps of the graph will
    593     /// reallocated automatically and the previous values will be
    594     /// lost.
     586    /// \brief Resizes the graph
     587    ///
     588    /// This function resizes the graph. It fully destroys and
     589    /// rebuilds the structure, therefore the maps of the graph will be
     590    /// reallocated automatically and the previous values will be lost.
    595591    void resize(int width, int height) {
    596592      Parent::notifier(Arc()).clear();
     
    610606    }
    611607
    612     /// \brief Gives back the column index of the node.
     608    /// \brief The column index of the node.
    613609    ///
    614610    /// Gives back the column index of the node.
     
    617613    }
    618614
    619     /// \brief Gives back the row index of the node.
     615    /// \brief The row index of the node.
    620616    ///
    621617    /// Gives back the row index of the node.
     
    624620    }
    625621
    626     /// \brief Gives back the position of the node.
     622    /// \brief The position of the node.
    627623    ///
    628624    /// Gives back the position of the node, ie. the <tt>(col,row)</tt> pair.
     
    631627    }
    632628
    633     /// \brief Gives back the number of the columns.
     629    /// \brief The number of the columns.
    634630    ///
    635631    /// Gives back the number of the columns.
     
    638634    }
    639635
    640     /// \brief Gives back the number of the rows.
     636    /// \brief The number of the rows.
    641637    ///
    642638    /// Gives back the number of the rows.
     
    645641    }
    646642
    647     /// \brief Gives back the arc goes right from the node.
     643    /// \brief The arc goes right from the node.
    648644    ///
    649645    /// Gives back the arc goes right from the node. If there is not
     
    653649    }
    654650
    655     /// \brief Gives back the arc goes left from the node.
     651    /// \brief The arc goes left from the node.
    656652    ///
    657653    /// Gives back the arc goes left from the node. If there is not
     
    661657    }
    662658
    663     /// \brief Gives back the arc goes up from the node.
     659    /// \brief The arc goes up from the node.
    664660    ///
    665661    /// Gives back the arc goes up from the node. If there is not
     
    669665    }
    670666
    671     /// \brief Gives back the arc goes down from the node.
     667    /// \brief The arc goes down from the node.
    672668    ///
    673669    /// Gives back the arc goes down from the node. If there is not
Note: See TracChangeset for help on using the changeset viewer.