libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event Class Reference

#include <NTLocking.hpp>

Inheritance diagram for jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event:
[legend]
Collaboration diagram for jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event:
[legend]

Public Types

typedef lock::lockable_settable< api_lock_traits< ppd::generic_traits::MS_Win32, heavyweight_threading > > base_t
 
typedef base_t::lock_traits lock_traits
 
typedef int count_type
 
typedef lock_traits::exception_type exception_type
 
typedef base_t::atomic_state_type atomic_state_type
 
typedef atomic_state_type lock_result_type
 
typedef lock::in_process< anon_eventlock_type
 
typedef lock_type read_lock_type
 
typedef lock_type write_lock_type
 
- Public Types inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::lock::lockable_settable< lock_traits >
using lock_traits = lock_traits
 
typedef lock_traits::atomic_state_type atomic_state_type
 
- Public Types inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::lock::lockable< lock_traits >
using lock_traits = lock_traits
 
typedef lock_traits::atomic_state_type atomic_state_type
 
typedef lock_traits::timeout_type timeout_type
 
- Public Types inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::lock::settable< LkT >
using lock_traits = LkT
 
typedef lock_traits::atomic_state_type atomic_state_type
 

Public Member Functions

__stdcall anon_event (const atomic_state_type state=atom_set, const SECURITY_ATTRIBUTES *const sa=NULL) noexcept(true)
 
virtual __stdcall ~anon_event () noexcept(true)
 
const SECURITY_ATTRIBUTES *const __fastcall SA () const noexcept(true)
 
__fastcall operator handle_type () noexcept(true)
 
atomic_state_type __fastcall set () noexcept(true)
 
atomic_state_type __fastcall reset () noexcept(true)
 
lock_result_type __fastcall lock () noexcept(true)
 
lock_result_type __fastcall lock (const timeout_type period) noexcept(true)
 
lock_result_type __fastcall unlock () noexcept(true)
 
void clear () noexcept(true)
 
void decay () noexcept(true)
 
- Public Member Functions inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::lock::lockable< lock_traits >
virtual atomic_state_type __fastcall try_lock () noexcept(true) FORCE_INLINE
 

Friends

class event
 

Additional Inherited Members

- Static Public Attributes inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::lock::lockable_settable< lock_traits >
static constexpr generic_traits::memory_access_modes memory_access_mode
 
- Protected Member Functions inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::non_copyable
 non_copyable ()=default
 
 ~non_copyable ()=default
 
 non_copyable (non_copyable const &)=delete
 
 non_copyable (non_copyable &&)=delete
 
void operator= (non_copyable const &)=delete
 
void operator= (non_copyable &&)=delete
 

Detailed Description

Definition at line 149 of file NTLocking.hpp.

Member Typedef Documentation

◆ atomic_state_type

◆ base_t

◆ count_type

◆ exception_type

Definition at line 154 of file NTLocking.hpp.

◆ lock_result_type

◆ lock_traits

◆ lock_type

◆ read_lock_type

◆ write_lock_type

Constructor & Destructor Documentation

◆ anon_event()

__stdcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::anon_event ( const atomic_state_type  state = atom_set,
const SECURITY_ATTRIBUTES *const  sa = NULL 
)
inlineexplicitnoexcept

Manual reset and initially signalled.

Definition at line 164 of file NTLocking.hpp.

References anon_event().

Referenced by anon_event().

◆ ~anon_event()

virtual __stdcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::~anon_event ( )
inlinevirtualnoexcept

Definition at line 169 of file NTLocking.hpp.

Member Function Documentation

◆ clear()

void jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::clear ( )
noexcept

◆ decay()

void jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::decay ( )
inlinenoexcept

Definition at line 195 of file NTLocking.hpp.

◆ lock() [1/2]

lock_result_type __fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::lock ( )
inlinevirtualnoexcept

◆ lock() [2/2]

lock_result_type __fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::lock ( const timeout_type  period)
inlinevirtualnoexcept

◆ operator handle_type()

__fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::operator handle_type ( )
inlinenoexcept

Definition at line 176 of file NTLocking.hpp.

◆ reset()

atomic_state_type __fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::reset ( void  )
inlinevirtualnoexcept

◆ SA()

const SECURITY_ATTRIBUTES* const __fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::SA ( ) const
inlinenoexcept

Definition at line 173 of file NTLocking.hpp.

◆ set()

atomic_state_type __fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::set ( void  )
inlinevirtualnoexcept

◆ unlock()

lock_result_type __fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::NTUtils::anon_event::unlock ( )
inlinevirtualnoexcept

Friends And Related Function Documentation

◆ event

friend class event
friend

Definition at line 198 of file NTLocking.hpp.


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