|
ADC Home > Reference Library > Reference > Darwin > Kernel Framework Reference
|
IOFWAddressSpace.h |
| Includes: |
This header contains the classes that describe addresses in the local node that are accessable to other nodes via firewire asynchronous read/write/lock requests.
FWReadCallback |
Callback called when a read request packet is received for a 'virtual' firewire address.
typedef UInt32 ( *FWReadCallback)( void *refcon, UInt16 nodeID, IOFWSpeed &speed, FWAddress addr, UInt32 len, IOMemoryDescriptor **buf, IOByteCount *offset, IOFWRequestRefCon requestRefcon);
nodeIDis the node originating the request
speedis the FireWire speed of the request, update it if you need to control the speed of the reply, otherwise the response will be the same speed.
addris the address the device is requesting to read from
lenis the number of bytes to read
bufcontains the packet data
offseton return points to the offset into *buf of the packet data
requestRefconrefcon to pass back if sending a delayed response. Also can be queried for extra info about the request
return: kFWResponsePending = -1, Pseudo response, real response sent later. kFWResponseComplete = 0, OK! kFWResponseConflictError = 4, Resource conflict, may retry kFWResponseDataError = 5, Data not available kFWResponseTypeError = 6, Operation not supported kFWResponseAddressError = 7 Address not valid in target device A return of kFWResponsePending should be followed at some later time by a call to IOFireWireController::asyncReadResponse
FWWriteCallback |
Callback called when a write request packet is received for a 'virtual' firewire address.
typedef UInt32 ( *FWWriteCallback)( void *refcon, UInt16 nodeID, IOFWSpeed &speed, FWAddress addr, UInt32 len, const void *buf, IOFWRequestRefCon requestRefcon);
deviceis the node originating the request
speedis the FireWire speed of the request, update it if you need to control the speed of the reply, otherwise the response will be the same speed.
addris the address the device is requesting to write to
lenis the number of bytes to write
bufcontains the packet data
requestRefconrefcon Can be queried for extra info about the request, using IOFireWireController::isLockRequest(), isQuadRequest()
return: kFWResponseComplete = 0, OK kFWResponseConflictError = 4, Resource conflict, may retry kFWResponseDataError = 5, Data not available kFWResponseTypeError = 6, Operation not supported kFWResponseAddressError = 7 Address not valid in target device
ExpansionData |
struct ExpansionData { };
This structure will be used to expand the capablilties of the class in the future.
reserved |
ExpansionData * reserved;
Reserved for future use. (Internal use only)
|
Last Updated: 2008-12-19