LLVM OpenMP* Runtime Library
Public Member Functions | Private Attributes | List of all members
kmp_flag< P > Class Template Reference

#include <kmp_wait_release.h>

Inherited by kmp_basic_flag< kmp_uint32, Sleepable >.

Public Member Functions

std::atomic< P > * get ()
 
void * get_void_p ()
 
void set (std::atomic< P > *new_loc)
 
flag_type get_type ()
 
load ()
 
void store (P val)
 

Private Attributes

std::atomic< P > * loc
 
flag_properties t
 

Detailed Description

template<typename P>
class kmp_flag< P >

Base class for wait/release atomic flag

Definition at line 72 of file kmp_wait_release.h.

Member Function Documentation

◆ get()

template<typename P >
std::atomic<P>* kmp_flag< P >::get ( )
inline
Returns
the pointer to the actual flag

Definition at line 84 of file kmp_wait_release.h.

◆ get_type()

template<typename P >
flag_type kmp_flag< P >::get_type ( )
inline
Returns
the flag_type

Definition at line 96 of file kmp_wait_release.h.

◆ get_void_p()

template<typename P >
void* kmp_flag< P >::get_void_p ( )
inline
Returns
void* pointer to the actual flag

Definition at line 88 of file kmp_wait_release.h.

◆ load()

template<typename P >
P kmp_flag< P >::load ( )
inline
Returns
flag value

Definition at line 100 of file kmp_wait_release.h.

◆ set()

template<typename P >
void kmp_flag< P >::set ( std::atomic< P > *  new_loc)
inline
Parameters
new_locin set loc to point at new_loc

Definition at line 92 of file kmp_wait_release.h.

◆ store()

template<typename P >
void kmp_flag< P >::store ( val)
inline
Parameters
valthe new flag value to be stored

Definition at line 104 of file kmp_wait_release.h.

Member Data Documentation

◆ loc

template<typename P >
std::atomic<P>* kmp_flag< P >::loc
private

Pointer to the flag storage that is modified by another thread

Definition at line 74 of file kmp_wait_release.h.

Referenced by kmp_flag< P >::get(), kmp_flag< P >::get_void_p(), kmp_flag< P >::load(), kmp_flag< P >::set(), and kmp_flag< P >::store().

◆ t

template<typename P >
flag_properties kmp_flag< P >::t
private

"Type" of the flag in loc

Definition at line 76 of file kmp_wait_release.h.

Referenced by kmp_flag< P >::get_type().


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