Bolt  1.3
C++ template library with support for OpenCL
Namespaces | Functions
scatter.h File Reference

scatters elements from a source range to a destination array. More...

#include "bolt/cl/device_vector.h"
#include "bolt/cl/functional.h"
#include <bolt/cl/detail/scatter.inl>

Go to the source code of this file.

Namespaces

namespace  bolt
 Defining namespace for the Bolt project.
 
namespace  bolt::cl
 Namespace containing OpenCL related data types and functions.
 

Functions

template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator >
void bolt::cl::scatter (::bolt::cl::control &ctl, InputIterator1 first, InputIterator1 last, InputIterator2 map, OutputIterator result, const std::string &user_code="")
 This version of scatter copies elements from a source range to a destination array according to a specified map. For each i in InputIterator1 in the range [first, last), scatter copies the corresponding input_first to result[ map [ i ] ].
 
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator >
void bolt::cl::scatter (InputIterator1 first, InputIterator1 last1, InputIterator2 map, OutputIterator result, const std::string &user_code="")
 
template<typename InputIterator1 , typename InputIterator2 , typename InputIterator3 , typename OutputIterator >
void bolt::cl::scatter_if (bolt::cl::control &ctl, InputIterator1 first1, InputIterator1 last1, InputIterator2 map, InputIterator3 stencil, OutputIterator result, const std::string &user_code="")
 This version of scatter_if copies elements from a source range to a destination array according to a specified map. For each i in InputIterator1 in the range [first, last), scatter_if copies the corresponding input_first to result[ map [ i ] ] if stencil[ i - first ] is true.
 
template<typename InputIterator1 , typename InputIterator2 , typename InputIterator3 , typename OutputIterator >
void bolt::cl::scatter_if (InputIterator1 first1, InputIterator1 last1, InputIterator2 map, InputIterator3 stencil, OutputIterator result, const std::string &user_code="")
 
template<typename InputIterator1 , typename InputIterator2 , typename InputIterator3 , typename OutputIterator , typename Predicate >
void bolt::cl::scatter_if (bolt::cl::control &ctl, InputIterator1 first1, InputIterator1 last1, InputIterator2 map, InputIterator3 stencil, OutputIterator result, Predicate pred, const std::string &user_code="")
 This version of scatter_if copies elements from a source range to a destination array according to a specified map. For each i in InputIterator1 in the range [first, last), scatter_if copies the corresponding input_first to result[ map [ i ] ] if pred (stencil[ i - first ]) is true.
 
template<typename InputIterator1 , typename InputIterator2 , typename InputIterator3 , typename OutputIterator , typename Predicate >
void bolt::cl::scatter_if (InputIterator1 first1, InputIterator1 last1, InputIterator2 map, InputIterator3 stencil, OutputIterator result, Predicate pred, const std::string &user_code="")
 

Detailed Description

scatters elements from a source range to a destination array.