DPC++ Runtime
Runtime libraries for oneAPI DPC++
sycl::_V1::detail::atomic_ref_impl< T, IsAspectAtomic64AttrUsed, DefaultOrder, DefaultScope, AddressSpace, typename > Class Template Reference

#include <sycl/atomic_ref.hpp>

Inheritance diagram for sycl::_V1::detail::atomic_ref_impl< T, IsAspectAtomic64AttrUsed, DefaultOrder, DefaultScope, AddressSpace, typename >:
Collaboration diagram for sycl::_V1::detail::atomic_ref_impl< T, IsAspectAtomic64AttrUsed, DefaultOrder, DefaultScope, AddressSpace, typename >:

Additional Inherited Members

- Public Types inherited from sycl::_V1::detail::atomic_ref_base< T, DefaultOrder, DefaultScope, AddressSpace >
using value_type = T
 
- Public Member Functions inherited from sycl::_V1::detail::atomic_ref_base< T, DefaultOrder, DefaultScope, AddressSpace >
bool is_lock_free () const noexcept
 
 atomic_ref_base (T &ref)
 
 atomic_ref_base (const atomic_ref_base &ref) noexcept
 
atomic_ref_baseoperator= (const atomic_ref_base &)=delete
 
void store (T operand, memory_order order=default_write_order, memory_scope scope=default_scope) const noexcept
 
operator= (T desired) const noexcept
 
load (memory_order order=default_read_order, memory_scope scope=default_scope) const noexcept
 
 operator T () const noexcept
 
exchange (T operand, memory_order order=default_read_modify_write_order, memory_scope scope=default_scope) const noexcept
 
bool compare_exchange_strong (T &expected, T desired, memory_order success, memory_order failure, memory_scope scope=default_scope) const noexcept
 
bool compare_exchange_strong (T &expected, T desired, memory_order order=default_read_modify_write_order, memory_scope scope=default_scope) const noexcept
 
bool compare_exchange_weak (T &expected, T desired, memory_order success, memory_order failure, memory_scope scope=default_scope) const noexcept
 
bool compare_exchange_weak (T &expected, T desired, memory_order order=default_read_modify_write_order, memory_scope scope=default_scope) const noexcept
 
- Static Public Attributes inherited from sycl::_V1::detail::atomic_ref_base< T, DefaultOrder, DefaultScope, AddressSpace >
static constexpr size_t required_alignment = sizeof(T)
 
static constexpr bool is_always_lock_free
 
static constexpr memory_order default_read_order
 
static constexpr memory_order default_write_order
 
static constexpr memory_order default_read_modify_write_order = DefaultOrder
 
static constexpr memory_scope default_scope = DefaultScope
 
- Protected Attributes inherited from sycl::_V1::detail::atomic_ref_base< T, DefaultOrder, DefaultScope, AddressSpace >
std::atomic< T > * ptr
 

Detailed Description

template<typename T, bool IsAspectAtomic64AttrUsed, memory_order DefaultOrder, memory_scope DefaultScope, access::address_space AddressSpace, typename = void>
class sycl::_V1::detail::atomic_ref_impl< T, IsAspectAtomic64AttrUsed, DefaultOrder, DefaultScope, AddressSpace, typename >

Definition at line 265 of file atomic_ref.hpp.


The documentation for this class was generated from the following file: