ADC Home > Reference Library > Reference > Darwin > Kernel Framework Reference
|
IOMbufNaturalMemoryCursor |
Inherits from: | |
Declared In: |
An IOMbufMemoryCursor subclass that outputs a vector of IOPhysicalSegments in the natural byte orientation for the cpu.
The IOMbufNaturalMemoryCursor would be used when it is too difficult to implement an OutputSegmentFunc that is more appropriate for your hardware. This cursor just outputs an array of IOPhysicalSegments.
Generates a cpu natural physical scatter/gather list from a given mbuf.
Generates a cpu natural physical scatter/gather list from a given mbuf.
Factory function that creates and initializes an IOMbufNaturalMemoryCursor in one operation.
getPhysicalSegments |
Generates a cpu natural physical scatter/gather list from a given mbuf.
public
UInt32 getPhysicalSegments( mbuf_t packet, struct IOMemoryCursor::PhysicalSegment *vector, UInt32 numVectorSegments = 0);
packet
The mbuf packet.
vector
Pointer to an array of IOPhysicalSegments for the output physical scatter/gather list.
numVectorSegments
Maximum number of IOPhysicalSegments accepted.
Returns the number of segments that were filled in, or 0 if an error occurred.
getPhysicalSegmentsWithCoalesce |
Generates a cpu natural physical scatter/gather list from a given mbuf.
public
UInt32 getPhysicalSegmentsWithCoalesce( mbuf_t packet, struct IOMemoryCursor::PhysicalSegment *vector, UInt32 numVectorSegments = 0);
packet
The mbuf packet.
vector
Pointer to an array of IOPhysicalSegments for the output physical scatter/gather list.
numVectorSegments
Maximum number of IOPhysicalSegments accepted.
Returns the number of segments that were filled in, or 0 if an error occurred.
Generate a cpu natural physical scatter/gather list from a given mbuf. Coalesce mbuf chain when the number of segments in the scatter/gather list exceeds numVectorSegments.
withSpecification |
Factory function that creates and initializes an IOMbufNaturalMemoryCursor in one operation.
public
static IOMbufNaturalMemoryCursor * withSpecification( UInt32 maxSegmentSize, UInt32 maxNumSegments);
maxSegmentSize
Maximum allowable size for one segment.
maxNumSegments
Maximum number of segments.
Returns a new mbuf cursor if successfully created and initialized, 0 otherwise.
See also IOMbufMemoryCursor::initWithSpecification.
|
Last Updated: 2008-12-19