www.pudn.com > usb2303.rar > Usb2303Device.h
// Usb2303Device.h
//
// Generated by DriverWizard version DriverStudio 3.1.0 (Build 1722)
// Requires Compuware's DriverWorks classes
//
#ifndef __Usb2303Device_h__
#define __Usb2303Device_h__
class Usb2303Device : public KPnpDevice
{
// Constructors
public:
SAFE_DESTRUCTORS;
Usb2303Device(PDEVICE_OBJECT Pdo, ULONG Unit);
~Usb2303Device();
// Member Functions
public:
void GetStringDescriptors(void);
DEVMEMBER_DISPATCHERS
virtual NTSTATUS OnStartDevice(KIrp I);
virtual NTSTATUS OnStopDevice(KIrp I);
virtual NTSTATUS OnRemoveDevice(KIrp I);
virtual NTSTATUS DefaultPnp(KIrp I);
virtual NTSTATUS DefaultPower(KIrp I);
virtual NTSTATUS OnDevicePowerUp(KIrp I);
virtual NTSTATUS OnDeviceSleep(KIrp I);
NTSTATUS USB2303_IOCTL_Test_Handler(KIrp I);
#ifdef _COMMENT_ONLY
// The following member functions are actually defined by the
// a DEVMEMBER_xxx or MEMBER_xxx macro (such as DEVMEMBER_DISPATCHERS).
// The macro __COMMENT_ONLY never gets defined. These comment-only
// definitions simply allow easy navigation to the functions within
// the Developer Studio using the class browser.
virtual NTSTATUS CleanUp(KIrp I); // COMMENT_ONLY
virtual NTSTATUS Create(KIrp I); // COMMENT_ONLY
virtual NTSTATUS Close(KIrp I); // COMMENT_ONLY
virtual NTSTATUS DeviceControl(KIrp I); // COMMENT_ONLY
virtual NTSTATUS SystemControl(KIrp I); // COMMENT_ONLY
virtual NTSTATUS Read(KIrp I); // COMMENT_ONLY
virtual NTSTATUS Write(KIrp I); // COMMENT_ONLY
#endif
// Member Data
protected:
// Unit number for this device (0-9)
ULONG m_Unit;
KUsbLowerDevice m_Lower;
USB_CONFIGURATION_DESCRIPTOR m_config ;
KUsbInterface m_Interface;
// Pipe for USB endpoint 1 IN (address 0x81)
KUsbPipe m_Endpoint1IN;
// Pipe for USB endpoint 2 OUT (address 0x2)
KUsbPipe m_Endpoint2OUT;
// Pipe for USB endpoint 3 IN (address 0x83)
KUsbPipe m_Endpoint3IN;
};
#define NUM_STRING_DESCRIPTORS 4
#endif