23 #if !defined( BOLT_AMP_UNIQUE_H )
24 #define BOLT_AMP_UNIQUE_H
99 template<
typename ForwardIterator>
100 ForwardIterator
unique(control &ctl, ForwardIterator first, ForwardIterator last);
102 template<
typename ForwardIterator>
103 ForwardIterator
unique( ForwardIterator first, ForwardIterator last);
105 template<
typename ForwardIterator,
typename BinaryPredicate>
106 ForwardIterator
unique(control &ctl,
107 ForwardIterator first,
108 ForwardIterator last,
109 BinaryPredicate binary_pred);
111 template<
typename ForwardIterator,
typename BinaryPredicate>
112 ForwardIterator
unique(ForwardIterator first,
113 ForwardIterator last,
114 BinaryPredicate binary_pred);
116 template<
typename InputIterator,
typename OutputIterator>
117 OutputIterator unique_copy(control &ctl,
120 OutputIterator output);
122 template<
typename InputIterator,
typename OutputIterator>
123 OutputIterator unique_copy(InputIterator first,
125 OutputIterator output);
127 template<
typename InputIterator,
typename OutputIterator,
typename BinaryPredicate>
128 OutputIterator unique_copy(control &ctl,
131 OutputIterator output,
132 BinaryPredicate binary_pred);
134 template<
typename InputIterator,
typename OutputIterator,
typename BinaryPredicate>
135 OutputIterator unique_copy(InputIterator first,
137 OutputIterator output,
138 BinaryPredicate binary_pred);
147 #include <bolt/amp/detail/unique.inl>
149 #endif // AMP_UNIQUE_H