stream.h File Reference
Public interface implementation of the stream class as defined by the SYCL 1.2 specification. More...
#include "SYCL/backend.h"
#include "SYCL/base.h"
#include "SYCL/half_type.h"
#include "SYCL/id.h"
#include "SYCL/index_array.h"
#include "SYCL/multi_pointer.h"
#include "SYCL/predefines.h"
#include "SYCL/range.h"
#include "SYCL/storage_mem.h"
#include "SYCL/stream_args.h"
#include "SYCL/vec.h"
#include "SYCL/vec_swizzles_impl.h"
#include <cstddef>
#include <cstdint>
#include <iosfwd>
#include <memory>
#include <system_error>
#include <type_traits>
#include "computecpp_export.h"
Go to the source code of this file.
Classes | |
class | cl::sycl::item< dimensions, with_offset > |
The cl::sycl::item object is a container for all information about a work item. More... | |
class | cl::sycl::group< Dimensions > |
The cl::sycl::group object is a container for all information about a work group. More... | |
class | cl::sycl::h_item< dimensions > |
Identifies an instance of a parallel_for_work_item function object executing at each point in a local range passed to a parallel_for_work_item call. More... | |
class | cl::sycl::nd_item< dimensions > |
The cl::sycl::nd_item object is a container for all information about a work-item. More... | |
class | cl::sycl::multi_ptr< dataType, asp > |
multi_ptr, generic pointer class. More... | |
class | cl::sycl::precision_manipulator |
Class that encapsulates a precision stream manipulator. More... | |
class | cl::sycl::stream |
Class that encapsulates a buffer that can be passed to the device and streamed to. More... | |
struct | cl::sycl::stream_vec< kVecPart, kEnabled, elementT, kDimensions > |
Template struct that contains a function call operator that streams a vec object to a stream object. More... | |
struct | cl::sycl::stream_vec< 2, true, elementT, kDimensions > |
Specialization of stream_vec for kVecPart = 2 and kEnabled = true. More... | |
struct | cl::sycl::stream_vec< 3, true, elementT, kDimensions > |
Specialization of stream_vec for kVecPart = 3 and kEnabled = true. More... | |
struct | cl::sycl::stream_vec< 4, true, elementT, kDimensions > |
Specialization of stream_vec for kVecPart = 4 and kEnabled = true. More... | |
struct | cl::sycl::stream_vec< 8, true, elementT, kDimensions > |
Specialization of stream_vec for kVecPart = 8 and kEnabled = true. More... | |
struct | cl::sycl::stream_vec< 16, true, elementT, kDimensions > |
Specialization of stream_vec for kVecPart = 16 and kEnabled = true. More... | |
struct | std::hash< cl::sycl::stream > |
provides a specialization for std::hash for the buffer class. More... | |
Namespaces | |
cl | |
deduce_type_t takes an arbitrary type and attempts to map it to a cl::sycl::cl_type . | |
cl::sycl | |
Enumerations | |
enum | cl::sycl::stream_manipulator { cl::sycl::stream_manipulator::endl = 0, cl::sycl::stream_manipulator::scientific = 1, cl::sycl::stream_manipulator::hex = 2, cl::sycl::stream_manipulator::oct = 3, cl::sycl::stream_manipulator::showbase = 4, cl::sycl::stream_manipulator::showpos = 5, cl::sycl::stream_manipulator::dec = 6, cl::sycl::stream_manipulator::noshowbase = 7, cl::sycl::stream_manipulator::noshowpos = 8, cl::sycl::stream_manipulator::fixed = 9, cl::sycl::stream_manipulator::hexfloat = 10, cl::sycl::stream_manipulator::defaultfloat = 11, cl::sycl::stream_manipulator::flush = 12 } |
Enum class that enumerates the different stream manipulators. More... | |
Functions | |
precision_manipulator | cl::sycl::setprecision (int precision) |
Inline function that constructs a precision_manipulator object, used in conjunction with stream operators. More... | |
detail::width_manipulator | cl::sycl::setw (const int width) |
Creates a stream manipulator for setting the stream width. More... | |
COMPUTECPP_EXPORT std::ostream & | cl::sycl::operator<< (std::ostream &out, const stream &rhs) |
Stream operator that streams a stream object to an ostream. More... | |
template<typename valueT > | |
void | cl::sycl::append_hexidecimal (const stream &os, const valueT &value) |
Template function that appends a hexadecimal value to a stream object. More... | |
template<typename valueT > | |
int | cl::sycl::append_integral (const stream &os, const valueT &value, bool useManipulators=true) |
Template function that appends a integral value to a stream object. More... | |
template<typename valueT > | |
void | cl::sycl::append_floating_point (const stream &os, const valueT &value) |
Template function that appends a floating point value to a stream object. More... | |
void | cl::sycl::append_string (const stream &os, const char *value) |
Inline function that appends a string value to a stream object. More... | |
void | cl::sycl::append_type_string (const stream &os, char *typeStr, int numChars, int dimensions=0) |
Appends a string representation of a type to the stream. More... | |
void | cl::sycl::append_char (const stream &os, const char &value) |
Inline function that appends a char value to the a object. More... | |
void | cl::sycl::append_bool (const stream &os, const bool &value) |
Inline function that appends a bool value to the a object. More... | |
void | cl::sycl::append_index_array (const stream &os, const detail::index_array &value, int numElements) |
Appends an index_array object to the stream. More... | |
template<typename pointerT > | |
const stream & | cl::sycl::stream_value (const stream &os, pointerT *rhs) |
Template function that streams a pointer value to a stream object. More... | |
template<typename dataType , cl::sycl::access::address_space asp> | |
const stream & | cl::sycl::stream_value (const stream &os, const multi_ptr< dataType, asp > &rhs) |
Streams a multi_ptr object into a stream. More... | |
template<class dataType , COMPUTECPP_ENABLE_IF(dataType,(std::is_integral< dataType >::value)) > | |
const stream & | cl::sycl::stream_value (const stream &os, dataType rhs) |
Streams an integral type into a stream. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const half &rhs) |
Streams a half value to a stream object. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const float &rhs) |
Inline function that streams a float value to a stream object. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const double &rhs) |
Inline function that streams a double value to a stream object. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const bool &rhs) |
Inline function that streams a bool value to a stream object. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const char &rhs) |
Inline function that streams a const char & value to a stream object. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const char *rhs) |
Inline function that streams a const char * value to a stream object. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const stream_manipulator &rhs) |
Inline function that streams a manipulator to a stream object, applying the appropriate action. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const precision_manipulator &rhs) |
Inline function that streams a precision manipulator to a stream object, applying the precision value. More... | |
const stream & | cl::sycl::stream_value (const stream &os, const detail::width_manipulator &rhs) |
Sets the width used for streaming data to the value specified by rhs. More... | |
template<int dimensions> | |
const stream & | cl::sycl::stream_value (const stream &os, const id< dimensions > &rhs, char *typeStr=nullptr) |
Streams an id object into a stream object. More... | |
template<int dimensions> | |
const stream & | cl::sycl::stream_value (const stream &os, const range< dimensions > &rhs, char *typeStr=nullptr) |
Streams a range object into a stream object. More... | |
template<int dimensions, bool with_offset> | |
const stream & | cl::sycl::stream_value (const stream &os, const item< dimensions, with_offset > &rhs, char *typeStr=nullptr) |
Streams an item object into a stream object. More... | |
template<typename valueT > | |
const stream & | cl::sycl::operator<< (const stream &os, valueT rhs) |
Template stream operator that streams a value to a stream object. More... | |
template<typename elementT , int kDimensions> | |
const stream & | cl::sycl::operator<< (const stream &os, const vec< elementT, kDimensions > rhs) |
Template stream operator that streams a vec object to a stream object. More... | |
template<typename elementT , int kDimensions, int... swizzleIndexes> | |
const stream & | cl::sycl::operator<< (const stream &os, const swizzled_vec< elementT, kDimensions, swizzleIndexes... > rhs) |
Streams a swizzled_vec object to a stream object. More... | |
Variables | |
const stream_manipulator | cl::sycl::scientific = stream_manipulator::scientific |
Const value defined to the scientific stream manipulator, used in conjunction with stream operators. More... | |
const stream_manipulator | cl::sycl::dec = stream_manipulator::dec |
Stream manipulator for displaying numbers in base 10. More... | |
const stream_manipulator | cl::sycl::hex = stream_manipulator::hex |
Const value defined to the hex stream manipulator, used in conjunction with stream operators. More... | |
const stream_manipulator | cl::sycl::oct = stream_manipulator::oct |
Const value defined to the oct stream manipulator, used in conjunction with stream operators. More... | |
const stream_manipulator | cl::sycl::showbase = stream_manipulator::showbase |
Const value defined to the showbase stream manipulator, used in conjunction with stream operators. More... | |
const stream_manipulator | cl::sycl::noshowbase = stream_manipulator::noshowbase |
Stream manipulator for reverting showbase. More... | |
const stream_manipulator | cl::sycl::showpos = stream_manipulator::showpos |
Const value defined to the showpos stream manipulator, used in conjunction with stream operators. More... | |
const stream_manipulator | cl::sycl::noshowpos = stream_manipulator::noshowpos |
Stream manipulator for reverting showpos. More... | |
const stream_manipulator | cl::sycl::endl = stream_manipulator::endl |
Const value defined to the endl stream manipulator, used in conjunction with stream operators. More... | |
const stream_manipulator | cl::sycl::fixed = stream_manipulator::fixed |
Stream manipulator that forces floating point numbers to be displayed using fixed precision. More... | |
const stream_manipulator | cl::sycl::hexfloat = stream_manipulator::hexfloat |
Stream manipulator that displays floating point numbers in base 16. More... | |
const stream_manipulator | cl::sycl::defaultfloat = stream_manipulator::defaultfloat |
Stream manipulator that reverts the display of floating point numbers back to the default representation. More... | |
const stream_manipulator | cl::sycl::flush = stream_manipulator::flush |
Stream manipulator that flushes the current stream buffer. More... | |
Detailed Description
Public interface implementation of the stream class as defined by the SYCL 1.2 specification.
Definition in file stream.h.