dxd - dynax driver framework 2.2.0d81
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::event< kernel > Class Reference

kernel triggerable user space event More...

#include <dx_sync.h>

+ Inheritance diagram for dx::event< kernel >:
+ Collaboration diagram for dx::event< kernel >:

Public Member Functions

virtual void callback ()
 
 catch (...)
 
 catch (...)
 
 catch (...)
 
 catch (...)
 
 catch (const dx::exception &__dx_exception)
 
 catch (const dx::exception &__dx_exception)
 
 catch (const dx::exception &__dx_exception)
 
 catch (const dx::exception &__dx_exception)
 
 catch (const std::exception &__std_exception)
 
 catch (const std::exception &__std_exception)
 
 catch (const std::exception &__std_exception)
 
 catch (const std::exception &__std_exception)
 
 event (bool signalled=false)
 
 operator os_event () noexcept
 
eventreset (uint64_t count=0) try
 
eventsignal (uint64_t count=1) try
 
uint64_t signalled () const
 
eventwait (bool reset=false) try
 
template<typename rep_t , typename period_t >
bool wait (const std::chrono::duration< rep_t, period_t > &timeout, bool reset=false) try
 
virtual ~event ()=default
 

Static Public Attributes

static constexpr auto scope = kernel
 

Detailed Description

kernel triggerable user space event

Constructor & Destructor Documentation

◆ ~event()

virtual dx::event< kernel >::~event ( )
virtualdefault

◆ event()

dx::event< kernel >::event ( bool signalled = false)
inlineexplicit

Member Function Documentation

◆ callback()

virtual void dx::event< kernel >::callback ( )
inlinevirtual

The default implementation is based on event<user> which is signalled when triggered via callback() from kernel. This is to achieve compatibility with Windows events. Its probably more adequate to overwrite callback() and do the work here if feasible.

◆ catch() [1/12]

dx::event< user >::catch ( ...)
inlineinherited

◆ catch() [2/12]

dx::event< user >::catch ( ...)
inlineinherited

◆ catch() [3/12]

dx::event< user >::catch ( ...)
inlineinherited

◆ catch() [4/12]

dx::event< user >::catch ( ...)
inlineinherited

◆ catch() [5/12]

dx::event< user >::catch ( const dx::exception & __dx_exception)
inlineinherited

◆ catch() [6/12]

dx::event< user >::catch ( const dx::exception & __dx_exception)
inlineinherited

◆ catch() [7/12]

dx::event< user >::catch ( const dx::exception & __dx_exception)
inlineinherited

◆ catch() [8/12]

dx::event< user >::catch ( const dx::exception & __dx_exception)
inlineinherited

◆ catch() [9/12]

dx::event< user >::catch ( const std::exception & __std_exception)
inlineinherited

◆ catch() [10/12]

dx::event< user >::catch ( const std::exception & __std_exception)
inlineinherited

◆ catch() [11/12]

dx::event< user >::catch ( const std::exception & __std_exception)
inlineinherited

◆ catch() [12/12]

dx::event< user >::catch ( const std::exception & __std_exception)
inlineinherited

◆ operator os_event()

dx::event< kernel >::operator os_event ( )
inlinenoexcept

◆ reset()

event & dx::event< user >::reset ( uint64_t count = 0)
inlineinherited

◆ signal()

event & dx::event< user >::signal ( uint64_t count = 1)
inlineinherited

◆ signalled()

uint64_t dx::event< user >::signalled ( ) const
inlineinherited

◆ wait() [1/2]

event & dx::event< user >::wait ( bool reset = false)
inlineinherited

◆ wait() [2/2]

template<typename rep_t , typename period_t >
bool dx::event< user >::wait ( const std::chrono::duration< rep_t, period_t > & timeout,
bool reset = false )
inlineinherited

wait with duration timeout returns true: signalled false: timed out

Member Data Documentation

◆ scope

static constexpr auto dx::event< kernel >::scope = kernel
staticconstexpr

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

(c) copyright 2009 dynamic acoustics e.U. generated on Fri Dec 20 2024

a closed source license may be obtained by requesting a written permission from dynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.