dxd - dynax driver framework 3.0.2
cross platform open source driver development framework
Loading...
Searching...
No Matches
dxd::stream::mappings< stream_t > Class Template Reference

a client's mappings of the rings it opened, each by the id its memory type carries More...

#include <dxd_stream.h>

Inheritance diagram for dxd::stream::mappings< stream_t >:
Collaboration diagram for dxd::stream::mappings< stream_t >:

Public Member Functions

void clear()
 every mapping let go: the client's conclude(), ahead of its last call
void close(uint64_t id)
template<typename client_t>
const map<dx::user, dx::circular>* open(client_t& client, const dx::os_event& os_eventos_event, stream_t* stream, uint64_t id)
 the ring the id names, mapped into the client: the mapping that stands, or a new one
const map<dx::user, dx::circular>* operator ()(uint64_t type)
 the mapping a memory type names: the id it was opened with
 ~mappings()

Protected Member Functions

 operator ::IOLock*()

Protected Attributes

os_result status= not_initialized

Detailed Description

template<typename stream_t = stream>
class dxd::stream::mappings< stream_t >

a client's mappings of the rings it opened, each by the id its memory type carries

The platform hands one to its client by that type (DriverKit: CopyClientMemoryForType); a mapping holds a reference of its own on its ring until it is closed or the client concludes, whatever becomes of the ring's other holders.

Constructor & Destructor Documentation

◆ ~mappings()

template<typename stream_t= stream>
dxd::stream::mappings<stream_t>::~mappings()
inline
Here is the call graph for this function:

Member Function Documentation

◆ clear()

template<typename stream_t= stream>
void dxd::stream::mappings<stream_t>::clear()
inline

every mapping let go: the client's conclude(), ahead of its last call

Here is the caller graph for this function:

◆ close()

template<typename stream_t= stream>
void dxd::stream::mappings<stream_t>::close(uint64_t id)
inline

◆ open()

template<typename stream_t= stream>
template<typename client_t>
const map<dx::user, dx::circular>* dxd::stream::mappings<stream_t>::open(client_t& client, const dx::os_event& os_event, stream_t* stream, uint64_t id)
inline

the ring the id names, mapped into the client: the mapping that stands, or a new one

Here is the call graph for this function:

◆ operator ()()

template<typename stream_t= stream>
const map<dx::user, dx::circular>* dxd::stream::mappings<stream_t>::operator ()(uint64_t type)
inline

the mapping a memory type names: the id it was opened with

◆ operator ::IOLock *()

dxd::mutex::operator ::IOLock*()
inlineinherited

Member Data Documentation

◆ status

os_result dxd::mutex::status= not_initialized
inherited

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