|
dxd - dynax driver framework 3.0.1d223
cross platform open source driver development framework
|
one mapping of a buffer, into the driver itself or into the client that asked for it - the scope says which address space the address belongs to More...
#include <dxd_memory.h>
Public Member Functions | |
| void | free () |
| DriverKit map free. | |
| os_result | initialize (::IOMemoryDescriptor *io_memory_descriptor, size_t offset=0, size_t size=0, uint64_t alignment=0, void *address=nullptr) |
| DriverKit map initializer. | |
| map ()=default | |
| DriverKit default mapping constructor. | |
| map (::IOMemoryDescriptor *io_memory_descriptor, size_t offset=0) | |
| DriverKit mapping constructor. | |
| 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 * () | |
| size_t | size () const |
| DriverKit mapping size. | |
| ~map () | |
Public Attributes | |
| os_result | status = not_initialized |
| status of mapping object | |
Protected Attributes | |
| vm_t * | _vm = nullptr |
| DriverKit virtual address mapping. | |
| ::IOMemoryMap * | io_memory_map = nullptr |
one mapping of a buffer, into the driver itself or into the client that asked for it - the scope says which address space the address belongs to
WDK memory mapping.
|
default |
DriverKit default mapping constructor.
|
inline |
DriverKit mapping constructor.
| io_memory_descriptor | IOMemoryDescriptor to be mapped into the kernel address space |
| offset | offset into memory descriptor to create mapping |
|
inline |
|
inline |
DriverKit map free.
Checks if DriverKit mapping already exists and
does not call unmap(): IOMemoryMap instances will unmap themselves upon free, ie. when the last client with a reference calls release. unmap() forces the IOMemoryMap to destroy the mapping it represents, regardless of the number of clients. releases the map object.
|
inline |
DriverKit map initializer.
map<kernel> maps an IOMemoryDescriptor (typically cast of a dxd::memory or buffer class) into the DriverKit address space.
kIOMemoryMapFixedAddress map at the address requested
kIOMemoryMapReadOnly create a read only mapping
kIOMemoryMapCacheModeDefault default cache mode
kIOMemoryMapCacheModeInhibit inhibited cache mode
kIOMemoryMapCacheModeCopyback copyback cache mode
kIOMemoryMapCacheModeWriteThrough write through cache mode
Allows re-initialization.
Checks buffer object,
maps the buffer into the DriverKit (will fail if offset is given)
and obtains a DriverKit virtual address (apply offset here instead).
| io_memory_descriptor | IOMemoryDescriptor to be mapped into the DriverKit address space |
| offset | offset into memory descriptor to create mapping |
| size | size of mapping |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
operator to use mapping like pointer
|
inline |
|
inline |
DriverKit mapping size.
|
protected |
DriverKit virtual address mapping.
|
protected |
| os_result dxd::map< scope_t, vm_t >::status = not_initialized |
status of mapping object
| (c) copyright 2009 dynamic acoustics e.U. | generated on |