HWOBJ (Compact 2013)
3/26/2014
This structure describes the characteristics of serial devices.
Syntax
#ifdef USE_NEW_SERIAL_MODEL
typedef struct __HWOBJ {
ULONG BindFlags;
DWORD dwIntID;
PHW_VTBL pFuncTbl;
} HWOBJ, *PHWOBJ;
#else
typedef struct __HWOBJ {
PVOID pDeviceParent;
ULONG BindFlags;
DWORD dwIntID;
PVOID pReserved;
PHW_VTBL pFuncTbl;
} HWOBJ, *PHWOBJ;
#endif
Members
- pDeviceParent
Pointer back to the DEVICE_LIST structure, which refers to the HWOBJ structure in its DeviceArray member.
BindFlags
One of the following values, which control how the upper layer behaves with respect to the driver's interrupt service thread (IST).The following table shows the possible values.
Value
Description
THREAD_IN_PDD
The upper layer does nothing; interrupt handling is done in the lower layer.
THREAD_AT_INIT
The upper layer starts the interrupt service thread (IST) when the driver is initialized.
THREAD_AT_OPEN
The upper layer starts the IST when the driver opens.
- dwIntID
Interrupt identifier.
- 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 functions, such as HWOpen, HWClearBreak, HWSetDTR, and so on. HW_VTBL and the full list of functions are declared in the Serhw.h header file.
Remarks
Define USE_NEW_SERIAL_MODEL to use the updated serial driver model.
This structure enables one serial driver upper layer to use multiple lower layers for hardware serial ports that have different physical behavior, but identical logical behavior, such as a USB serial port or a standard 9-pin serial port.
Requirements
Header |
serhw.h |
See Also
Reference
Serial Port Driver Structures
DEVICE_LIST
HW_VTBL
HWOpen
HWClearBreak
HWSetDTR