42 #ifndef QTCONCURRENT_MAP_H
43 #define QTCONCURRENT_MAP_H
47 #ifndef QT_NO_CONCURRENT
74 ReduceFunction
function,
80 ReduceFunction
function,
83 void blockingMap(Sequence &sequence, MapFunction
function);
84 void blockingMap(Iterator begin, Iterator
end, MapFunction
function);
94 ReduceFunction
function,
100 ReduceFunction
function,
110 template <
typename Sequence,
typename MapFunctor>
117 template <
typename Iterator,
typename MapFunctor>
124 template <
typename ResultType,
typename Sequence,
typename MapFunctor,
typename ReduceFunctor>
127 ReduceFunctor reduce,
130 return startMappedReduced<typename QtPrivate::MapResultType<void, MapFunctor>::ResultType, ResultType>
137 template <
typename Sequence,
typename MapFunctor,
typename ReduceFunctor>
140 ReduceFunctor reduce,
151 template <
typename ResultType,
typename Iterator,
typename MapFunctor,
typename ReduceFunctor>
155 ReduceFunctor reduce,
158 return startMappedReduced<typename QtPrivate::MapResultType<void, MapFunctor>::ResultType, ResultType>
165 template <
typename Iterator,
typename MapFunctor,
typename ReduceFunctor>
169 ReduceFunctor reduce,
180 template <
typename Sequence,
typename MapFunctor>
187 template <
typename Iterator,
typename MapFunctor>
194 template <
typename Sequence,
typename MapFunctor>
201 template <
typename Iterator,
typename MapFunctor>
208 template <
typename ResultType,
typename Sequence,
typename MapFunctor,
typename ReduceFunctor>
211 ReduceFunctor reduce,
214 return QtConcurrent::startMappedReduced<typename QtPrivate::MapResultType<void, MapFunctor>::ResultType, ResultType>
222 template <
typename MapFunctor,
typename ReduceFunctor,
typename Sequence>
225 ReduceFunctor reduce,
237 template <
typename ResultType,
typename Iterator,
typename MapFunctor,
typename ReduceFunctor>
241 ReduceFunctor reduce,
244 return QtConcurrent::startMappedReduced<typename QtPrivate::MapResultType<void, MapFunctor>::ResultType, ResultType>
252 template <
typename Iterator,
typename MapFunctor,
typename ReduceFunctor>
256 ReduceFunctor reduce,
268 template <
typename OutputSequence,
typename InputSequence,
typename MapFunctor>
271 return blockingMappedReduced<OutputSequence>
278 template <
typename MapFunctor,
typename InputSequence>
282 return blockingMappedReduced<OutputSequence>
290 template <
typename Sequence,
typename Iterator,
typename MapFunctor>
293 return blockingMappedReduced<Sequence>
300 template <
typename Iterator,
typename MapFunctor>
304 return blockingMappedReduced<OutputSequence>
318 #endif // QT_NO_CONCURRENT
QFuture< typename QtPrivate::MapResultType< void, MapFunctor >::ResultType > mapped(const Sequence &sequence, MapFunctor map)
QFuture< void > map(Sequence &sequence, MapFunctor map)
OutputSequence blockingMapped(const InputSequence &sequence, MapFunctor map)
QFuture< ResultType > mappedReduced(const Sequence &sequence, MapFunctor map, ReduceFunctor reduce, ReduceOptions options=ReduceOptions(UnorderedReduce|SequentialReduce))
void blockingMap(Sequence &sequence, MapFunctor map)
#define QT_BEGIN_NAMESPACE
const T & createFunctionWrapper(const T &t)
ResultType blockingMappedReduced(const Sequence &sequence, MapFunctor map, ReduceFunctor reduce, ReduceOptions options=ReduceOptions(UnorderedReduce|SequentialReduce))
LazyResultType< MapFunctor >::Type ResultType
ThreadEngineStarter< void > startMap(Iterator begin, Iterator end, Functor functor)