1.1 --- a/epoc32/include/stdapis/stlport/stl/_heap.h Tue Mar 16 16:12:26 2010 +0000
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,129 +0,0 @@
1.4 -/*
1.5 - *
1.6 - * Copyright (c) 1994
1.7 - * Hewlett-Packard Company
1.8 - *
1.9 - * Permission to use, copy, modify, distribute and sell this software
1.10 - * and its documentation for any purpose is hereby granted without fee,
1.11 - * provided that the above copyright notice appear in all copies and
1.12 - * that both that copyright notice and this permission notice appear
1.13 - * in supporting documentation. Hewlett-Packard Company makes no
1.14 - * representations about the suitability of this software for any
1.15 - * purpose. It is provided "as is" without express or implied warranty.
1.16 - *
1.17 - * Copyright (c) 1997
1.18 - * Silicon Graphics Computer Systems, Inc.
1.19 - *
1.20 - * Permission to use, copy, modify, distribute and sell this software
1.21 - * and its documentation for any purpose is hereby granted without fee,
1.22 - * provided that the above copyright notice appear in all copies and
1.23 - * that both that copyright notice and this permission notice appear
1.24 - * in supporting documentation. Silicon Graphics makes no
1.25 - * representations about the suitability of this software for any
1.26 - * purpose. It is provided "as is" without express or implied warranty.
1.27 - */
1.28 -
1.29 -/* NOTE: This is an internal header file, included by other STL headers.
1.30 - * You should not attempt to use it directly.
1.31 - */
1.32 -
1.33 -#ifndef _STLP_INTERNAL_HEAP_H
1.34 -#define _STLP_INTERNAL_HEAP_H
1.35 -
1.36 -#ifndef _STLP_CONFIG_H
1.37 -#include <stl/_config.h>
1.38 -#endif
1.39 -
1.40 -_STLP_BEGIN_NAMESPACE
1.41 -
1.42 -// Heap-manipulation functions: push_heap, pop_heap, make_heap, sort_heap.
1.43 -
1.44 -template <class _RandomAccessIterator>
1.45 -void
1.46 -push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last);
1.47 -
1.48 -
1.49 -template <class _RandomAccessIterator, class _Compare>
1.50 -void
1.51 -push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
1.52 - _Compare __comp);
1.53 -
1.54 -template <class _RandomAccessIterator, class _Distance, class _Tp>
1.55 -void
1.56 -__adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
1.57 - _Distance __len, _Tp __val);
1.58 -
1.59 -template <class _RandomAccessIterator, class _Tp, class _Distance>
1.60 -inline void
1.61 -__pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
1.62 - _RandomAccessIterator __result, _Tp __val, _Distance*)
1.63 -{
1.64 - *__result = *__first;
1.65 - __adjust_heap(__first, _Distance(0), _Distance(__last - __first), __val);
1.66 -}
1.67 -
1.68 -template <class _RandomAccessIterator>
1.69 -void pop_heap(_RandomAccessIterator __first,
1.70 - _RandomAccessIterator __last);
1.71 -
1.72 -template <class _RandomAccessIterator, class _Distance,
1.73 - class _Tp, class _Compare>
1.74 -void
1.75 -__adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
1.76 - _Distance __len, _Tp __val, _Compare __comp);
1.77 -
1.78 -template <class _RandomAccessIterator, class _Tp, class _Compare,
1.79 - class _Distance>
1.80 -inline void
1.81 -__pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
1.82 - _RandomAccessIterator __result, _Tp __val, _Compare __comp,
1.83 - _Distance*)
1.84 -{
1.85 - *__result = *__first;
1.86 - __adjust_heap(__first, _Distance(0), _Distance(__last - __first),
1.87 - __val, __comp);
1.88 -}
1.89 -
1.90 -template <class _RandomAccessIterator, class _Compare>
1.91 -void
1.92 -pop_heap(_RandomAccessIterator __first,
1.93 - _RandomAccessIterator __last, _Compare __comp);
1.94 -
1.95 -template <class _RandomAccessIterator>
1.96 -void
1.97 -make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last);
1.98 -
1.99 -template <class _RandomAccessIterator, class _Compare>
1.100 -void
1.101 -make_heap(_RandomAccessIterator __first,
1.102 - _RandomAccessIterator __last, _Compare __comp);
1.103 -
1.104 -template <class _RandomAccessIterator>
1.105 -_STLP_INLINE_LOOP
1.106 -void sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
1.107 -{
1.108 - while (__last - __first > 1)
1.109 - pop_heap(__first, __last--);
1.110 -}
1.111 -
1.112 -template <class _RandomAccessIterator, class _Compare>
1.113 -_STLP_INLINE_LOOP
1.114 -void
1.115 -sort_heap(_RandomAccessIterator __first,
1.116 - _RandomAccessIterator __last, _Compare __comp)
1.117 -{
1.118 - while (__last - __first > 1)
1.119 - pop_heap(__first, __last--, __comp);
1.120 -}
1.121 -
1.122 -_STLP_END_NAMESPACE
1.123 -
1.124 -# if !defined (_STLP_LINK_TIME_INSTANTIATION)
1.125 -# include <stl/_heap.c>
1.126 -# endif
1.127 -
1.128 -#endif /* _STLP_INTERNAL_HEAP_H */
1.129 -
1.130 -// Local Variables:
1.131 -// mode:C++
1.132 -// End: