QGIS API Documentation 4.3.0-Master (35968c35f7e)
Loading...
Searching...
No Matches
AtomicSharedPtr< T > Class Template Reference

An atomic shared_ptr, for use in LLVM/clang builds (temporarily, until LLVM adds support for c++20 atomic shared_ptr). More...

#include <qgsthreadingutils.h>

Public Member Functions

 AtomicSharedPtr ()=default
 AtomicSharedPtr (AtomicSharedPtr &&)=delete
 AtomicSharedPtr (const AtomicSharedPtr &)=delete
 AtomicSharedPtr (T p)
 Constructor for an atomic shared pointer.
T load (std::memory_order order=std::memory_order_seq_cst) const
 Atomic load (multiple readers allowed simultaneously).
AtomicSharedPtr & operator= (AtomicSharedPtr &&)=delete
AtomicSharedPtr & operator= (const AtomicSharedPtr &)=delete
void store (T p, std::memory_order order=std::memory_order_seq_cst)
 Atomic store.

Detailed Description

template<typename T>
class AtomicSharedPtr< T >

An atomic shared_ptr, for use in LLVM/clang builds (temporarily, until LLVM adds support for c++20 atomic shared_ptr).

Since
QGIS 4.4

Definition at line 444 of file qgsthreadingutils.h.

Constructor & Destructor Documentation

◆ AtomicSharedPtr() [1/4]

template<typename T>
AtomicSharedPtr< T >::AtomicSharedPtr ( )
default

◆ AtomicSharedPtr() [2/4]

template<typename T>
AtomicSharedPtr< T >::AtomicSharedPtr ( T p)
inlineexplicit

Constructor for an atomic shared pointer.

Definition at line 450 of file qgsthreadingutils.h.

◆ AtomicSharedPtr() [3/4]

template<typename T>
AtomicSharedPtr< T >::AtomicSharedPtr ( const AtomicSharedPtr< T > & )
delete

◆ AtomicSharedPtr() [4/4]

template<typename T>
AtomicSharedPtr< T >::AtomicSharedPtr ( AtomicSharedPtr< T > && )
delete

Member Function Documentation

◆ load()

template<typename T>
T AtomicSharedPtr< T >::load ( std::memory_order order = std::memory_order_seq_cst) const
inlinenodiscard

Atomic load (multiple readers allowed simultaneously).

Definition at line 460 of file qgsthreadingutils.h.

◆ operator=() [1/2]

template<typename T>
AtomicSharedPtr & AtomicSharedPtr< T >::operator= ( AtomicSharedPtr< T > && )
delete

◆ operator=() [2/2]

template<typename T>
AtomicSharedPtr & AtomicSharedPtr< T >::operator= ( const AtomicSharedPtr< T > & )
delete

◆ store()

template<typename T>
void AtomicSharedPtr< T >::store ( T p,
std::memory_order order = std::memory_order_seq_cst )
inline

Atomic store.

Definition at line 468 of file qgsthreadingutils.h.


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