Specifications

Remote Control and Receiver-Transceiver Specifications and Requirements
for Windows Media Center in Windows Operating Systems
160
Data Structure Definitions
The following section defines all of the data structures used by the CIRClass and CIR Port
drivers in their IOCTL communications.
STATUS_BUFFER_TOO_SMALL: The supplied input buffer is too small to contain an
IR_SET_WAKE_PATTERN_PARAMS structure.
STATUS_NOT_SUPPORTED: The hardware does not support programmable wake, or the
hardware does not support the specified protocol or button code.
IR_ENTER_PRIORITY_RECEIVE_PARAMS
The IR_ENTER_PRIORITY_RECEIVE_MODE_PARAMS structure is used in conjunction with
the IOCTL_IR_ENTER_ PRIORITY_RECEIVE IOCTL to put the device into Priority Receive
mode.
Syntax
typedef struct _IOCTL_IR_ENTER_PRIORITY_RECEIVE_PARAMS {
IN ULONG_PTR Receiver;
IN ULONG_PTR TimeOut;
}IOCTL_IR_ENTER_PRIORITY_RECEIVE_PARAMS, *PIOCTL_IR_ENTER_PRIORITY_RECEIVE_PARAMS;
Members
Receiver
Index of the receiver to use.
TimeOut
Timeout value, in milliseconds. Used to define the end of a sample.
Headers
For more information, see IOCTL_IR_ENTER_PRIORITY_RECEIVE.
IR_DEV_CAPS
The IR_DEV_CAPS structure is used in conjunction with the IOCTL_IR_GET_DEV_CAPS
IOCTL to retrieve capability information of the device. The IR_DEV_CAPS structure is used by
the version 1 DDI and is also known as the IR_DEV_CAPS_V1 structure. Port drivers written to
the version 2 DDI should use the IR_DEV_CAPS_V2 structure if enough buffer is presented by
the class driver. See IOCTL_IR_GET_DEV_CAPS for more information.
Syntax
typedef struct _IR_DEV_CAPS {
OUT ULONG_PTR ProtocolVersion;
OUT ULONG_PTR NumTransmitPorts;
OUT ULONG_PTR NumReceivePorts;
OUT ULONG_PTR LearningReceiverMask;
OUT ULONG_PTR DevCapsFlags;
}IR_DEV_CAPS, *PIR_DEV_CAPS;
Members
ProtocolVersion
Protocol version. If using this structure, this must be DEV_CAPS_PROTOCOL_VERSION_V1
(0x100).