COIN-OR::LEMON - Graph Library

Changeset 1402:655d8e78454d in lemon-0.x for src/lemon/maps.h


Ignore:
Timestamp:
05/05/05 13:05:25 (19 years ago)
Author:
Alpar Juttner
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@1864
Message:

Special maps' placement in the headers and in the doxigen modules
reorganized

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/lemon/maps.h

    r1359 r1402  
    1818#define LEMON_MAPS_H
    1919
    20 #include<math.h>
    2120
    2221///\file
     
    187186  };
    188187
     188  /// @}
     189
     190  /// \addtogroup map_adaptors
     191  /// @{
     192
     193
    189194  ///Convert the \c Value of a maps to another type.
    190195
     
    235240  {
    236241    return ConvertMap<M,T>(m);
    237   }
    238 
    239   /// \brief Returns the source of the given edge.
    240   ///
    241   /// The SourceMap gives back the source Node of the given edge.
    242   /// \author Balazs Dezso
    243   template <typename Graph>
    244   class SourceMap {
    245   public:
    246     typedef typename Graph::Node Value;
    247     typedef typename Graph::Edge Key;
    248 
    249     /// \brief Constructor
    250     ///
    251     /// Constructor
    252     /// \param _graph The graph that the map belongs to.
    253     SourceMap(const Graph& _graph) : graph(_graph) {}
    254 
    255     /// \brief The subscript operator.
    256     ///
    257     /// The subscript operator.
    258     /// \param edge The edge
    259     /// \return The source of the edge
    260     Value operator[](const Key& edge) {
    261       return graph.source(edge);
    262     }
    263 
    264   private:
    265     const Graph& graph;
    266   };
    267 
    268   /// \brief Returns a \ref SourceMap class
    269 
    270   /// This function just returns an \ref SourceMap class.
    271   /// \relates SourceMap
    272   template <typename Graph>
    273   inline SourceMap<Graph> sourceMap(const Graph& graph) {
    274     return SourceMap<Graph>(graph);
    275   }
    276 
    277   /// \brief Returns the target of the given edge.
    278   ///
    279   /// The TargetMap gives back the target Node of the given edge.
    280   /// \author Balazs Dezso
    281   template <typename Graph>
    282   class TargetMap {
    283   public:
    284     typedef typename Graph::Node Value;
    285     typedef typename Graph::Edge Key;
    286 
    287     /// \brief Constructor
    288     ///
    289     /// Constructor
    290     /// \param _graph The graph that the map belongs to.
    291     TargetMap(const Graph& _graph) : graph(_graph) {}
    292 
    293     /// \brief The subscript operator.
    294     ///
    295     /// The subscript operator.
    296     /// \param edge The edge
    297     /// \return The target of the edge
    298     Value operator[](const Key& key) {
    299       return graph.target(key);
    300     }
    301 
    302   private:
    303     const Graph& graph;
    304   };
    305 
    306   /// \brief Returns a \ref TargetMap class
    307 
    308   /// This function just returns an \ref TargetMap class.
    309   /// \relates TargetMap
    310   template <typename Graph>
    311   inline TargetMap<Graph> targetMap(const Graph& graph) {
    312     return TargetMap<Graph>(graph);
    313242  }
    314243
     
    733662  }
    734663
    735   ///Converts an STL style functor to a a map
     664  ///Converts an STL style functor to a map
    736665
    737666  ///This \ref concept::ReadMap "read only map" returns the value
Note: See TracChangeset for help on using the changeset viewer.