dxd - dynax driver framework 3.0.2
cross platform open source driver development framework
Loading...
Searching...
No Matches
dxd::process Class Referenceabstract

a process: launch() on a queue of its own, the event signalled on its way out More...

#include <dxd_sync_platform.h>

Inheritance diagram for dxd::process:
Collaboration diagram for dxd::process:

Public Types

enum class  priority { low = LOW_PRIORITY , realtime = LOW_REALTIME_PRIORITY , high = HIGH_PRIORITY }
 the thread priorities a driver's own thread is raised to More...

Public Member Functions

os_result prio(prioritypriority prioritypriority)
 process()
 process()
os_result run()
os_result run()

Static Public Member Functions

static unsigned int prio()

Public Attributes

os_result status

Protected Member Functions

void join()
 launch() returned: the queue drained, unless launch() itself asks
void join()
 the completion event is signalled on launch()'s way out, the thread object only once the thread left the image; the thread itself never joins
virtual os_result launch()= 0
virtual os_result launch()= 0
virtual ~process()
virtual ~process()

Detailed Description

a process: launch() on a queue of its own, the event signalled on its way out

WDK process.

A dext has no threads of its own; the queue stands for one, and waits within launch() give it up as a thread's would.

Member Enumeration Documentation

◆ priority

the thread priorities a driver's own thread is raised to

Enumerator
low 

Lowest thread priority level.

realtime 

Lowest realtime priority level.

high 

Highest thread priority level.

Constructor & Destructor Documentation

◆ ~process() [1/2]

virtual dxd::process::~process()
inlineprotectedvirtual
Here is the call graph for this function:

◆ process() [1/2]

dxd::process::process()
inline

◆ ~process() [2/2]

virtual dxd::process::~process()
inlineprotected
Here is the call graph for this function:

◆ process() [2/2]

dxd::process::process()
inline

Member Function Documentation

◆ join() [1/2]

void dxd::process::join()
inlineprotected

launch() returned: the queue drained, unless launch() itself asks

Here is the caller graph for this function:

◆ join() [2/2]

void dxd::process::join()
inlineprotected

the completion event is signalled on launch()'s way out, the thread object only once the thread left the image; the thread itself never joins

◆ launch() [1/2]

virtual os_result dxd::process::launch()
protectedpure virtual
Here is the caller graph for this function:

◆ launch() [2/2]

virtual os_result dxd::process::launch()
protectedpure virtual

◆ prio() [1/2]

unsigned int dxd::process::prio()
inlinestatic
Here is the caller graph for this function:

◆ prio() [2/2]

os_result dxd::process::prio(priority priority)
inline

◆ run() [1/2]

os_result dxd::process::run()
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ run() [2/2]

os_result dxd::process::run()
inline

<no thread will: keeps ~process() from waiting forever

Here is the call graph for this function:

Member Data Documentation

◆ status

os_result dxd::process::status

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