src/work/marci/graph_concept.h
changeset 332 5dc61ba30730
parent 325 5fe27632f9ac
child 333 e0a80761dfd9
     1.1 --- a/src/work/marci/graph_concept.h	Thu Apr 15 17:03:44 2004 +0000
     1.2 +++ b/src/work/marci/graph_concept.h	Thu Apr 15 19:01:00 2004 +0000
     1.3 @@ -3,15 +3,15 @@
     1.4  #define HUGO_GRAPH_H
     1.5  
     1.6  ///\file
     1.7 -///\brief Declaration of GraphSkeleton.
     1.8 +///\brief Declaration of GraphSkeleturo.
     1.9  
    1.10  #include <invalid.h>
    1.11  
    1.12  /// The namespace of HugoLib
    1.13  namespace hugo {
    1.14  
    1.15 -  // @defgroup empty_graph The GraphSkeleton class
    1.16 -  // @{
    1.17 +  /// @defgroup empty_graph The GraphSkeleturo class
    1.18 +  /// @{
    1.19  
    1.20    /// An empty graph class.
    1.21    
    1.22 @@ -28,16 +28,16 @@
    1.23    /// feature, the documentation of a real graph imlementation
    1.24    /// like @ref ListGraph or
    1.25    /// @ref SmartGraph will just refer to this structure.
    1.26 -  class GraphSkeleton
    1.27 +  class GraphSkeleturo
    1.28    {
    1.29    public:
    1.30      /// Defalult constructor.
    1.31 -    GraphSkeleton() {}
    1.32 +    GraphSkeleturo() {}
    1.33      ///Copy consructor.
    1.34  
    1.35      ///\todo It is not clear, what we expect from a copy constructor.
    1.36      ///E.g. How to assign the nodes/edges to each other? What about maps?
    1.37 -    GraphSkeleton(const GraphSkeleton &G) {}
    1.38 +    GraphSkeleturo(const GraphSkeleturo &G) {}
    1.39  
    1.40      /// The base type of the node iterators.
    1.41  
    1.42 @@ -87,7 +87,7 @@
    1.43        /// \sa Invalid for more details.
    1.44        NodeIt(Invalid) {}
    1.45        /// Sets the iterator to the first node of \c G.
    1.46 -      NodeIt(const GraphSkeleton &G) {}
    1.47 +      NodeIt(const GraphSkeleturo &G) {}
    1.48        /// @warning The default constructor sets the iterator
    1.49        /// to an undefined value.
    1.50        NodeIt(const NodeIt &) {}
    1.51 @@ -134,7 +134,7 @@
    1.52        /// node
    1.53        ///@param n the node
    1.54        ///@param G the graph
    1.55 -      OutEdgeIt(const GraphSkeleton & G, Node n) {}
    1.56 +      OutEdgeIt(const GraphSkeleturo & G, Node n) {}
    1.57      };
    1.58  
    1.59      /// This iterator goes trough the incoming edges of a node.
    1.60 @@ -156,7 +156,7 @@
    1.61        InEdgeIt() {}
    1.62        /// Initialize the iterator to be invalid
    1.63        InEdgeIt(Invalid) {}
    1.64 -      InEdgeIt(const GraphSkeleton &, Node) {}    
    1.65 +      InEdgeIt(const GraphSkeleturo &, Node) {}    
    1.66      };
    1.67      //  class SymEdgeIt : public Edge {};
    1.68  
    1.69 @@ -176,7 +176,7 @@
    1.70        EdgeIt() {}
    1.71        /// Initialize the iterator to be invalid
    1.72        EdgeIt(Invalid) {}
    1.73 -      EdgeIt(const GraphSkeleton &) {}
    1.74 +      EdgeIt(const GraphSkeleturo &) {}
    1.75      };
    1.76  
    1.77      /// First node of the graph.
    1.78 @@ -268,7 +268,7 @@
    1.79      ///Read/write/reference map of the nodes to type \c T.
    1.80  
    1.81      ///Read/write/reference map of the nodes to type \c T.
    1.82 -    /// \sa MemoryMapSkeleton
    1.83 +    /// \sa MemoryMapSkeleturo
    1.84      /// \todo We may need copy constructor
    1.85      /// \todo We may need conversion from other nodetype
    1.86      /// \todo We may need operator=
    1.87 @@ -281,8 +281,8 @@
    1.88        typedef T ValueType;
    1.89        typedef Node KeyType;
    1.90  
    1.91 -      NodeMap(const GraphSkeleton &G) {}
    1.92 -      NodeMap(const GraphSkeleton &G, T t) {}
    1.93 +      NodeMap(const GraphSkeleturo &G) {}
    1.94 +      NodeMap(const GraphSkeleturo &G, T t) {}
    1.95  
    1.96        template<typename TT> NodeMap(const NodeMap<TT> &m) {}
    1.97  
    1.98 @@ -309,7 +309,7 @@
    1.99      ///Read/write/reference map of the edges to type \c T.
   1.100      ///It behaves exactly in the same way as \ref NodeMap.
   1.101      /// \sa NodeMap
   1.102 -    /// \sa MemoryMapSkeleton
   1.103 +    /// \sa MemoryMapSkeleturo
   1.104      /// \todo We may need copy constructor
   1.105      /// \todo We may need conversion from other edgetype
   1.106      /// \todo We may need operator=
   1.107 @@ -319,8 +319,8 @@
   1.108        typedef T ValueType;
   1.109        typedef Edge KeyType;
   1.110  
   1.111 -      EdgeMap(const GraphSkeleton &G) {}
   1.112 -      EdgeMap(const GraphSkeleton &G, T t) {}
   1.113 +      EdgeMap(const GraphSkeleturo &G) {}
   1.114 +      EdgeMap(const GraphSkeleturo &G, T t) {}
   1.115      
   1.116        void set(Edge i, T t) {}
   1.117        T get(Edge i) const {return *(T*)0;}
   1.118 @@ -341,7 +341,7 @@
   1.119    /// run properly, of course.
   1.120    ///
   1.121    /// \todo This blabla could be replaced by a sepatate description about
   1.122 -  /// Skeletons.
   1.123 +  /// Skeleturos.
   1.124    ///
   1.125    /// It can be used for checking the interface compatibility,
   1.126    /// or it can serve as a skeleton of a new graph structure.
   1.127 @@ -350,7 +350,7 @@
   1.128    /// feature, the documentation of a real graph imlementation
   1.129    /// like @ref ListGraph or
   1.130    /// @ref SmartGraph will just refer to this structure.
   1.131 -  class EraseableGraphSkeleton : public GraphSkeleton
   1.132 +  class EraseableGraphSkeleturo : public GraphSkeleturo
   1.133    {
   1.134    public:
   1.135      /// Deletes a node.
   1.136 @@ -359,15 +359,11 @@
   1.137      void erase(Edge e) {}
   1.138  
   1.139      /// Defalult constructor.
   1.140 -    GraphSkeleton() {}
   1.141 +    GraphSkeleturo() {}
   1.142      ///Copy consructor.
   1.143 -    GraphSkeleton(const GraphSkeleton &G) {}
   1.144 +    GraphSkeleturo(const GraphSkeleturo &G) {}
   1.145    };
   1.146  
   1.147 -  
   1.148 -  // @}
   1.149 -
   1.150 -
   1.151    /// An empty graph class which provides a function to get the number 
   1.152    /// of its nodes.
   1.153    
   1.154 @@ -377,7 +373,7 @@
   1.155    /// function. For wrappers or graphs which are given in an implicit way, 
   1.156    /// the implementation can be circumstantial, that is why this composes a 
   1.157    /// separate concept.
   1.158 -  class NodeCountingGraphSkeleton 
   1.159 +  class NodeCountingGraphSkeleturo 
   1.160    {
   1.161    public:
   1.162      /// Returns the number of nodes.
   1.163 @@ -393,17 +389,20 @@
   1.164    /// function. For wrappers or graphs which are given in an implicit way, 
   1.165    /// the implementation can be circumstantial, that is why this composes a 
   1.166    /// separate concept.
   1.167 -  class EdgeCountingGraphSkeleton 
   1.168 +  class EdgeCountingGraphSkeleturo 
   1.169    {
   1.170    public:
   1.171      /// Returns the number of edges.
   1.172      int edgeNum() const { return 0;}
   1.173    };
   1.174 +  
   1.175 +  /// @}
   1.176  
   1.177  } //namespace hugo
   1.178  
   1.179  
   1.180 -// class EmptyBipGraph : public Graph Skeleton
   1.181 +
   1.182 +// class EmptyBipGraph : public Graph Skeleturo
   1.183  // {
   1.184  //   class ANode {};
   1.185  //   class BNode {};