#define _IOMULTIMEMORYDESCRIPTOR_H
#include <IOKit/IOMemoryDescriptor.h>
+#include <libkern/c++/OSPtr.h>
/*! @class IOMultiMemoryDescriptor : public IOMemoryDescriptor
* @abstract The IOMultiMemoryDescriptor object describes a memory area made up of several other IOMemoryDescriptors.
* @param asReference If false, the IOMultiMemoryDescriptor object will make a copy of the descriptors array, otherwise, the array will be used in situ, avoiding an extra allocation.
* @result The created IOMultiMemoryDescriptor on success, to be released by the caller, or zero on failure. */
- static IOMultiMemoryDescriptor * withDescriptors(
+ static OSPtr<IOMultiMemoryDescriptor> withDescriptors(
IOMemoryDescriptor ** descriptors,
UInt32 withCount,
IODirection withDirection,
virtual IOReturn setPurgeable(IOOptionBits newState, IOOptionBits * oldState) APPLE_KEXT_OVERRIDE;
+ IOReturn setOwnership(task_t newOwner, int newLedgerTag, IOOptionBits newOptions);
+
/*! @function getPageCounts
* @abstract Retrieve the number of resident and/or dirty pages encompassed by an IOMemoryDescriptor.
* @discussion This method returns the number of resident and/or dirty pages encompassed by an IOMemoryDescriptor.