|
dxd - dynax driver framework 2.6.0d167
cross platform open source driver development framework
|
stream user mapping More...
#include <dxd_stream.h>
Inheritance diagram for dxd::multichannel::stream< channel_t >::umap< stream_t >:
Collaboration diagram for dxd::multichannel::stream< channel_t >::umap< stream_t >:Classes | |
| class | channel |
Public Member Functions | |
| void | free () |
| os_result | initialize (::IOMemoryDescriptor *iokit_memory_descriptor, size_t offset=0) |
| IOKit kernel map initializer. | |
| template<typename bus_t > | |
| os_result | initialize (unsigned int iosize, unsigned int channels, dx::stream::channel::opened< channel_t > &opened, const dx::stream::channel::open< bus_t > &open) |
| kernel streaming channel buffer creator | |
| operator const vm_t * () const | |
| operator const::IOMemoryMap * () const | |
| operator vm_t * () const | |
| vm_t * | operator-> () |
| const vm_t * | operator-> () const |
| operator to use mapping like pointer | |
| operator::IOMemoryMap * () | |
| template<typename reference_t > | |
| int | release (reference_t &reference) |
| void | retain () |
| size_t | size () const |
| kernel mapping size | |
| os_result | start () |
| os_result | stop (bool force=false) |
| void | trace_outs () const |
| umap (client &client, const dx::os_event &os_event, stream_t *&stream) | |
| ~umap () | |
Public Attributes | ||
| struct { | ||
| uint64_t * channel_map | ||
| channel_t ** out [2] | ||
| } | cache | |
| dxd::multichannel::stream::umap::channel * | channel [2] | |
| kernel out streaming channel double buffers | ||
| dxd::map< dx::user, dx::stream::channel::control > | control | |
| dxd::abstract::event & | reference | |
| atomic< int > | references {} | |
| os_result | status =not_initialized | |
| status of mapping object | ||
Protected Attributes | |
| vm_t * | _vm =nullptr |
| kernel virtual address mapping | |
| ::IOMemoryMap * | iokit_memory_map =nullptr |
| atomic< item_t * > | next =nullptr |
| stream_t *& | stream |
| auto nulling reference | |
stream user mapping
|
inline |
|
inline |
Here is the call graph for this function:
|
inline |
detach from stream out channel array
remove channel array: in: removes user mapping from stream owned channel in buffers out: remove channel array: removes channel buffer and mappings
detach from stream owned channel in buffers
de-allocate channel map;
clear channel traces
Here is the call graph for this function:
|
inlineinherited |
IOKit kernel map initializer.
map<kernel> maps an IOMemoryDescriptor (typically cast of a dxd::memory or buffer class) into the kernel address space.
https://developer.apple.com/library/content/qa/qa1197/_index.html
Allows re-initialization.
Checks buffer object,
maps the buffer into the kernel (will fail if offset is given)
and obtains a kernel virtual address (apply offset here instead).
| iokit_memory_descriptor | IOMemoryDescriptor to be mapped into the kernel address space |
| offset | offset into memory descriptor to create mapping |
Here is the call graph for this function:
|
inline |
kernel streaming channel buffer creator
| channels | stream channels |
Here is the call graph for this function:
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
operator to use mapping like pointer
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Here is the caller graph for this function:
|
inlineinherited |
kernel mapping size
|
inlineinherited |
Here is the call graph for this function:
|
inlineinherited |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
|
protectedinherited |
kernel virtual address mapping
| struct { ... } dxd::multichannel::stream< channel_t >::umap< stream_t >::cache |
| dxd::multichannel::stream::umap::channel* dxd::multichannel::stream< channel_t >::umap< stream_t >::channel[2] |
kernel out streaming channel double buffers
| uint64_t* dxd::multichannel::stream< channel_t >::umap< stream_t >::channel_map |
| dxd::map<dx::user,dx::stream::channel::control> dxd::multichannel::stream< channel_t >::umap< stream_t >::control |
|
protectedinherited |
|
protectedinherited |
| channel_t** dxd::multichannel::stream< channel_t >::umap< stream_t >::out[2] |
|
inherited |
|
inherited |
|
inherited |
status of mapping object
|
protectedinherited |
auto nulling reference
| (c) copyright 2009 dynamic acoustics e.U. | generated on Tue Oct 28 2025 |