Instance Property

AllocateSendPacket

Allocate a SendPacket NuDCL and append it to the program.

Declaration

NuDCLSendPacketRef (*AllocateSendPacket)(IOFireWireLibNuDCLPoolRef self, CFMutableSetRef saveBag, UInt32 numBuffers, IOVirtualRange *buffers);

Parameters

self

The NuDCL pool to use.

saveBag

The allocated DCL can be added to a CFBag for easily setting DCL update lists. Pass a CFMutableSetRef to add the allocated DCL to a CFBag; pass NULL to ignore. SaveBag is unmodified on failure.

numBuffers

The number of virtual ranges in 'buffers'.

buffers

An array of virtual memory ranges containing the packet contents. The array is copied into the DCL.

Return Value

Returns an NuDCLSendPacketRef on success or 0 on failure.

Discussion

The SendPacket DCL sends an isochronous packet on the bus. One DCL runs per bus cycle. The isochronous header is automatically generated, but can be overriden. An update must be run to regenerate the isochronous header. The sync and tag fields of allocated DCLs default to 0, unless If SetCurrentTagAndSync has been called.

Send DCLs can be modified using other functions of IOFireWireLibNuDCLPool.

See Also

Miscellaneous

AllocateReceivePacket

Allocate a ReceivePacket NuDCL and append it to the program

AllocateReceivePacket_v

Allocate a ReceivePacket NuDCL and append it to the program

AllocateSendPacket_v

Allocate a SendPacket NuDCL and append it to the program.

AllocateSkipCycle

Allocate a SkipCycle NuDCL and append it to the program.

AppendDCLRanges

Add a memory range to the scatter gather list of a NuDCL

CountDCLRanges

Returns number of buffers for a NuDCL

FindDCLNextDCL

Get the next pointer for a NuDCL

GetDCLBranch

Get the branch pointer for a NuDCL

GetDCLCallback

Get callback for a NuDCL

GetDCLRanges

Get the scatter-gather list for a NuDCL

GetDCLs

Returns the pool's DCL program as a CFArray of NuDCLRef's.

GetDCLSize

Returns number of bytes to be transferred by a NuDCL

GetDCLSpan

Returns a virtual range spanning lowest referenced buffer address to highest

GetDCLStatusPtr

Get the status pointer for a NuDCL.

GetDCLTimeStampPtr

Get the time stamp pointer for a NuDCL.

GetProgram

Finds the first DCL in the pool not preceeded by any other DCL.

SetCurrentTagAndSync

Set current tag and sync bits

SetDCLBranch

Set the branch pointer for a NuDCL

SetDCLCallback

Set the callback for a NuDCL

SetDCLRanges

Set the scatter gather list for a NuDCL

SetDCLStatusPtr

Set the status pointer for a NuDCL

SetDCLTimeStampPtr

Set the time stamp pointer for a NuDCL

SetDCLUserHeaderPtr

Set a user specified header for a send NuDCL