HWOBJ

This structure describes the characteristics of serial hardware devices.

Syntax

typedef struct __HWOBJ {
PVOID pDeviceParent;
ULONG BindFlags;
DWORD dwIntID;
PVOID pReserved;
PHW_VTBL pFuncTbl;
} HWOBJ, *PHWOBJ;

Members

pDeviceParent
Pointer back to the DEVICE_LIST structure which refers to this HWOBJ in its DeviceArray member.
BindFlags
Flags controlling how the MDD layer behaves with respect to the driver’s interrupt service thread (IST):
THREAD_IN_PDD
The MDD layer does nothing; interrupt handling is done in the PDD layer.
THREAD_AT_INIT
The MDD starts the IST when the driver is initialized.
THREAD_AT_OPEN
Not supported.
dwIntID
Interrupt identifier—such as SYSINTR_SERIAL, SYSINTR_TOUCH, and so on—used with the THREAD_AT_INIT and THREAD_AT_OPEN flags,.
pReserved
Not used; set to NULL.
pFuncTbl
Pointer to an HW_VTBL structure that contains a table of function pointers for each of the serial device hardware functions, such as HWOpen, HWClearBreak, HWSetDTR, and so on. The HW_VTBL structure and the full list of functions are declared in the Serhw.h header file.

Remarks

This structure enables one serial driver MDD layer to use multiple PDD layers for hardware serial ports that have different physical behavior but identical logical behavior, such as an infrared serial port versus a standard 9-pin serial port.

This structure is declared in the Serhw.h header file.

See Also

DEVICE_LIST