AppleUSBComposite.h [plain text]
#ifndef _IOKIT_APPLEUSBCOMPOSITE_H
#define _IOKIT_APPLEUSBCOMPOSITE_H
#include <IOKit/IOLib.h>
#include <IOKit/IONotifier.h>
#include <IOKit/IOService.h>
#include <IOKit/usb/IOUSBBus.h>
#include <IOKit/usb/IOUSBDevice.h>
#include <IOKit/usb/USB.h>
class AppleUSBComposite : public IOService
{
OSDeclareDefaultStructors(AppleUSBComposite)
IOUSBDevice * _device;
IONotifier * _notifier;
bool _expectingClose;
bool ConfigureDevice();
IOReturn ReConfigureDevice();
static IOReturn CompositeDriverInterestHandler( void * target, void * refCon, UInt32 messageType, IOService * provider, void * messageArgument, vm_size_t argSize );
public:
virtual bool start(IOService * provider);
#if 0
virtual void stop( IOService * provider );
virtual bool finalize(IOOptionBits options);
#endif
virtual IOReturn message( UInt32 type, IOService * provider, void * argument = 0 );
virtual bool willTerminate( IOService * provider, IOOptionBits options );
virtual bool didTerminate( IOService * provider, IOOptionBits options, bool * defer );
#if 0
virtual bool requestTerminate( IOService * provider, IOOptionBits options );
virtual bool terminate( IOOptionBits options = 0 );
virtual void free( void );
virtual bool terminateClient( IOService * client, IOOptionBits options );
#endif
};
#endif _IOKIT_APPLEUSBCOMPOSITE_H