ADC Home > Reference Library > Reference > Darwin > Kernel Framework Reference
|
IOFWAddressSpace |
Inherits from: | |
Declared In: |
Address space is ready for handling requests.
Add a trusted node.
returns number of bytes starting at addr in this space
Address space request handler is disabled.
A method for processing a lock request.
An abstract method for processing an address space read request
An abstract method for processing an address space write request
Checks this address space intersects with the given address range. Currently only supports IOFWPsuedoAddressSpaces.
Checks if an address space wants exclusive control of its address range
returns true if the node is added as a trusted node
Remove all trusted nodes.
Remove a trusted node.
Sets if this address space requires exclusive control of its address range. Exclusivity should be set before an address space is activated.
activate |
Address space is ready for handling requests.
public
virtual IOReturn activate();
IOReturn
addTrustedNode |
Add a trusted node.
public
inline void addTrustedNode( IOFireWireDevice *device )
device
object pointing to a FireWire node on the bus.
none
contains |
returns number of bytes starting at addr in this space
public
virtual UInt32 contains( FWAddress addr);
0 if it doesn't contain the address
deactivate |
Address space request handler is disabled.
public
virtual void deactivate();
none
doLock |
A method for processing a lock request.
public
virtual UInt32 doLock( UInt16 nodeID, IOFWSpeed &speed, FWAddress addr, UInt32 inlen, const UInt32 *newVal, UInt32 &outLen, UInt32 *oldVal, UInt32 extType, IOFWRequestRefCon refcon);
nodeID
FireWire Lock request for nodeID.
speed
at this 'speed'.
addr
with FireWire address 'addr'.
inlen
'inlen' bytes to use.
newVal
new value to write at 'addr' location .
outLen
'outLen' bytes for result.
oldVal
old value read from 'addr' location.
extType
Type like kFWExtendedTCodeCompareSwap.
refcon
Can be queried for extra info about the request.
UIn32 returns kFWResponseComplete on success
doRead |
An abstract method for processing an address space read request
public
virtual UInt32 doRead( UInt16 nodeID, IOFWSpeed &speed, FWAddress addr, UInt32 len, IOMemoryDescriptor **buf, IOByteCount *offset, IOFWRequestRefCon refcon) = 0;
nodeID
FireWire Read from nodeID.
speed
at this 'speed'.
addr
with FireWire address 'addr'.
len
read 'len' bytes from nodeID.
buf
points to a memory descriptor containing the packet data.
offset
start from this 'offset' in 'buf'.
refcon
Can be queried for extra info about the request.
UIn32 returns kFWResponseComplete on success
doWrite |
An abstract method for processing an address space write request
public
virtual UInt32 doWrite( UInt16 nodeID, IOFWSpeed &speed, FWAddress addr, UInt32 len, const void *buf, IOFWRequestRefCon refcon) = 0;
nodeID
FireWire Write to nodeID.
speed
at this 'speed'.
addr
with FireWire address 'addr'.
len
write 'len' bytes to nodeID.
buf
obtain bytes from location given by 'buf'.
refcon
Can be queried for extra info about the request.
UIn32 returns kFWResponseComplete on success
intersects |
Checks this address space intersects with the given address range. Currently only supports IOFWPsuedoAddressSpaces.
public
inline bool intersects( IOFWAddressSpace *space )
space
An address space to compare against
True if the address spaces intersect false otherwise
isExclusive |
Checks if an address space wants exclusive control of its address range
public
inline bool isExclusive( void )
True if the address space is marked exclusive false otherwise
isTrustedNode |
returns true if the node is added as a trusted node
public
inline bool isTrustedNode( UInt16 nodeID )
nodeID
is the nodeID to verify whether its trusted.
false if nodeID is not trusted
removeAllTrustedNodes |
Remove all trusted nodes.
public
inline void removeAllTrustedNodes( void )
none
removeTrustedNode |
Remove a trusted node.
public
inline void removeTrustedNode( IOFireWireDevice *device )
device
object pointing to a FireWire node on the bus.
none
setExclusive |
Sets if this address space requires exclusive control of its address range. Exclusivity should be set before an address space is activated.
public
inline void setExclusive( bool exclusive )
exclusive
True if address space should be exclusive, false otherwise
none
ExpansionData |
protected
struct ExpansionData { IOFWAddressSpaceAux *fAuxiliary; };
This structure will be used to expand the capablilties of the class in the future.
fIOFWAddressSpaceExpansion |
protected
ExpansionData * fIOFWAddressSpaceExpansion;
Reserved for future use. (Internal use only)
reserved |
protected
ExpansionData * fIOFWAddressSpaceExpansion;
Reserved for future use. (Internal use only)
|
Last Updated: 2008-12-19