# HG changeset patch
# User Akos Ladanyi <ladanyi@tmit.bme.hu>
# Date 1271337472 -3600
# Branch 1.2
# Node ID a850096345318a304d7f9af3268f6952eac831a1
# Parent e26ad33d1fbc57e91d9ec58caebe40fe2b43d298
Rename types conflicting with names in windows.h (#365)
diff --git a/lemon/adaptors.h b/lemon/adaptors.h
a
|
b
|
|
3446 | 3446 | /// |
3447 | 3447 | /// This map adaptor class adapts two node maps of the original digraph |
3448 | 3448 | /// to get a node map of the split digraph. |
3449 | | /// Its value type is inherited from the first node map type (\c IN). |
3450 | | /// \tparam IN The type of the node map for the in-nodes. |
3451 | | /// \tparam OUT The type of the node map for the out-nodes. |
3452 | | template <typename IN, typename OUT> |
| 3449 | /// Its value type is inherited from the first node map type (\c IM). |
| 3450 | /// \tparam IM The type of the node map for the in-nodes. |
| 3451 | /// \tparam OM The type of the node map for the out-nodes. |
| 3452 | template <typename IM, typename OM> |
3453 | 3453 | class CombinedNodeMap { |
3454 | 3454 | public: |
3455 | 3455 | |
3456 | 3456 | /// The key type of the map |
3457 | 3457 | typedef Node Key; |
3458 | 3458 | /// The value type of the map |
3459 | | typedef typename IN::Value Value; |
3460 | | |
3461 | | typedef typename MapTraits<IN>::ReferenceMapTag ReferenceMapTag; |
3462 | | typedef typename MapTraits<IN>::ReturnValue ReturnValue; |
3463 | | typedef typename MapTraits<IN>::ConstReturnValue ConstReturnValue; |
3464 | | typedef typename MapTraits<IN>::ReturnValue Reference; |
3465 | | typedef typename MapTraits<IN>::ConstReturnValue ConstReference; |
| 3459 | typedef typename IM::Value Value; |
| 3460 | |
| 3461 | typedef typename MapTraits<IM>::ReferenceMapTag ReferenceMapTag; |
| 3462 | typedef typename MapTraits<IM>::ReturnValue ReturnValue; |
| 3463 | typedef typename MapTraits<IM>::ConstReturnValue ConstReturnValue; |
| 3464 | typedef typename MapTraits<IM>::ReturnValue Reference; |
| 3465 | typedef typename MapTraits<IM>::ConstReturnValue ConstReference; |
3466 | 3466 | |
3467 | 3467 | /// Constructor |
3468 | | CombinedNodeMap(IN& in_map, OUT& out_map) |
| 3468 | CombinedNodeMap(IM& in_map, OM& out_map) |
3469 | 3469 | : _in_map(in_map), _out_map(out_map) {} |
3470 | 3470 | |
3471 | 3471 | /// Returns the value associated with the given key. |
… |
… |
|
3497 | 3497 | |
3498 | 3498 | private: |
3499 | 3499 | |
3500 | | IN& _in_map; |
3501 | | OUT& _out_map; |
| 3500 | IM& _in_map; |
| 3501 | OM& _out_map; |
3502 | 3502 | |
3503 | 3503 | }; |
3504 | 3504 | |
… |
… |
|
3506 | 3506 | /// \brief Returns a combined node map |
3507 | 3507 | /// |
3508 | 3508 | /// This function just returns a combined node map. |
3509 | | template <typename IN, typename OUT> |
3510 | | static CombinedNodeMap<IN, OUT> |
3511 | | combinedNodeMap(IN& in_map, OUT& out_map) { |
3512 | | return CombinedNodeMap<IN, OUT>(in_map, out_map); |
| 3509 | template <typename IM, typename OM> |
| 3510 | static CombinedNodeMap<IM, OM> |
| 3511 | combinedNodeMap(IM& in_map, OM& out_map) { |
| 3512 | return CombinedNodeMap<IM, OM>(in_map, out_map); |
3513 | 3513 | } |
3514 | 3514 | |
3515 | | template <typename IN, typename OUT> |
3516 | | static CombinedNodeMap<const IN, OUT> |
3517 | | combinedNodeMap(const IN& in_map, OUT& out_map) { |
3518 | | return CombinedNodeMap<const IN, OUT>(in_map, out_map); |
| 3515 | template <typename IM, typename OM> |
| 3516 | static CombinedNodeMap<const IM, OM> |
| 3517 | combinedNodeMap(const IM& in_map, OM& out_map) { |
| 3518 | return CombinedNodeMap<const IM, OM>(in_map, out_map); |
3519 | 3519 | } |
3520 | 3520 | |
3521 | | template <typename IN, typename OUT> |
3522 | | static CombinedNodeMap<IN, const OUT> |
3523 | | combinedNodeMap(IN& in_map, const OUT& out_map) { |
3524 | | return CombinedNodeMap<IN, const OUT>(in_map, out_map); |
| 3521 | template <typename IM, typename OM> |
| 3522 | static CombinedNodeMap<IM, const OM> |
| 3523 | combinedNodeMap(IM& in_map, const OM& out_map) { |
| 3524 | return CombinedNodeMap<IM, const OM>(in_map, out_map); |
3525 | 3525 | } |
3526 | 3526 | |
3527 | | template <typename IN, typename OUT> |
3528 | | static CombinedNodeMap<const IN, const OUT> |
3529 | | combinedNodeMap(const IN& in_map, const OUT& out_map) { |
3530 | | return CombinedNodeMap<const IN, const OUT>(in_map, out_map); |
| 3527 | template <typename IM, typename OM> |
| 3528 | static CombinedNodeMap<const IM, const OM> |
| 3529 | combinedNodeMap(const IM& in_map, const OM& out_map) { |
| 3530 | return CombinedNodeMap<const IM, const OM>(in_map, out_map); |
3531 | 3531 | } |
3532 | 3532 | |
3533 | 3533 | /// \brief Arc map combined from an arc map and a node map of the |