Bolt  1.3
C++ template library with support for OpenCL
for_each.h
Go to the documentation of this file.
1 /***************************************************************************
2  Copyright 2012 - 2013 Advanced Micro Devices, Inc.
3 
4  Licensed under the Apache License, Version 2.0 (the "License");
5  you may not use this file except in compliance with the License.
6  You may obtain a copy of the License at
7 
8  http://www.apache.org/licenses/LICENSE-2.0
9 
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 
16 
17 ***************************************************************************/
18 
19 
20 #if !defined( BOLT_AMP_FOR_EACH_H )
21 #define BOLT_AMP_FOR_EACH_H
22 #pragma once
23 
24 
25 #include <bolt/amp/bolt.h>
26 
27 
33 namespace bolt
34 {
35 namespace amp
36 {
37 
38 
92 template<typename InputIterator , typename UnaryFunction >
93 InputIterator for_each (InputIterator first, InputIterator last, UnaryFunction f);
94 
95 
96 template<typename InputIterator , typename UnaryFunction >
97 InputIterator for_each (control &ctl, InputIterator first, InputIterator last, UnaryFunction f);
98 
99 
100 
101 
139 template<typename InputIterator , typename Size , typename UnaryFunction >
140 InputIterator for_each_n ( InputIterator first, Size n, UnaryFunction f);
141 
142 
143 
144 
145  template<typename InputIterator , typename Size , typename UnaryFunction >
146  InputIterator for_each_n ( control &ctl, InputIterator first, Size n, UnaryFunction f);
147 
148 
150  }// end of bolt::amp namespace
151  }// end of bolt namespace
152 
153 
154  #include <bolt/amp/detail/for_each.inl>
155 
156 
157  #endif