IOFireWireIPUserClient.h [plain text]
#ifndef _IOKIT_IOFIREWIREIPUSERCLIENT_H
#define _IOKIT_IOFIREWIREIPUSERCLIENT_H
#include <IOKit/IOUserClient.h>
#include "IOFireWireIP.h"
#include "IOFireWireIPUserClientCommon.h"
class IOFireWireIPUserClient : public IOUserClient
{
OSDeclareDefaultStructors(IOFireWireIPUserClient)
protected:
static IOExternalMethod sMethods[kIOFWIPUserClientNumCommands];
bool fOpened;
bool fStarted;
task_t fTask;
IOFireWireIP *fFireWireIP;
virtual IOExternalMethod * getTargetAndMethodForIndex(IOService **target, UInt32 index);
virtual IOExternalAsyncMethod * getAsyncTargetAndMethodForIndex(IOService **target, UInt32 index);
public:
static IOFireWireIPUserClient* withTask( task_t owningTask );
virtual bool init( OSDictionary * dictionary = 0 );
virtual bool start( IOService * provider );
virtual IOReturn clientClose( void );
virtual IOReturn clientDied( void );
virtual IOReturn open( void *, void *, void *, void *, void *, void * );
virtual IOReturn openWithSessionRef( IOFireWireSessionRef sessionRef, void *, void *, void *, void *, void * );
virtual IOReturn getSessionRef( IOFireWireSessionRef * sessionRef, void *, void *, void *, void *, void * );
virtual IOReturn close( void * = 0, void * = 0, void * = 0, void * = 0, void * = 0, void * = 0);
virtual IOReturn IPCommand(UInt8 * cmd, UInt8 * response, UInt32 len, UInt32 *size);
virtual IOReturn showLcb(UInt8 * cmd, UInt8 * response, UInt32 len, UInt32 *size);
};
#endif // _IOKIT_IOFIREWIREIPUSERCLIENT_H