DPC++ Runtime
Runtime libraries for oneAPI DPC++
multi_ptr.hpp File Reference
#include <CL/__spirv/spirv_ops.hpp>
#include <cassert>
#include <cstddef>
#include <sycl/access/access.hpp>
#include <sycl/detail/common.hpp>
#include <sycl/detail/type_traits.hpp>
Include dependency graph for multi_ptr.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  sycl::_V1::detail::LegacyPointerTypes< ElementType, Space >
 
struct  sycl::_V1::detail::LegacyPointerTypes< ElementType, access::address_space::constant_space >
 
struct  sycl::_V1::detail::LegacyReferenceTypes< ElementType, Space >
 
struct  sycl::_V1::detail::LegacyReferenceTypes< ElementType, access::address_space::constant_space >
 
class  sycl::_V1::multi_ptr< ElementType, Space, DecorateAddress >
 Provides constructors for address space qualified and non address space qualified pointers to allow interoperability between plain C++ and OpenCL C. More...
 
class  sycl::_V1::multi_ptr< const void, Space, DecorateAddress >
 Specialization of multi_ptr for const void. More...
 
class  sycl::_V1::multi_ptr< void, Space, DecorateAddress >
 
class  sycl::_V1::multi_ptr< ElementType, Space, access::decorated::legacy >
 
class  sycl::_V1::multi_ptr< void, Space, access::decorated::legacy >
 
class  sycl::_V1::multi_ptr< const void, Space, access::decorated::legacy >
 

Namespaces

 sycl
 ---— Error handling, matching OpenCL plugin semantics.
 
 sycl::_V1
 
 sycl::_V1::detail
 

Functions

template<access::address_space Space, access::decorated DecorateAddress, typename ElementType >
multi_ptr< ElementType, Space, DecorateAddress > sycl::_V1::address_space_cast (ElementType *pointer)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress = access::decorated::legacy, typename = std::enable_if<DecorateAddress == access::decorated::legacy>>
 sycl::_V1::__SYCL2020_DEPRECATED ("make_ptr is deprecated since SYCL 2020. Please use " "address_space_cast instead.") multi_ptr< ElementType
 
DecorateAddress sycl::_V1::make_ptr (typename multi_ptr< ElementType, Space, DecorateAddress >::pointer_t pointer)
 
DecorateAddress sycl::_V1::make_ptr (typename multi_ptr< ElementType, Space, DecorateAddress >::pointer pointer)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator== (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator!= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator< (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator> (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator<= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator>= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator!= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator!= (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator== (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator== (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator> (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator> (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator< (const multi_ptr< ElementType, Space, DecorateAddress > &, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator< (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator>= (const multi_ptr< ElementType, Space, DecorateAddress > &, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator>= (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator<= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator<= (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &)
 

Variables

 sycl::_V1::Space