IOFWUserIsochChannel.h [plain text]
#import <IOKit/firewire/IOFWIsochChannel.h>
class IOFWUserIsochChannel: public IOFWIsochChannel
{
typedef IOFWIsochChannel super ;
OSDeclareDefaultStructors(IOFWUserIsochChannel)
public :
virtual bool init( IOFireWireController * control,
bool doIRM,
UInt32 packetSize,
IOFWSpeed prefSpeed ) ;
virtual IOReturn allocateChannel();
virtual IOReturn releaseChannel();
virtual IOReturn start();
virtual IOReturn stop();
IOReturn allocateChannelBegin(
IOFWSpeed speed,
UInt64 allowedChans,
UInt32 * outChannel ) { return IOFWIsochChannel::allocateChannelBegin( speed, allowedChans, outChannel ) ; }
IOReturn releaseChannelComplete() { return IOFWIsochChannel::releaseChannelComplete() ; }
IOReturn allocateListenerPorts() ;
IOReturn allocateTalkerPort() ;
static void s_exporterCleanup( IOFWUserIsochChannel * channel ) ;
inline io_user_reference_t * getUserAsyncRef() { return fAsyncRef ; }
inline void setUserAsyncRef( OSAsyncReference64 asyncRef ) { fAsyncRef = asyncRef ; }
protected:
bool fBandwidthAllocated ;
io_user_reference_t * fAsyncRef ;
public :
static IOReturn isochChannel_ForceStopHandler( void * self, IOFWIsochChannel*, UInt32 stopCondition ) ;
} ;