#include <IOKit/IOSubMemoryDescriptor.h>
IOKit/IOSubMemoryDescriptor.h
@class IOSubMemoryDescriptor : public IOMemoryDescriptor
@abstract The IOSubMemoryDescriptor object describes a memory area made up of a portion of another IOMemoryDescriptor.
@discussion The IOSubMemoryDescriptor object represents a subrange of memory, specified as a portion of another IOMemoryDescriptor.
classIOSubMemoryDescriptor
: public IOMemoryDescriptor
| IOMemoryDescriptor * | _parent | |
| IOByteCount | _start |
APPLE_KEXT_OVERRIDE
virtual void free()virtual protectedstatic OSPtr<IOSubMemoryDescriptor> withSubRange( IOMemoryDescriptor *of, IOByteCount offset, IOByteCount length, IOOptionBits options )static
virtual bool initSubRange( IOMemoryDescriptor * parent, IOByteCount offset, IOByteCount length, IODirection withDirection )virtual
Initialize or reinitialize an IOSubMemoryDescriptor to describe
a subrange of an existing descriptor.
An IOSubMemoryDescriptor can be re-used by calling initSubRange
again on an existing instance -- note that this behavior is not
commonly supported in other IOKit classes, although it is here.
APPLE_KEXT_OVERRIDE virtual addr64_t getPhysicalSegment( IOByteCount offset, IOByteCount * length, IOOptionBits options = 0 )virtual
APPLE_KEXT_OVERRIDE virtual IOReturn prepare(IODirection forDirection = kIODirectionNone)virtual
APPLE_KEXT_OVERRIDE virtual IOReturn complete(IODirection forDirection = kIODirectionNone)virtual
APPLE_KEXT_OVERRIDE virtual IOReturn redirect(task_t safeTask, bool redirect)virtual
APPLE_KEXT_OVERRIDE virtual IOReturn setPurgeable(IOOptionBits newState, IOOptionBits * oldState)virtual
IOReturn setOwnership(task_t newOwner, int newLedgerTag, IOOptionBits newLedgerOptions)
APPLE_KEXT_OVERRIDE virtual IOMemoryMap * makeMapping( IOMemoryDescriptor * owner, task_t intoTask, IOVirtualAddress atAddress, IOOptionBits options, IOByteCount offset, IOByteCount length )virtual
support map() on kIOMemoryTypeVirtual without prepare()
APPLE_KEXT_OVERRIDE
virtual uint64_t getPreparationID(void)virtualIOReturn getPageCounts(IOByteCount * residentPageCount, IOByteCount * dirtyPageCount)
IOReturn getPageCounts( IOByteCount * residentPageCount, IOByteCount * dirtyPageCount, IOByteCount * swappedPageCount )