gravatar
kpeter (Peter Kovacs)
kpeter@inf.elte.hu
Fix and uniform the usage of Graph and Parent typedefs (#268) - Rename Graph typedefs to GraphType in the implementation of graph maps and MapExtender to prevent conflicts (especially using VS). They are not public. - Make Parent typedefs private in all classes. - Replace Digraph with Graph in some places (fix faulty renamings of the script). - Use Graph and Digraph typedefs (more) consequently.
0 19 0
default
19 files changed with 298 insertions and 277 deletions:
↑ Collapse diff ↑
Ignore white space 6 line context
... ...
@@ -110,11 +110,9 @@
110 110
    template <typename V>
111 111
    class NodeMap : public DGR::template NodeMap<V> {
112
      typedef typename DGR::template NodeMap<V> Parent;
113

	
112 114
    public:
113

	
114
      typedef typename DGR::template NodeMap<V> Parent;
115

	
116 115
      explicit NodeMap(const Adaptor& adaptor)
117 116
        : Parent(*adaptor._digraph) {}
118

	
119 117
      NodeMap(const Adaptor& adaptor, const V& value)
120 118
        : Parent(*adaptor._digraph, value) { }
... ...
@@ -135,11 +133,9 @@
135 133
    template <typename V>
136 134
    class ArcMap : public DGR::template ArcMap<V> {
135
      typedef typename DGR::template ArcMap<V> Parent;
136

	
137 137
    public:
138

	
139
      typedef typename DGR::template ArcMap<V> Parent;
140

	
141 138
      explicit ArcMap(const DigraphAdaptorBase<DGR>& adaptor)
142 139
        : Parent(*adaptor._digraph) {}
143

	
144 140
      ArcMap(const DigraphAdaptorBase<DGR>& adaptor, const V& value)
145 141
        : Parent(*adaptor._digraph, value) {}
... ...
@@ -256,6 +252,7 @@
256 252
    template <typename V>
257 253
    class NodeMap : public GR::template NodeMap<V> {
254
      typedef typename GR::template NodeMap<V> Parent;
255

	
258 256
    public:
259
      typedef typename GR::template NodeMap<V> Parent;
260 257
      explicit NodeMap(const GraphAdaptorBase<GR>& adapter)
261 258
        : Parent(*adapter._graph) {}
... ...
@@ -278,6 +275,7 @@
278 275
    template <typename V>
279 276
    class ArcMap : public GR::template ArcMap<V> {
277
      typedef typename GR::template ArcMap<V> Parent;
278

	
280 279
    public:
281
      typedef typename GR::template ArcMap<V> Parent;
282 280
      explicit ArcMap(const GraphAdaptorBase<GR>& adapter)
283 281
        : Parent(*adapter._graph) {}
... ...
@@ -299,6 +297,7 @@
299 297
    template <typename V>
300 298
    class EdgeMap : public GR::template EdgeMap<V> {
299
      typedef typename GR::template EdgeMap<V> Parent;
300

	
301 301
    public:
302
      typedef typename GR::template EdgeMap<V> Parent;
303 302
      explicit EdgeMap(const GraphAdaptorBase<GR>& adapter)
304 303
        : Parent(*adapter._graph) {}
... ...
@@ -322,7 +321,7 @@
322 321
  template <typename DGR>
323 322
  class ReverseDigraphBase : public DigraphAdaptorBase<DGR> {
323
    typedef DigraphAdaptorBase<DGR> Parent;
324 324
  public:
325 325
    typedef DGR Digraph;
326
    typedef DigraphAdaptorBase<DGR> Parent;
327 326
  protected:
328 327
    ReverseDigraphBase() : Parent() { }
... ...
@@ -375,8 +374,8 @@
375 374
    public DigraphAdaptorExtender<ReverseDigraphBase<DGR> > {
376 375
#endif
376
    typedef DigraphAdaptorExtender<ReverseDigraphBase<DGR> > Parent;
377 377
  public:
378 378
    /// The type of the adapted digraph.
379 379
    typedef DGR Digraph;
380
    typedef DigraphAdaptorExtender<ReverseDigraphBase<DGR> > Parent;
381 380
  protected:
382 381
    ReverseDigraph() { }
... ...
@@ -404,4 +403,5 @@
404 403
  template <typename DGR, typename NF, typename AF, bool ch = true>
405 404
  class SubDigraphBase : public DigraphAdaptorBase<DGR> {
405
    typedef DigraphAdaptorBase<DGR> Parent;
406 406
  public:
407 407
    typedef DGR Digraph;
... ...
@@ -410,5 +410,4 @@
410 410

	
411 411
    typedef SubDigraphBase Adaptor;
412
    typedef DigraphAdaptorBase<DGR> Parent;
413 412
  protected:
414 413
    NF* _node_filter;
... ...
@@ -510,8 +509,9 @@
510 509
      : public SubMapExtender<SubDigraphBase<DGR, NF, AF, ch>, 
511 510
	      LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, NodeMap<V>)> {
511
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, ch>,
512
	LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, NodeMap<V>)> Parent;
513

	
512 514
    public:
513 515
      typedef V Value;
514
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, ch>,
515
	    LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, NodeMap<V>)> Parent;
516 516

	
517 517
      NodeMap(const SubDigraphBase<DGR, NF, AF, ch>& adaptor)
... ...
@@ -536,8 +536,9 @@
536 536
      : public SubMapExtender<SubDigraphBase<DGR, NF, AF, ch>,
537 537
	      LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, ArcMap<V>)> {
538
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, ch>,
539
        LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, ArcMap<V>)> Parent;
540

	
538 541
    public:
539 542
      typedef V Value;
540
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, ch>,
541
        LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, ArcMap<V>)> Parent;
542 543

	
543 544
      ArcMap(const SubDigraphBase<DGR, NF, AF, ch>& adaptor)
... ...
@@ -563,4 +564,5 @@
563 564
  class SubDigraphBase<DGR, NF, AF, false>
564 565
    : public DigraphAdaptorBase<DGR> {
566
    typedef DigraphAdaptorBase<DGR> Parent;
565 567
  public:
566 568
    typedef DGR Digraph;
... ...
@@ -569,5 +571,4 @@
569 571

	
570 572
    typedef SubDigraphBase Adaptor;
571
    typedef DigraphAdaptorBase<Digraph> Parent;
572 573
  protected:
573 574
    NF* _node_filter;
... ...
@@ -651,8 +652,9 @@
651 652
      : public SubMapExtender<SubDigraphBase<DGR, NF, AF, false>,
652 653
          LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, NodeMap<V>)> {
654
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, false>, 
655
        LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, NodeMap<V>)> Parent;
656

	
653 657
    public:
654 658
      typedef V Value;
655
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, false>, 
656
        LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, NodeMap<V>)> Parent;
657 659

	
658 660
      NodeMap(const SubDigraphBase<DGR, NF, AF, false>& adaptor)
... ...
@@ -677,8 +679,9 @@
677 679
      : public SubMapExtender<SubDigraphBase<DGR, NF, AF, false>,
678 680
          LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, ArcMap<V>)> {
681
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, false>,
682
        LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, ArcMap<V>)> Parent;
683

	
679 684
    public:
680 685
      typedef V Value;
681
      typedef SubMapExtender<SubDigraphBase<DGR, NF, AF, false>,
682
          LEMON_SCOPE_FIX(DigraphAdaptorBase<DGR>, ArcMap<V>)> Parent;
683 686

	
684 687
      ArcMap(const SubDigraphBase<DGR, NF, AF, false>& adaptor)
... ...
@@ -864,4 +867,5 @@
864 867
  template <typename GR, typename NF, typename EF, bool ch = true>
865 868
  class SubGraphBase : public GraphAdaptorBase<GR> {
869
    typedef GraphAdaptorBase<GR> Parent;
866 870
  public:
867 871
    typedef GR Graph;
... ...
@@ -870,5 +874,4 @@
870 874

	
871 875
    typedef SubGraphBase Adaptor;
872
    typedef GraphAdaptorBase<GR> Parent;
873 876
  protected:
874 877

	
... ...
@@ -1017,8 +1020,9 @@
1017 1020
      : public SubMapExtender<SubGraphBase<GR, NF, EF, ch>,
1018 1021
          LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, NodeMap<V>)> {
1022
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, ch>, 
1023
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, NodeMap<V>)> Parent;
1024

	
1019 1025
    public:
1020 1026
      typedef V Value;
1021
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, ch>, 
1022
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, NodeMap<V>)> Parent;
1023 1027

	
1024 1028
      NodeMap(const SubGraphBase<GR, NF, EF, ch>& adaptor)
... ...
@@ -1043,8 +1047,9 @@
1043 1047
      : public SubMapExtender<SubGraphBase<GR, NF, EF, ch>,
1044 1048
          LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, ArcMap<V>)> {
1049
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, ch>, 
1050
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, ArcMap<V>)> Parent;
1051

	
1045 1052
    public:
1046 1053
      typedef V Value;
1047
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, ch>, 
1048
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, ArcMap<V>)> Parent;
1049 1054

	
1050 1055
      ArcMap(const SubGraphBase<GR, NF, EF, ch>& adaptor)
... ...
@@ -1069,8 +1074,9 @@
1069 1074
      : public SubMapExtender<SubGraphBase<GR, NF, EF, ch>,
1070 1075
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, EdgeMap<V>)> {
1076
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, ch>, 
1077
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, EdgeMap<V>)> Parent;
1078

	
1071 1079
    public:
1072 1080
      typedef V Value;
1073
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, ch>, 
1074
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, EdgeMap<V>)> Parent;
1075 1081

	
1076 1082
      EdgeMap(const SubGraphBase<GR, NF, EF, ch>& adaptor)
... ...
@@ -1097,4 +1103,5 @@
1097 1103
  class SubGraphBase<GR, NF, EF, false>
1098 1104
    : public GraphAdaptorBase<GR> {
1105
    typedef GraphAdaptorBase<GR> Parent;
1099 1106
  public:
1100 1107
    typedef GR Graph;
... ...
@@ -1103,5 +1110,4 @@
1103 1110

	
1104 1111
    typedef SubGraphBase Adaptor;
1105
    typedef GraphAdaptorBase<GR> Parent;
1106 1112
  protected:
1107 1113
    NF* _node_filter;
... ...
@@ -1212,8 +1218,9 @@
1212 1218
      : public SubMapExtender<SubGraphBase<GR, NF, EF, false>,
1213 1219
          LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, NodeMap<V>)> {
1220
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, false>, 
1221
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, NodeMap<V>)> Parent;
1222

	
1214 1223
    public:
1215 1224
      typedef V Value;
1216
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, false>, 
1217
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, NodeMap<V>)> Parent;
1218 1225

	
1219 1226
      NodeMap(const SubGraphBase<GR, NF, EF, false>& adaptor)
... ...
@@ -1238,8 +1245,9 @@
1238 1245
      : public SubMapExtender<SubGraphBase<GR, NF, EF, false>,
1239 1246
          LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, ArcMap<V>)> {
1247
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, false>, 
1248
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, ArcMap<V>)> Parent;
1249

	
1240 1250
    public:
1241 1251
      typedef V Value;
1242
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, false>, 
1243
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, ArcMap<V>)> Parent;
1244 1252

	
1245 1253
      ArcMap(const SubGraphBase<GR, NF, EF, false>& adaptor)
... ...
@@ -1264,8 +1272,9 @@
1264 1272
      : public SubMapExtender<SubGraphBase<GR, NF, EF, false>,
1265 1273
        LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, EdgeMap<V>)> {
1274
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, false>, 
1275
	LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, EdgeMap<V>)> Parent;
1276

	
1266 1277
    public:
1267 1278
      typedef V Value;
1268
      typedef SubMapExtender<SubGraphBase<GR, NF, EF, false>, 
1269
		  LEMON_SCOPE_FIX(GraphAdaptorBase<GR>, EdgeMap<V>)> Parent;
1270 1279

	
1271 1280
      EdgeMap(const SubGraphBase<GR, NF, EF, false>& adaptor)
... ...
@@ -1486,13 +1495,13 @@
1486 1495
                     true> > {
1487 1496
#endif
1488
  public:
1489

	
1490
    typedef GR Digraph;
1491
    typedef NF NodeFilterMap;
1492

	
1493 1497
    typedef DigraphAdaptorExtender<
1494 1498
      SubDigraphBase<GR, NF, ConstMap<typename GR::Arc, Const<bool, true> >, 
1495 1499
                     true> > Parent;
1496 1500

	
1501
  public:
1502

	
1503
    typedef GR Digraph;
1504
    typedef NF NodeFilterMap;
1505

	
1497 1506
    typedef typename Parent::Node Node;
1498 1507

	
... ...
@@ -1549,12 +1558,15 @@
1549 1558
                   true> > {
1550 1559

	
1551
  public:
1552
    typedef GR Graph;
1553
    typedef NF NodeFilterMap;
1554 1560
    typedef GraphAdaptorExtender<
1555 1561
      SubGraphBase<GR, NF, ConstMap<typename GR::Edge, Const<bool, true> >, 
1556 1562
                   true> > Parent;
1557 1563

	
1564
  public:
1565

	
1566
    typedef GR Graph;
1567
    typedef NF NodeFilterMap;
1568

	
1558 1569
    typedef typename Parent::Node Node;
1570

	
1559 1571
  protected:
1560 1572
    ConstMap<typename GR::Edge, Const<bool, true> > const_true_map;
... ...
@@ -1630,5 +1642,10 @@
1630 1642
                     AF, false> > {
1631 1643
#endif
1644
    typedef DigraphAdaptorExtender<
1645
      SubDigraphBase<DGR, ConstMap<typename DGR::Node, Const<bool, true> >, 
1646
                     AF, false> > Parent;
1647

	
1632 1648
  public:
1649

	
1633 1650
    /// The type of the adapted digraph.
1634 1651
    typedef DGR Digraph;
... ...
@@ -1636,8 +1653,4 @@
1636 1653
    typedef AF ArcFilterMap;
1637 1654

	
1638
    typedef DigraphAdaptorExtender<
1639
      SubDigraphBase<DGR, ConstMap<typename DGR::Node, Const<bool, true> >, 
1640
                     AF, false> > Parent;
1641

	
1642 1655
    typedef typename Parent::Arc Arc;
1643 1656

	
... ...
@@ -1739,5 +1752,10 @@
1739 1752
                   EF, false> > {
1740 1753
#endif
1754
    typedef GraphAdaptorExtender<
1755
      SubGraphBase<GR, ConstMap<typename GR::Node, Const<bool, true > >, 
1756
                   EF, false> > Parent;
1757

	
1741 1758
  public:
1759

	
1742 1760
    /// The type of the adapted graph.
1743 1761
    typedef GR Graph;
... ...
@@ -1745,8 +1763,4 @@
1745 1763
    typedef EF EdgeFilterMap;
1746 1764

	
1747
    typedef GraphAdaptorExtender<
1748
      SubGraphBase<GR, ConstMap<typename GR::Node, Const<bool, true > >, 
1749
                   EF, false> > Parent;
1750

	
1751 1765
    typedef typename Parent::Edge Edge;
1752 1766

	
... ...
@@ -2112,8 +2126,8 @@
2112 2126
    template <typename V>
2113 2127
    class NodeMap : public DGR::template NodeMap<V> {
2128
      typedef typename DGR::template NodeMap<V> Parent;
2129

	
2114 2130
    public:
2115

	
2116 2131
      typedef V Value;
2117
      typedef typename DGR::template NodeMap<Value> Parent;
2118 2132

	
2119 2133
      explicit NodeMap(const UndirectorBase<DGR>& adaptor)
... ...
@@ -2138,9 +2152,9 @@
2138 2152
    template <typename V>
2139 2153
    class ArcMap
2140
      : public SubMapExtender<UndirectorBase<DGR>, ArcMapBase<V> >
2141
    {
2154
      : public SubMapExtender<UndirectorBase<DGR>, ArcMapBase<V> > {
2155
      typedef SubMapExtender<UndirectorBase<DGR>, ArcMapBase<V> > Parent;
2156

	
2142 2157
    public:
2143 2158
      typedef V Value;
2144
      typedef SubMapExtender<Adaptor, ArcMapBase<V> > Parent;
2145 2159

	
2146 2160
      explicit ArcMap(const UndirectorBase<DGR>& adaptor)
... ...
@@ -2164,8 +2178,8 @@
2164 2178
    template <typename V>
2165 2179
    class EdgeMap : public Digraph::template ArcMap<V> {
2180
      typedef typename Digraph::template ArcMap<V> Parent;
2181

	
2166 2182
    public:
2167

	
2168 2183
      typedef V Value;
2169
      typedef typename Digraph::template ArcMap<V> Parent;
2170 2184

	
2171 2185
      explicit EdgeMap(const UndirectorBase<DGR>& adaptor)
... ...
@@ -2239,8 +2253,8 @@
2239 2253
    public GraphAdaptorExtender<UndirectorBase<DGR> > {
2240 2254
#endif
2255
    typedef GraphAdaptorExtender<UndirectorBase<DGR> > Parent;
2241 2256
  public:
2242 2257
    /// The type of the adapted digraph.
2243 2258
    typedef DGR Digraph;
2244
    typedef GraphAdaptorExtender<UndirectorBase<DGR> > Parent;
2245 2259
  protected:
2246 2260
    Undirector() { }
... ...
@@ -2450,8 +2464,8 @@
2450 2464
    template <typename V>
2451 2465
    class NodeMap : public GR::template NodeMap<V> {
2466
      typedef typename GR::template NodeMap<V> Parent;
2467

	
2452 2468
    public:
2453 2469

	
2454
      typedef typename GR::template NodeMap<V> Parent;
2455

	
2456 2470
      explicit NodeMap(const OrienterBase<GR, DM>& adapter)
2457 2471
        : Parent(*adapter._graph) {}
... ...
@@ -2475,8 +2489,8 @@
2475 2489
    template <typename V>
2476 2490
    class ArcMap : public GR::template EdgeMap<V> {
2491
      typedef typename Graph::template EdgeMap<V> Parent;
2492

	
2477 2493
    public:
2478 2494

	
2479
      typedef typename Graph::template EdgeMap<V> Parent;
2480

	
2481 2495
      explicit ArcMap(const OrienterBase<GR, DM>& adapter)
2482 2496
        : Parent(*adapter._graph) { }
... ...
@@ -2547,4 +2561,5 @@
2547 2561
    public DigraphAdaptorExtender<OrienterBase<GR, DM> > {
2548 2562
#endif
2563
    typedef DigraphAdaptorExtender<OrienterBase<GR, DM> > Parent;
2549 2564
  public:
2550 2565

	
... ...
@@ -2554,8 +2569,9 @@
2554 2569
    typedef DM DirectionMap;
2555 2570

	
2556
    typedef DigraphAdaptorExtender<OrienterBase<GR, DM> > Parent;
2557 2571
    typedef typename Parent::Arc Arc;
2572

	
2558 2573
  protected:
2559 2574
    Orienter() { }
2575

	
2560 2576
  public:
2561 2577

	
... ...
@@ -2867,8 +2883,9 @@
2867 2883
  template <typename DGR>
2868 2884
  class SplitNodesBase {
2885
    typedef DigraphAdaptorBase<const DGR> Parent;
2886

	
2869 2887
  public:
2870 2888

	
2871 2889
    typedef DGR Digraph;
2872
    typedef DigraphAdaptorBase<const DGR> Parent;
2873 2890
    typedef SplitNodesBase Adaptor;
2874 2891

	
... ...
@@ -3229,9 +3246,9 @@
3229 3246
    template <typename V>
3230 3247
    class NodeMap
3231
      : public SubMapExtender<SplitNodesBase<DGR>, NodeMapBase<V> >
3232
    {
3248
      : public SubMapExtender<SplitNodesBase<DGR>, NodeMapBase<V> > {
3249
      typedef SubMapExtender<SplitNodesBase<DGR>, NodeMapBase<V> > Parent;
3250

	
3233 3251
    public:
3234 3252
      typedef V Value;
3235
      typedef SubMapExtender<SplitNodesBase<DGR>, NodeMapBase<Value> > Parent;
3236 3253

	
3237 3254
      NodeMap(const SplitNodesBase<DGR>& adaptor)
... ...
@@ -3255,9 +3272,9 @@
3255 3272
    template <typename V>
3256 3273
    class ArcMap
3257
      : public SubMapExtender<SplitNodesBase<DGR>, ArcMapBase<V> >
3258
    {
3274
      : public SubMapExtender<SplitNodesBase<DGR>, ArcMapBase<V> > {
3275
      typedef SubMapExtender<SplitNodesBase<DGR>, ArcMapBase<V> > Parent;
3276

	
3259 3277
    public:
3260 3278
      typedef V Value;
3261
      typedef SubMapExtender<SplitNodesBase<DGR>, ArcMapBase<Value> > Parent;
3262 3279

	
3263 3280
      ArcMap(const SplitNodesBase<DGR>& adaptor)
... ...
@@ -3325,7 +3342,8 @@
3325 3342
    : public DigraphAdaptorExtender<SplitNodesBase<const DGR> > {
3326 3343
#endif
3344
    typedef DigraphAdaptorExtender<SplitNodesBase<const DGR> > Parent;
3345

	
3327 3346
  public:
3328 3347
    typedef DGR Digraph;
3329
    typedef DigraphAdaptorExtender<SplitNodesBase<const DGR> > Parent;
3330 3348

	
3331 3349
    typedef typename DGR::Node DigraphNode;
Ignore white space 6 line context
... ...
@@ -48,5 +48,5 @@
48 48
  public:
49 49
    // The graph type.
50
    typedef _Graph Graph;
50
    typedef _Graph GraphType;
51 51
    // The item type.
52 52
    typedef _Item Item;
... ...
@@ -64,11 +64,15 @@
64 64
    typedef _Value& Reference;
65 65

	
66
    // The map type.
67
    typedef ArrayMap Map;
68

	
66 69
    // The notifier type.
67 70
    typedef typename ItemSetTraits<_Graph, _Item>::ItemNotifier Notifier;
68 71

	
72
  private:
73
  
69 74
    // The MapBase of the Map which imlements the core regisitry function.
70 75
    typedef typename Notifier::ObserverBase Parent;
71 76

	
72
  private:
73 77
    typedef std::allocator<Value> Allocator;
74 78

	
... ...
@@ -78,5 +82,5 @@
78 82
    //
79 83
    // Graph initialized map constructor.
80
    explicit ArrayMap(const Graph& graph) {
84
    explicit ArrayMap(const GraphType& graph) {
81 85
      Parent::attach(graph.notifier(Item()));
82 86
      allocate_memory();
... ...
@@ -92,5 +96,5 @@
92 96
    //
93 97
    // It constructs a map and initialize all of the the map.
94
    ArrayMap(const Graph& graph, const Value& value) {
98
    ArrayMap(const GraphType& graph, const Value& value) {
95 99
      Parent::attach(graph.notifier(Item()));
96 100
      allocate_memory();
Ignore white space 6 line context
... ...
@@ -39,8 +39,8 @@
39 39
  template <typename Base>
40 40
  class UndirDigraphExtender : public Base {
41
    typedef Base Parent;
41 42

	
42 43
  public:
43 44

	
44
    typedef Base Parent;
45 45
    typedef typename Parent::Arc Edge;
46 46
    typedef typename Parent::Node Node;
... ...
@@ -281,6 +281,7 @@
281 281
  template <typename Base>
282 282
  class BidirBpGraphExtender : public Base {
283
    typedef Base Parent;
284

	
283 285
  public:
284
    typedef Base Parent;
285 286
    typedef BidirBpGraphExtender Digraph;
286 287

	
Ignore white space 6 line context
... ...
@@ -154,13 +154,14 @@
154 154
  class DefaultMap
155 155
    : public DefaultMapSelector<_Graph, _Item, _Value>::Map {
156
    typedef typename DefaultMapSelector<_Graph, _Item, _Value>::Map Parent;
157

	
156 158
  public:
157
    typedef typename DefaultMapSelector<_Graph, _Item, _Value>::Map Parent;
158 159
    typedef DefaultMap<_Graph, _Item, _Value> Map;
159

	
160
    typedef typename Parent::Graph Graph;
160
    
161
    typedef typename Parent::GraphType GraphType;
161 162
    typedef typename Parent::Value Value;
162 163

	
163
    explicit DefaultMap(const Graph& graph) : Parent(graph) {}
164
    DefaultMap(const Graph& graph, const Value& value)
164
    explicit DefaultMap(const GraphType& graph) : Parent(graph) {}
165
    DefaultMap(const GraphType& graph, const Value& value)
165 166
      : Parent(graph, value) {}
166 167

	
Ignore white space 6 line context
... ...
@@ -35,7 +35,8 @@
35 35
  template <typename Base>
36 36
  class ArcSetExtender : public Base {
37
    typedef Base Parent;
38

	
37 39
  public:
38 40

	
39
    typedef Base Parent;
40 41
    typedef ArcSetExtender Digraph;
41 42

	
... ...
@@ -219,8 +220,7 @@
219 220
    class ArcMap 
220 221
      : public MapExtender<DefaultMap<Digraph, Arc, _Value> > {
221
    public:
222
      typedef ArcSetExtender Digraph;
223 222
      typedef MapExtender<DefaultMap<Digraph, Arc, _Value> > Parent;
224 223

	
224
    public:
225 225
      explicit ArcMap(const Digraph& _g) 
226 226
	: Parent(_g) {}
... ...
@@ -275,9 +275,9 @@
275 275
  template <typename Base>
276 276
  class EdgeSetExtender : public Base {
277
    typedef Base Parent;
277 278

	
278 279
  public:
279 280

	
280
    typedef Base Parent;
281
    typedef EdgeSetExtender Digraph;
281
    typedef EdgeSetExtender Graph;
282 282

	
283 283
    typedef typename Parent::Node Node;
... ...
@@ -285,5 +285,4 @@
285 285
    typedef typename Parent::Edge Edge;
286 286

	
287

	
288 287
    int maxId(Node) const {
289 288
      return Parent::maxNodeId();
... ...
@@ -351,5 +350,5 @@
351 350

	
352 351
    class NodeIt : public Node { 
353
      const Digraph* digraph;
352
      const Graph* graph;
354 353
    public:
355 354

	
... ...
@@ -358,13 +357,13 @@
358 357
      NodeIt(Invalid i) : Node(i) { }
359 358

	
360
      explicit NodeIt(const Digraph& _graph) : digraph(&_graph) {
359
      explicit NodeIt(const Graph& _graph) : graph(&_graph) {
361 360
	_graph.first(static_cast<Node&>(*this));
362 361
      }
363 362

	
364
      NodeIt(const Digraph& _graph, const Node& node) 
365
	: Node(node), digraph(&_graph) {}
363
      NodeIt(const Graph& _graph, const Node& node) 
364
	: Node(node), graph(&_graph) {}
366 365

	
367 366
      NodeIt& operator++() { 
368
	digraph->next(*this);
367
	graph->next(*this);
369 368
	return *this; 
370 369
      }
... ...
@@ -374,5 +373,5 @@
374 373

	
375 374
    class ArcIt : public Arc { 
376
      const Digraph* digraph;
375
      const Graph* graph;
377 376
    public:
378 377

	
... ...
@@ -381,13 +380,13 @@
381 380
      ArcIt(Invalid i) : Arc(i) { }
382 381

	
383
      explicit ArcIt(const Digraph& _graph) : digraph(&_graph) {
382
      explicit ArcIt(const Graph& _graph) : graph(&_graph) {
384 383
	_graph.first(static_cast<Arc&>(*this));
385 384
      }
386 385

	
387
      ArcIt(const Digraph& _graph, const Arc& e) : 
388
	Arc(e), digraph(&_graph) { }
386
      ArcIt(const Graph& _graph, const Arc& e) : 
387
	Arc(e), graph(&_graph) { }
389 388

	
390 389
      ArcIt& operator++() { 
391
	digraph->next(*this);
390
	graph->next(*this);
392 391
	return *this; 
393 392
      }
... ...
@@ -397,5 +396,5 @@
397 396

	
398 397
    class OutArcIt : public Arc { 
399
      const Digraph* digraph;
398
      const Graph* graph;
400 399
    public:
401 400

	
... ...
@@ -404,14 +403,14 @@
404 403
      OutArcIt(Invalid i) : Arc(i) { }
405 404

	
406
      OutArcIt(const Digraph& _graph, const Node& node) 
407
	: digraph(&_graph) {
405
      OutArcIt(const Graph& _graph, const Node& node) 
406
	: graph(&_graph) {
408 407
	_graph.firstOut(*this, node);
409 408
      }
410 409

	
411
      OutArcIt(const Digraph& _graph, const Arc& arc) 
412
	: Arc(arc), digraph(&_graph) {}
410
      OutArcIt(const Graph& _graph, const Arc& arc) 
411
	: Arc(arc), graph(&_graph) {}
413 412

	
414 413
      OutArcIt& operator++() { 
415
	digraph->nextOut(*this);
414
	graph->nextOut(*this);
416 415
	return *this; 
417 416
      }
... ...
@@ -421,5 +420,5 @@
421 420

	
422 421
    class InArcIt : public Arc { 
423
      const Digraph* digraph;
422
      const Graph* graph;
424 423
    public:
425 424

	
... ...
@@ -428,14 +427,14 @@
428 427
      InArcIt(Invalid i) : Arc(i) { }
429 428

	
430
      InArcIt(const Digraph& _graph, const Node& node) 
431
	: digraph(&_graph) {
429
      InArcIt(const Graph& _graph, const Node& node) 
430
	: graph(&_graph) {
432 431
	_graph.firstIn(*this, node);
433 432
      }
434 433

	
435
      InArcIt(const Digraph& _graph, const Arc& arc) : 
436
	Arc(arc), digraph(&_graph) {}
434
      InArcIt(const Graph& _graph, const Arc& arc) : 
435
	Arc(arc), graph(&_graph) {}
437 436

	
438 437
      InArcIt& operator++() { 
439
	digraph->nextIn(*this);
438
	graph->nextIn(*this);
440 439
	return *this; 
441 440
      }
... ...
@@ -445,5 +444,5 @@
445 444

	
446 445
    class EdgeIt : public Parent::Edge { 
447
      const Digraph* digraph;
446
      const Graph* graph;
448 447
    public:
449 448

	
... ...
@@ -452,13 +451,13 @@
452 451
      EdgeIt(Invalid i) : Edge(i) { }
453 452

	
454
      explicit EdgeIt(const Digraph& _graph) : digraph(&_graph) {
453
      explicit EdgeIt(const Graph& _graph) : graph(&_graph) {
455 454
	_graph.first(static_cast<Edge&>(*this));
456 455
      }
457 456

	
458
      EdgeIt(const Digraph& _graph, const Edge& e) : 
459
	Edge(e), digraph(&_graph) { }
457
      EdgeIt(const Graph& _graph, const Edge& e) : 
458
	Edge(e), graph(&_graph) { }
460 459

	
461 460
      EdgeIt& operator++() { 
462
	digraph->next(*this);
461
	graph->next(*this);
463 462
	return *this; 
464 463
      }
... ...
@@ -468,5 +467,5 @@
468 467
    class IncEdgeIt : public Parent::Edge {
469 468
      friend class EdgeSetExtender;
470
      const Digraph* digraph;
469
      const Graph* graph;
471 470
      bool direction;
472 471
    public:
... ...
@@ -476,15 +475,15 @@
476 475
      IncEdgeIt(Invalid i) : Edge(i), direction(false) { }
477 476

	
478
      IncEdgeIt(const Digraph& _graph, const Node &n) : digraph(&_graph) {
477
      IncEdgeIt(const Graph& _graph, const Node &n) : graph(&_graph) {
479 478
	_graph.firstInc(*this, direction, n);
480 479
      }
481 480

	
482
      IncEdgeIt(const Digraph& _graph, const Edge &ue, const Node &n)
483
	: digraph(&_graph), Edge(ue) {
481
      IncEdgeIt(const Graph& _graph, const Edge &ue, const Node &n)
482
	: graph(&_graph), Edge(ue) {
484 483
	direction = (_graph.source(ue) == n);
485 484
      }
486 485

	
487 486
      IncEdgeIt& operator++() {
488
	digraph->nextInc(*this, direction);
487
	graph->nextInc(*this, direction);
489 488
	return *this; 
490 489
      }
... ...
@@ -535,12 +534,11 @@
535 534
    template <typename _Value>
536 535
    class ArcMap 
537
      : public MapExtender<DefaultMap<Digraph, Arc, _Value> > {
536
      : public MapExtender<DefaultMap<Graph, Arc, _Value> > {
537
      typedef MapExtender<DefaultMap<Graph, Arc, _Value> > Parent;
538

	
538 539
    public:
539
      typedef EdgeSetExtender Digraph;
540
      typedef MapExtender<DefaultMap<Digraph, Arc, _Value> > Parent;
541

	
542
      ArcMap(const Digraph& _g) 
540
      ArcMap(const Graph& _g) 
543 541
	: Parent(_g) {}
544
      ArcMap(const Digraph& _g, const _Value& _v) 
542
      ArcMap(const Graph& _g, const _Value& _v) 
545 543
	: Parent(_g, _v) {}
546 544

	
... ...
@@ -560,13 +558,12 @@
560 558
    template <typename _Value>
561 559
    class EdgeMap 
562
      : public MapExtender<DefaultMap<Digraph, Edge, _Value> > {
560
      : public MapExtender<DefaultMap<Graph, Edge, _Value> > {
561
      typedef MapExtender<DefaultMap<Graph, Edge, _Value> > Parent;
562

	
563 563
    public:
564
      typedef EdgeSetExtender Digraph;
565
      typedef MapExtender<DefaultMap<Digraph, Edge, _Value> > Parent;
566

	
567
      EdgeMap(const Digraph& _g) 
564
      EdgeMap(const Graph& _g) 
568 565
	: Parent(_g) {}
569 566

	
570
      EdgeMap(const Digraph& _g, const _Value& _v) 
567
      EdgeMap(const Graph& _g, const _Value& _v) 
571 568
	: Parent(_g, _v) {}
572 569

	
... ...
@@ -27,7 +27,8 @@
27 27
  template <typename _Digraph>
28 28
  class DigraphAdaptorExtender : public _Digraph {
29
    typedef _Digraph Parent;
30

	
29 31
  public:
30 32

	
31
    typedef _Digraph Parent;
32 33
    typedef _Digraph Digraph;
33 34
    typedef DigraphAdaptorExtender Adaptor;
... ...
@@ -174,7 +175,8 @@
174 175
  template <typename _Graph>
175 176
  class GraphAdaptorExtender : public _Graph {
177
    typedef _Graph Parent;
178

	
176 179
  public:
177 180

	
178
    typedef _Graph Parent;
179 181
    typedef _Graph Graph;
180 182
    typedef GraphAdaptorExtender Adaptor;
Ignore white space 6 line context
... ...
@@ -38,7 +38,8 @@
38 38
  template <typename Base>
39 39
  class DigraphExtender : public Base {
40
    typedef Base Parent;
41

	
40 42
  public:
41 43

	
42
    typedef Base Parent;
43 44
    typedef DigraphExtender Digraph;
44 45

	
... ...
@@ -219,8 +220,7 @@
219 220
    class NodeMap
220 221
      : public MapExtender<DefaultMap<Digraph, Node, _Value> > {
221
    public:
222
      typedef DigraphExtender Digraph;
223 222
      typedef MapExtender<DefaultMap<Digraph, Node, _Value> > Parent;
224 223

	
224
    public:
225 225
      explicit NodeMap(const Digraph& digraph)
226 226
        : Parent(digraph) {}
... ...
@@ -244,8 +244,7 @@
244 244
    class ArcMap
245 245
      : public MapExtender<DefaultMap<Digraph, Arc, _Value> > {
246
    public:
247
      typedef DigraphExtender Digraph;
248 246
      typedef MapExtender<DefaultMap<Digraph, Arc, _Value> > Parent;
249 247

	
248
    public:
250 249
      explicit ArcMap(const Digraph& digraph)
251 250
        : Parent(digraph) {}
... ...
@@ -331,7 +330,8 @@
331 330
  template <typename Base>
332 331
  class GraphExtender : public Base {
332
    typedef Base Parent;
333

	
333 334
  public:
334 335

	
335
    typedef Base Parent;
336 336
    typedef GraphExtender Graph;
337 337

	
... ...
@@ -602,8 +602,7 @@
602 602
    class NodeMap
603 603
      : public MapExtender<DefaultMap<Graph, Node, _Value> > {
604
    public:
605
      typedef GraphExtender Graph;
606 604
      typedef MapExtender<DefaultMap<Graph, Node, _Value> > Parent;
607 605

	
606
    public:
608 607
      NodeMap(const Graph& graph)
609 608
        : Parent(graph) {}
... ...
@@ -627,8 +626,7 @@
627 626
    class ArcMap
628 627
      : public MapExtender<DefaultMap<Graph, Arc, _Value> > {
629
    public:
630
      typedef GraphExtender Graph;
631 628
      typedef MapExtender<DefaultMap<Graph, Arc, _Value> > Parent;
632 629

	
630
    public:
633 631
      ArcMap(const Graph& graph)
634 632
        : Parent(graph) {}
... ...
@@ -652,8 +650,7 @@
652 650
    class EdgeMap
653 651
      : public MapExtender<DefaultMap<Graph, Edge, _Value> > {
654
    public:
655
      typedef GraphExtender Graph;
656 652
      typedef MapExtender<DefaultMap<Graph, Edge, _Value> > Parent;
657 653

	
654
    public:
658 655
      EdgeMap(const Graph& graph)
659 656
        : Parent(graph) {}
Ignore white space 6 line context
... ...
@@ -37,11 +37,10 @@
37 37
  template <typename _Map>
38 38
  class MapExtender : public _Map {
39
    typedef _Map Parent;
40
    typedef typename Parent::GraphType GraphType;
41

	
39 42
  public:
40 43

	
41
    typedef _Map Parent;
42 44
    typedef MapExtender Map;
43

	
44

	
45
    typedef typename Parent::Graph Graph;
46 45
    typedef typename Parent::Key Item;
47 46

	
... ...
@@ -59,8 +58,8 @@
59 58
  public:
60 59

	
61
    MapExtender(const Graph& graph)
60
    MapExtender(const GraphType& graph)
62 61
      : Parent(graph) {}
63 62

	
64
    MapExtender(const Graph& graph, const Value& value)
63
    MapExtender(const GraphType& graph, const Value& value)
65 64
      : Parent(graph, value) {}
66 65

	
... ...
@@ -78,7 +77,8 @@
78 77
  public:
79 78
    class MapIt : public Item {
79
      typedef Item Parent;
80

	
80 81
    public:
81 82

	
82
      typedef Item Parent;
83 83
      typedef typename Map::Value Value;
84 84

	
... ...
@@ -117,8 +117,8 @@
117 117

	
118 118
    class ConstMapIt : public Item {
119
      typedef Item Parent;
120

	
119 121
    public:
120 122

	
121
      typedef Item Parent;
122

	
123 123
      typedef typename Map::Value Value;
124 124

	
... ...
@@ -148,8 +148,8 @@
148 148

	
149 149
    class ItemIt : public Item {
150
      typedef Item Parent;
151

	
150 152
    public:
151 153

	
152
      typedef Item Parent;
153

	
154 154
      ItemIt() {}
155 155

	
... ...
@@ -179,11 +179,10 @@
179 179
  template <typename _Graph, typename _Map>
180 180
  class SubMapExtender : public _Map {
181
    typedef _Map Parent;
182
    typedef _Graph GraphType;
183

	
181 184
  public:
182 185

	
183
    typedef _Map Parent;
184 186
    typedef SubMapExtender Map;
185

	
186
    typedef _Graph Graph;
187

	
188 187
    typedef typename Parent::Key Item;
189 188

	
... ...
@@ -201,8 +200,8 @@
201 200
  public:
202 201

	
203
    SubMapExtender(const Graph& _graph)
202
    SubMapExtender(const GraphType& _graph)
204 203
      : Parent(_graph), graph(_graph) {}
205 204

	
206
    SubMapExtender(const Graph& _graph, const Value& _value)
205
    SubMapExtender(const GraphType& _graph, const Value& _value)
207 206
      : Parent(_graph, _value), graph(_graph) {}
208 207

	
... ...
@@ -224,7 +223,7 @@
224 223
  public:
225 224
    class MapIt : public Item {
225
      typedef Item Parent;
226

	
226 227
    public:
227

	
228
      typedef Item Parent;
229 228
      typedef typename Map::Value Value;
230 229

	
... ...
@@ -263,8 +262,8 @@
263 262

	
264 263
    class ConstMapIt : public Item {
264
      typedef Item Parent;
265

	
265 266
    public:
266 267

	
267
      typedef Item Parent;
268

	
269 268
      typedef typename Map::Value Value;
270 269

	
... ...
@@ -294,8 +293,8 @@
294 293

	
295 294
    class ItemIt : public Item {
295
      typedef Item Parent;
296

	
296 297
    public:
297 298

	
298
      typedef Item Parent;
299

	
300 299
      ItemIt() {}
301 300

	
... ...
@@ -321,5 +320,5 @@
321 320
  private:
322 321

	
323
    const Graph& graph;
322
    const GraphType& graph;
324 323

	
325 324
  };
Ignore white space 6 line context
... ...
@@ -57,5 +57,5 @@
57 57

	
58 58
    // The graph type of the map.
59
    typedef _Graph Graph;
59
    typedef _Graph GraphType;
60 60
    // The item type of the map.
61 61
    typedef _Item Item;
... ...
@@ -73,6 +73,4 @@
73 73
    // The map type.
74 74
    typedef VectorMap Map;
75
    // The base class of the map.
76
    typedef typename Notifier::ObserverBase Parent;
77 75

	
78 76
    // The reference type of the map;
... ...
@@ -81,4 +79,10 @@
81 79
    typedef typename Container::const_reference ConstReference;
82 80

	
81
  private:
82

	
83
    // The base class of the map.
84
    typedef typename Notifier::ObserverBase Parent;
85

	
86
  public:
83 87

	
84 88
    // \brief Constructor to attach the new map into the notifier.
... ...
@@ -86,5 +90,5 @@
86 90
    // It constructs a map and attachs it into the notifier.
87 91
    // It adds all the items of the graph to the map.
88
    VectorMap(const Graph& graph) {
92
    VectorMap(const GraphType& graph) {
89 93
      Parent::attach(graph.notifier(Item()));
90 94
      container.resize(Parent::notifier()->maxId() + 1);
... ...
@@ -95,5 +99,5 @@
95 99
    // It constructs a map uses a given value to initialize the map.
96 100
    // It adds all the items of the graph to the map.
97
    VectorMap(const Graph& graph, const Value& value) {
101
    VectorMap(const GraphType& graph, const Value& value) {
98 102
      Parent::attach(graph.notifier(Item()));
99 103
      container.resize(Parent::notifier()->maxId() + 1, value);
Ignore white space 6 line context
... ...
@@ -181,4 +181,7 @@
181 181
    class BaseGraphComponent : public BaseDigraphComponent {
182 182
    public:
183

	
184
      typedef BaseGraphComponent Graph;
185

	
183 186
      typedef BaseDigraphComponent::Node Node;
184 187
      typedef BaseDigraphComponent::Arc Arc;
... ...
@@ -190,7 +193,7 @@
190 193
      /// represented by two opposite directed arcs.
191 194
      class Edge : public GraphItem<'e'> {
192
      public:
193 195
        typedef GraphItem<'e'> Parent;
194 196

	
197
      public:
195 198
        /// \brief Default constructor.
196 199
        ///
... ...
@@ -992,10 +995,8 @@
992 995
    template <typename GR, typename K, typename V>
993 996
    class GraphMap : public ReferenceMap<K, V, V&, const V&> {
997
      typedef ReferenceMap<K, V, V&, const V&> Parent;
998

	
994 999
    public:
995 1000

	
996
      typedef ReadWriteMap<K, V> Parent;
997

	
998
      /// The graph type of the map.
999
      typedef GR Graph;
1000 1001
      /// The key type of the map.
1001 1002
      typedef K Key;
... ...
@@ -1013,9 +1014,9 @@
1013 1014
      ///
1014 1015
      /// Construct a new map for the graph.
1015
      explicit GraphMap(const Graph&) {}
1016
      explicit GraphMap(const GR&) {}
1016 1017
      /// \brief Construct a new map with default value.
1017 1018
      ///
1018 1019
      /// Construct a new map for the graph and initalize the values.
1019
      GraphMap(const Graph&, const Value&) {}
1020
      GraphMap(const GR&, const Value&) {}
1020 1021

	
1021 1022
    private:
... ...
@@ -1058,5 +1059,5 @@
1058 1059

	
1059 1060
        const _Map &m;
1060
        const Graph &g;
1061
        const GR &g;
1061 1062
        const typename GraphMap::Value &t;
1062 1063
      };
... ...
@@ -1086,7 +1087,7 @@
1086 1087
      template <typename V>
1087 1088
      class NodeMap : public GraphMap<MappableDigraphComponent, Node, V> {
1088
      public:
1089 1089
        typedef GraphMap<MappableDigraphComponent, Node, V> Parent;
1090 1090

	
1091
      public:
1091 1092
        /// \brief Construct a new map.
1092 1093
        ///
... ...
@@ -1124,7 +1125,7 @@
1124 1125
      template <typename V>
1125 1126
      class ArcMap : public GraphMap<MappableDigraphComponent, Arc, V> {
1126
      public:
1127 1127
        typedef GraphMap<MappableDigraphComponent, Arc, V> Parent;
1128 1128

	
1129
      public:
1129 1130
        /// \brief Construct a new map.
1130 1131
        ///
... ...
@@ -1222,7 +1223,7 @@
1222 1223
      template <typename V>
1223 1224
      class EdgeMap : public GraphMap<MappableGraphComponent, Edge, V> {
1224
      public:
1225 1225
        typedef GraphMap<MappableGraphComponent, Edge, V> Parent;
1226 1226

	
1227
      public:
1227 1228
        /// \brief Construct a new map.
1228 1229
        ///
Ignore white space 6 line context
... ...
@@ -1037,11 +1037,10 @@
1037 1037
  template <typename GR>
1038 1038
  class ConArcIt : public GR::Arc {
1039
    typedef typename GR::Arc Parent;
1040

	
1039 1041
  public:
1040 1042

	
1041
    typedef GR Graph;
1042
    typedef typename Graph::Arc Parent;
1043

	
1044
    typedef typename Graph::Arc Arc;
1045
    typedef typename Graph::Node Node;
1043
    typedef typename GR::Arc Arc;
1044
    typedef typename GR::Node Node;
1046 1045

	
1047 1046
    /// \brief Constructor.
... ...
@@ -1049,5 +1048,5 @@
1049 1048
    /// Construct a new ConArcIt iterating on the arcs that
1050 1049
    /// connects nodes \c u and \c v.
1051
    ConArcIt(const Graph& g, Node u, Node v) : _graph(g) {
1050
    ConArcIt(const GR& g, Node u, Node v) : _graph(g) {
1052 1051
      Parent::operator=(findArc(_graph, u, v));
1053 1052
    }
... ...
@@ -1056,5 +1055,5 @@
1056 1055
    ///
1057 1056
    /// Construct a new ConArcIt that continues the iterating from arc \c a.
1058
    ConArcIt(const Graph& g, Arc a) : Parent(a), _graph(g) {}
1057
    ConArcIt(const GR& g, Arc a) : Parent(a), _graph(g) {}
1059 1058

	
1060 1059
    /// \brief Increment operator.
... ...
@@ -1067,5 +1066,5 @@
1067 1066
    }
1068 1067
  private:
1069
    const Graph& _graph;
1068
    const GR& _graph;
1070 1069
  };
1071 1070

	
... ...
@@ -1160,11 +1159,10 @@
1160 1159
  template <typename GR>
1161 1160
  class ConEdgeIt : public GR::Edge {
1161
    typedef typename GR::Edge Parent;
1162

	
1162 1163
  public:
1163 1164

	
1164
    typedef GR Graph;
1165
    typedef typename Graph::Edge Parent;
1166

	
1167
    typedef typename Graph::Edge Edge;
1168
    typedef typename Graph::Node Node;
1165
    typedef typename GR::Edge Edge;
1166
    typedef typename GR::Node Node;
1169 1167

	
1170 1168
    /// \brief Constructor.
... ...
@@ -1172,5 +1170,5 @@
1172 1170
    /// Construct a new ConEdgeIt iterating on the edges that
1173 1171
    /// connects nodes \c u and \c v.
1174
    ConEdgeIt(const Graph& g, Node u, Node v) : _graph(g), _u(u), _v(v) {
1172
    ConEdgeIt(const GR& g, Node u, Node v) : _graph(g), _u(u), _v(v) {
1175 1173
      Parent::operator=(findEdge(_graph, _u, _v));
1176 1174
    }
... ...
@@ -1179,5 +1177,5 @@
1179 1177
    ///
1180 1178
    /// Construct a new ConEdgeIt that continues iterating from edge \c e.
1181
    ConEdgeIt(const Graph& g, Edge e) : Parent(e), _graph(g) {}
1179
    ConEdgeIt(const GR& g, Edge e) : Parent(e), _graph(g) {}
1182 1180

	
1183 1181
    /// \brief Increment operator.
... ...
@@ -1189,5 +1187,5 @@
1189 1187
    }
1190 1188
  private:
1191
    const Graph& _graph;
1189
    const GR& _graph;
1192 1190
    Node _u, _v;
1193 1191
  };
... ...
@@ -1220,9 +1218,12 @@
1220 1218
    : protected ItemSetTraits<GR, typename GR::Arc>::ItemNotifier::ObserverBase
1221 1219
  {
1222
  public:
1223 1220
    typedef typename ItemSetTraits<GR, typename GR::Arc>
1224 1221
    ::ItemNotifier::ObserverBase Parent;
1225 1222

	
1226 1223
    TEMPLATE_DIGRAPH_TYPEDEFS(GR);
1224

	
1225
  public:
1226

	
1227
    /// The Digraph type
1227 1228
    typedef GR Digraph;
1228 1229

	
... ...
@@ -1230,8 +1231,8 @@
1230 1231

	
1231 1232
    class AutoNodeMap : public ItemSetTraits<GR, Node>::template Map<Arc>::Type {
1233
      typedef typename ItemSetTraits<GR, Node>::template Map<Arc>::Type Parent;
1234

	
1232 1235
    public:
1233 1236

	
1234
      typedef typename ItemSetTraits<GR, Node>::template Map<Arc>::Type Parent;
1235

	
1236 1237
      AutoNodeMap(const GR& digraph) : Parent(digraph, INVALID) {}
1237 1238

	
... ...
@@ -1258,10 +1259,4 @@
1258 1259
    };
1259 1260

	
1260
    const Digraph &_g;
1261
    AutoNodeMap _head;
1262
    typename Digraph::template ArcMap<Arc> _parent;
1263
    typename Digraph::template ArcMap<Arc> _left;
1264
    typename Digraph::template ArcMap<Arc> _right;
1265

	
1266 1261
    class ArcLess {
1267 1262
      const Digraph &g;
... ...
@@ -1274,4 +1269,12 @@
1274 1269
    };
1275 1270

	
1271
  protected: 
1272

	
1273
    const Digraph &_g;
1274
    AutoNodeMap _head;
1275
    typename Digraph::template ArcMap<Arc> _parent;
1276
    typename Digraph::template ArcMap<Arc> _left;
1277
    typename Digraph::template ArcMap<Arc> _right;
1278

	
1276 1279
  public:
1277 1280

	
... ...
@@ -1631,6 +1634,9 @@
1631 1634
  class ArcLookUp
1632 1635
  {
1636
    TEMPLATE_DIGRAPH_TYPEDEFS(GR);
1637

	
1633 1638
  public:
1634
    TEMPLATE_DIGRAPH_TYPEDEFS(GR);
1639

	
1640
    /// The Digraph type
1635 1641
    typedef GR Digraph;
1636 1642

	
... ...
@@ -1747,7 +1753,6 @@
1747 1753

	
1748 1754
    TEMPLATE_DIGRAPH_TYPEDEFS(GR);
1749
    typedef GR Digraph;
1750 1755

	
1751
    typename Digraph::template ArcMap<Arc> _next;
1756
    typename GR::template ArcMap<Arc> _next;
1752 1757

	
1753 1758
    Arc refreshNext(Arc head,Arc next=INVALID)
... ...
@@ -1768,4 +1773,8 @@
1768 1773

	
1769 1774
  public:
1775

	
1776
    /// The Digraph type
1777
    typedef GR Digraph;
1778

	
1770 1779
    ///Constructor
1771 1780

	
Ignore white space 6 line context
... ...
@@ -34,5 +34,4 @@
34 34
  public:
35 35

	
36
    typedef GR Graph;
37 36
    typedef typename GR::Node Node;
38 37
    typedef typename GR::NodeIt NodeIt;
... ...
@@ -209,8 +208,8 @@
209 208
    template <typename V>
210 209
    class NodeMap : public GR::template NodeMap<V> {
210
      typedef typename GR::template NodeMap<V> Parent;
211

	
211 212
    public:
212 213

	
213
      typedef typename GR::template NodeMap<V> Parent;
214

	
215 214
      explicit NodeMap(const ListArcSetBase<GR>& arcset)
216 215
        : Parent(*arcset._graph) {}
... ...
@@ -260,15 +259,11 @@
260 259
  template <typename GR>
261 260
  class ListArcSet : public ArcSetExtender<ListArcSetBase<GR> > {
261
    typedef ArcSetExtender<ListArcSetBase<GR> > Parent;
262 262

	
263 263
  public:
264 264

	
265
    typedef ArcSetExtender<ListArcSetBase<GR> > Parent;
266

	
267 265
    typedef typename Parent::Node Node;
268 266
    typedef typename Parent::Arc Arc;
269 267

	
270
    typedef GR Graph;
271

	
272

	
273 268
    typedef typename Parent::NodesImplBase NodesImplBase;
274 269

	
... ...
@@ -293,7 +288,7 @@
293 288

	
294 289
    class NodesImpl : public NodesImplBase {
295
    public:
296 290
      typedef NodesImplBase Parent;
297 291

	
292
    public:
298 293
      NodesImpl(const GR& graph, ListArcSet& arcset)
299 294
        : Parent(graph), _arcset(arcset) {}
... ...
@@ -355,5 +350,4 @@
355 350
  public:
356 351

	
357
    typedef GR Graph;
358 352
    typedef typename GR::Node Node;
359 353
    typedef typename GR::NodeIt NodeIt;
... ...
@@ -638,8 +632,8 @@
638 632
    template <typename V>
639 633
    class NodeMap : public GR::template NodeMap<V> {
634
      typedef typename GR::template NodeMap<V> Parent;
635

	
640 636
    public:
641 637

	
642
      typedef typename GR::template NodeMap<V> Parent;
643

	
644 638
      explicit NodeMap(const ListEdgeSetBase<GR>& arcset)
645 639
        : Parent(*arcset._graph) {}
... ...
@@ -689,16 +683,12 @@
689 683
  template <typename GR>
690 684
  class ListEdgeSet : public EdgeSetExtender<ListEdgeSetBase<GR> > {
685
    typedef EdgeSetExtender<ListEdgeSetBase<GR> > Parent;
691 686

	
692 687
  public:
693 688

	
694
    typedef EdgeSetExtender<ListEdgeSetBase<GR> > Parent;
695

	
696 689
    typedef typename Parent::Node Node;
697 690
    typedef typename Parent::Arc Arc;
698 691
    typedef typename Parent::Edge Edge;
699 692

	
700
    typedef GR Graph;
701

	
702

	
703 693
    typedef typename Parent::NodesImplBase NodesImplBase;
704 694

	
... ...
@@ -718,7 +708,7 @@
718 708

	
719 709
    class NodesImpl : public NodesImplBase {
720
    public:
721 710
      typedef NodesImplBase Parent;
722 711

	
712
    public:
723 713
      NodesImpl(const GR& graph, ListEdgeSet& arcset)
724 714
        : Parent(graph), _arcset(arcset) {}
... ...
@@ -780,7 +770,6 @@
780 770
  public:
781 771

	
782
    typedef GR Graph;
783
    typedef typename Graph::Node Node;
784
    typedef typename Graph::NodeIt NodeIt;
772
    typedef typename GR::Node Node;
773
    typedef typename GR::NodeIt NodeIt;
785 774

	
786 775
  protected:
... ...
@@ -901,8 +890,8 @@
901 890
    template <typename V>
902 891
    class NodeMap : public GR::template NodeMap<V> {
892
      typedef typename GR::template NodeMap<V> Parent;
893

	
903 894
    public:
904 895

	
905
      typedef typename GR::template NodeMap<V> Parent;
906

	
907 896
      explicit NodeMap(const SmartArcSetBase<GR>& arcset)
908 897
        : Parent(*arcset._graph) { }
... ...
@@ -957,14 +946,11 @@
957 946
  template <typename GR>
958 947
  class SmartArcSet : public ArcSetExtender<SmartArcSetBase<GR> > {
948
    typedef ArcSetExtender<SmartArcSetBase<GR> > Parent;
959 949

	
960 950
  public:
961 951

	
962
    typedef ArcSetExtender<SmartArcSetBase<GR> > Parent;
963

	
964 952
    typedef typename Parent::Node Node;
965 953
    typedef typename Parent::Arc Arc;
966 954

	
967
    typedef GR Graph;
968

	
969 955
  protected:
970 956

	
... ...
@@ -984,7 +970,7 @@
984 970

	
985 971
    class NodesImpl : public NodesImplBase {
986
    public:
987 972
      typedef NodesImplBase Parent;
988 973

	
974
    public:
989 975
      NodesImpl(const GR& graph, SmartArcSet& arcset)
990 976
        : Parent(graph), _arcset(arcset) {}
... ...
@@ -1063,5 +1049,4 @@
1063 1049
  public:
1064 1050

	
1065
    typedef GR Graph;
1066 1051
    typedef typename GR::Node Node;
1067 1052
    typedef typename GR::NodeIt NodeIt;
... ...
@@ -1250,8 +1235,8 @@
1250 1235
    template <typename V>
1251 1236
    class NodeMap : public GR::template NodeMap<V> {
1237
      typedef typename GR::template NodeMap<V> Parent;
1238

	
1252 1239
    public:
1253 1240

	
1254
      typedef typename GR::template NodeMap<V> Parent;
1255

	
1256 1241
      explicit NodeMap(const SmartEdgeSetBase<GR>& arcset)
1257 1242
        : Parent(*arcset._graph) { }
... ...
@@ -1305,15 +1290,12 @@
1305 1290
  template <typename GR>
1306 1291
  class SmartEdgeSet : public EdgeSetExtender<SmartEdgeSetBase<GR> > {
1292
    typedef EdgeSetExtender<SmartEdgeSetBase<GR> > Parent;
1307 1293

	
1308 1294
  public:
1309 1295

	
1310
    typedef EdgeSetExtender<SmartEdgeSetBase<GR> > Parent;
1311

	
1312 1296
    typedef typename Parent::Node Node;
1313 1297
    typedef typename Parent::Arc Arc;
1314 1298
    typedef typename Parent::Edge Edge;
1315 1299

	
1316
    typedef GR Graph;
1317

	
1318 1300
  protected:
1319 1301

	
... ...
@@ -1332,7 +1314,7 @@
1332 1314

	
1333 1315
    class NodesImpl : public NodesImplBase {
1334
    public:
1335 1316
      typedef NodesImplBase Parent;
1336 1317

	
1318
    public:
1337 1319
      NodesImpl(const GR& graph, SmartEdgeSet& arcset)
1338 1320
        : Parent(graph), _arcset(arcset) {}
Ignore white space 6 line context
... ...
@@ -32,5 +32,5 @@
32 32
  public:
33 33

	
34
    typedef FullDigraphBase Graph;
34
    typedef FullDigraphBase Digraph;
35 35

	
36 36
    class Node;
... ...
@@ -170,8 +170,8 @@
170 170
  /// \sa FullGraph
171 171
  class FullDigraph : public ExtendedFullDigraphBase {
172
    typedef ExtendedFullDigraphBase Parent;
173

	
172 174
  public:
173 175

	
174
    typedef ExtendedFullDigraphBase Parent;
175

	
176 176
    /// \brief Constructor
177 177
    FullDigraph() { construct(0); }
... ...
@@ -227,6 +227,4 @@
227 227

	
228 228
  class FullGraphBase {
229
    int _node_num;
230
    int _edge_num;
231 229
  public:
232 230

	
... ...
@@ -239,4 +237,7 @@
239 237
  protected:
240 238

	
239
    int _node_num;
240
    int _edge_num;
241

	
241 242
    FullGraphBase() {}
242 243

	
... ...
@@ -538,8 +539,8 @@
538 539
  /// \sa FullDigraph
539 540
  class FullGraph : public ExtendedFullGraphBase {
541
    typedef ExtendedFullGraphBase Parent;
542

	
540 543
  public:
541 544

	
542
    typedef ExtendedFullGraphBase Parent;
543

	
544 545
    /// \brief Constructor
545 546
    FullGraph() { construct(0); }
Ignore white space 6 line context
... ...
@@ -70,4 +70,5 @@
70 70
{
71 71
  typedef GR Graph;
72
  typedef GR Digraph;
72 73
  typedef typename Graph::Node Node;
73 74
  typedef typename Graph::NodeIt NodeIt;
... ...
@@ -242,4 +243,5 @@
242 243

	
243 244
  typedef typename T::Graph Graph;
245
  typedef typename T::Digraph Digraph;
244 246
  typedef typename Graph::Node Node;
245 247
  typedef typename Graph::NodeIt NodeIt;
Ignore white space 6 line context
... ...
@@ -500,8 +500,8 @@
500 500
  /// "Graph concept".
501 501
  class GridGraph : public ExtendedGridGraphBase {
502
    typedef ExtendedGridGraphBase Parent;
503

	
502 504
  public:
503 505

	
504
    typedef ExtendedGridGraphBase Parent;
505

	
506 506
    /// \brief Map to get the indices of the nodes as dim2::Point<int>.
507 507
    ///
Ignore white space 6 line context
... ...
@@ -295,8 +295,8 @@
295 295
  /// "Graph concept".
296 296
  class HypercubeGraph : public ExtendedHypercubeGraphBase {
297
    typedef ExtendedHypercubeGraphBase Parent;
298

	
297 299
  public:
298 300

	
299
    typedef ExtendedHypercubeGraphBase Parent;
300

	
301 301
    /// \brief Constructs a hypercube graph with \c dim dimensions.
302 302
    ///
Ignore white space 6 line context
... ...
@@ -324,4 +324,6 @@
324 324

	
325 325
  class ListDigraph : public ExtendedListDigraphBase {
326
    typedef ExtendedListDigraphBase Parent;
327

	
326 328
  private:
327 329
    ///ListDigraph is \e not copy constructible. Use copyDigraph() instead.
... ...
@@ -338,6 +340,4 @@
338 340
  public:
339 341

	
340
    typedef ExtendedListDigraphBase Parent;
341

	
342 342
    /// Constructor
343 343

	
... ...
@@ -794,5 +794,5 @@
794 794
  public:
795 795

	
796
    typedef ListGraphBase Digraph;
796
    typedef ListGraphBase Graph;
797 797

	
798 798
    class Node;
... ...
@@ -1177,4 +1177,6 @@
1177 1177

	
1178 1178
  class ListGraph : public ExtendedListGraphBase {
1179
    typedef ExtendedListGraphBase Parent;
1180

	
1179 1181
  private:
1180 1182
    ///ListGraph is \e not copy constructible. Use copyGraph() instead.
... ...
@@ -1196,6 +1198,4 @@
1196 1198
    ListGraph() {}
1197 1199

	
1198
    typedef ExtendedListGraphBase Parent;
1199

	
1200 1200
    typedef Parent::OutArcIt IncEdgeIt;
1201 1201

	
Ignore white space 6 line context
... ...
@@ -1839,4 +1839,5 @@
1839 1839
    /// The graph type of IdMap.
1840 1840
    typedef GR Graph;
1841
    typedef GR Digraph;
1841 1842
    /// The key type of IdMap (\c Node, \c Arc or \c Edge).
1842 1843
    typedef K Item;
... ...
@@ -1930,4 +1931,5 @@
1930 1931
    /// The graph type of CrossRefMap.
1931 1932
    typedef GR Graph;
1933
    typedef GR Digraph;
1932 1934
    /// The key type of CrossRefMap (\c Node, \c Arc or \c Edge).
1933 1935
    typedef K Item;
... ...
@@ -2133,4 +2135,5 @@
2133 2135
    /// The graph type of RangeIdMap.
2134 2136
    typedef GR Graph;
2137
    typedef GR Digraph;
2135 2138
    /// The key type of RangeIdMap (\c Node, \c Arc or \c Edge).
2136 2139
    typedef K Item;
... ...
@@ -2495,5 +2498,6 @@
2495 2498
  public:
2496 2499
    
2497
    /// The digraph type
2500
    /// The graph type of InDegMap
2501
    typedef GR Graph;
2498 2502
    typedef GR Digraph;
2499 2503
    /// The key type
... ...
@@ -2624,5 +2628,6 @@
2624 2628
  public:
2625 2629

	
2626
    /// The digraph type
2630
    /// The graph type of OutDegMap
2631
    typedef GR Graph;
2627 2632
    typedef GR Digraph;
2628 2633
    /// The key type
Ignore white space 6 line context
... ...
@@ -56,5 +56,5 @@
56 56
  public:
57 57

	
58
    typedef SmartDigraphBase Graph;
58
    typedef SmartDigraphBase Digraph;
59 59

	
60 60
    class Node;
... ...
@@ -196,6 +196,4 @@
196 196
  ///\sa concepts::Digraph.
197 197
  class SmartDigraph : public ExtendedSmartDigraphBase {
198
  public:
199

	
200 198
    typedef ExtendedSmartDigraphBase Parent;
201 199

	
... ...
@@ -421,5 +419,5 @@
421 419
  public:
422 420

	
423
    typedef SmartGraphBase Digraph;
421
    typedef SmartGraphBase Graph;
424 422

	
425 423
    class Node;
... ...
@@ -632,4 +630,6 @@
632 630
  /// \sa concepts::Graph.
633 631
  class SmartGraph : public ExtendedSmartGraphBase {
632
    typedef ExtendedSmartGraphBase Parent;
633

	
634 634
  private:
635 635

	
... ...
@@ -649,6 +649,4 @@
649 649
  public:
650 650

	
651
    typedef ExtendedSmartGraphBase Parent;
652

	
653 651
    /// Constructor
654 652

	
0 comments (0 inline)