lemon/full_graph.h
changeset 1681 84e43c7ca1e3
parent 1643 9285f3777553
child 1692 a34203867181
equal deleted inserted replaced
3:290d055a4012 4:c26b86f3e0b1
   193 
   193 
   194   typedef AlterableGraphExtender<FullGraphBase> 
   194   typedef AlterableGraphExtender<FullGraphBase> 
   195   AlterableFullGraphBase;
   195   AlterableFullGraphBase;
   196   typedef IterableGraphExtender<AlterableFullGraphBase> 
   196   typedef IterableGraphExtender<AlterableFullGraphBase> 
   197   IterableFullGraphBase;
   197   IterableFullGraphBase;
   198   typedef DefaultMappableGraphExtender<IterableFullGraphBase> 
   198   typedef MappableGraphExtender<
   199   MappableFullGraphBase;
   199     IterableGraphExtender<
       
   200     AlterableGraphExtender<FullGraphBase> > > ExtendedFullGraphBase;
   200 
   201 
   201   /// \ingroup graphs
   202   /// \ingroup graphs
   202   ///
   203   ///
   203   /// \brief A full graph class.
   204   /// \brief A full graph class.
   204   ///
   205   ///
   208   /// Thus it conforms to
   209   /// Thus it conforms to
   209   /// the \ref concept::StaticGraph "StaticGraph" concept
   210   /// the \ref concept::StaticGraph "StaticGraph" concept
   210   /// \sa concept::StaticGraph.
   211   /// \sa concept::StaticGraph.
   211   ///
   212   ///
   212   /// \author Alpar Juttner
   213   /// \author Alpar Juttner
   213   class FullGraph : public MappableFullGraphBase {
   214   class FullGraph : public ExtendedFullGraphBase {
   214   public:
   215   public:
   215 
   216 
   216     FullGraph(int n) { construct(n); }
   217     FullGraph(int n) { construct(n); }
   217   };
   218   };
   218 
   219 
   376       e.id = source < _nodeNum ? source * (source - 1) / 2 + target : -1;
   377       e.id = source < _nodeNum ? source * (source - 1) / 2 + target : -1;
   377     }
   378     }
   378 
   379 
   379   };
   380   };
   380 
   381 
   381   typedef UndirGraphExtender<UndirFullGraphBase>
   382   typedef MappableUndirGraphExtender<
   382   UndirUndirFullGraphBase;
   383     IterableUndirGraphExtender<
   383   typedef AlterableUndirGraphExtender<UndirUndirFullGraphBase> 
   384     AlterableUndirGraphExtender<
   384   AlterableUndirFullGraphBase;
   385     UndirGraphExtender<UndirFullGraphBase> > > > ExtendedUndirFullGraphBase;
   385   typedef IterableUndirGraphExtender<AlterableUndirFullGraphBase> 
       
   386   IterableUndirFullGraphBase;
       
   387   typedef MappableUndirGraphExtender<IterableUndirFullGraphBase> 
       
   388   MappableUndirFullGraphBase;
       
   389 
   386 
   390   /// \ingroup graphs
   387   /// \ingroup graphs
   391   ///
   388   ///
   392   /// \brief An undirected full graph class.
   389   /// \brief An undirected full graph class.
   393   ///
   390   ///
   400   /// it does not contain the hook edges.
   397   /// it does not contain the hook edges.
   401   ///
   398   ///
   402   /// \sa FullGraph
   399   /// \sa FullGraph
   403   ///
   400   ///
   404   /// \author Balazs Dezso
   401   /// \author Balazs Dezso
   405   class UndirFullGraph : public MappableUndirFullGraphBase {
   402   class UndirFullGraph : public ExtendedUndirFullGraphBase {
   406   public:
   403   public:
   407     UndirFullGraph(int n) { construct(n); }
   404     UndirFullGraph(int n) { construct(n); }
   408   };
   405   };
   409 
   406 
   410 } //namespace lemon
   407 } //namespace lemon