IOUSBCompositeDriver.h [plain text]
#ifndef _IOKIT_IOUSBCompositeDriver_H
#define _IOKIT_IOUSBCompositeDriver_H
#include <libkern/OSByteOrder.h>
#include <IOKit/IOLib.h>
#include <IOKit/IONotifier.h>
#include <IOKit/IOService.h>
#include <IOKit/IOMessage.h>
#include <IOKit/usb/IOUSBBus.h>
#include <IOKit/usb/IOUSBDevice.h>
#include <IOKit/usb/IOUSBInterface.h>
#include <IOKit/usb/IOUSBLog.h>
#include <IOKit/usb/USB.h>
class IOUSBCompositeDriver : public IOService
{
OSDeclareDefaultStructors(IOUSBCompositeDriver)
IOUSBDevice * fDevice;
IONotifier * fNotifier;
bool fExpectingClose;
UInt8 fConfigValue;
UInt8 fConfigbmAttributes;
struct IOUSBCompositeDriverExpansionData
{
};
IOUSBCompositeDriverExpansionData * fIOUSBCompositeExpansionData;
static IOReturn CompositeDriverInterestHandler( void * target, void * refCon, UInt32 messageType, IOService * provider, void * messageArgument, vm_size_t argSize );
public:
virtual bool start(IOService * provider);
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 );
virtual bool ConfigureDevice();
virtual IOReturn ReConfigureDevice();
virtual IOReturn SetConfiguration(UInt8 configValue, bool startInterfaceMatching=true);
bool GetExpectingClose() { return fExpectingClose; }
UInt8 GetConfigValue() { return fConfigValue; }
UInt8 GetConfigbmAttributes() { return fConfigbmAttributes; }
IONotifier * GetNotifier() { return fNotifier; }
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 0);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 1);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 2);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 3);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 4);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 5);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 6);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 7);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 8);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 9);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 10);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 11);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 12);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 13);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 14);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 15);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 16);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 17);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 18);
OSMetaClassDeclareReservedUnused(IOUSBCompositeDriver, 19);
};
#endif _IOKIT_IOUSBCompositeDriver_H