diff -r b9a7f4115abe -r 9273fe7d850c lemon/bucket_heap.h --- a/lemon/bucket_heap.h Thu Oct 26 13:35:35 2006 +0000 +++ b/lemon/bucket_heap.h Thu Oct 26 14:20:17 2006 +0000 @@ -41,16 +41,15 @@ /// \f$ [0..C) \f$ range a list of items. So it should be used only when /// the priorities are small. It is not intended to use as dijkstra heap. /// - /// \param _Item Type of the items to be stored. /// \param _ItemIntMap A read and writable Item int map, used internally /// to handle the cross references. /// \param minimize If the given parameter is true then the heap gives back /// the lowest priority. - template + template class BucketHeap { public: - typedef _Item Item; + typedef typename _ItemIntMap::Key Item; typedef int Prio; typedef std::pair Pair; typedef _ItemIntMap ItemIntMap; @@ -326,11 +325,11 @@ }; // class BucketHeap - template - class BucketHeap<_Item, _ItemIntMap, false> { + template + class BucketHeap<_ItemIntMap, false> { public: - typedef _Item Item; + typedef typename _ItemIntMap::Key Item; typedef int Prio; typedef std::pair Pair; typedef _ItemIntMap ItemIntMap; @@ -524,18 +523,17 @@ /// other way it does not supports erasing each elements just the /// minimal and it does not supports key increasing, decreasing. /// - /// \param _Item Type of the items to be stored. /// \param _ItemIntMap A read and writable Item int map, used internally /// to handle the cross references. /// \param minimize If the given parameter is true then the heap gives back /// the lowest priority. /// /// \sa BucketHeap - template + template class SimpleBucketHeap { public: - typedef _Item Item; + typedef typename _ItemIntMap::Key Item; typedef int Prio; typedef std::pair Pair; typedef _ItemIntMap ItemIntMap; @@ -709,11 +707,11 @@ }; // class SimpleBucketHeap - template - class SimpleBucketHeap<_Item, _ItemIntMap, false> { + template + class SimpleBucketHeap<_ItemIntMap, false> { public: - typedef _Item Item; + typedef typename _ItemIntMap::Key Item; typedef int Prio; typedef std::pair Pair; typedef _ItemIntMap ItemIntMap;