ACPI_EVAL_INPUT_BUFFER_COMPLEX

ACPI_EVAL_INPUT_BUFFER_COMPLEX structure

The ACPI_EVAL_INPUT_BUFFER_COMPLEX structure is used as input to an IOCTL_ACPI_EVAL_METHOD request and to an IOCTL_ACPI_ASYNC_EVAL_METHOD request. The structure supplies the name of a control method and an input array of ACPI_METHOD_ARGUMENT structures.

Syntax


typedef struct _ACPI_EVAL_INPUT_BUFFER_COMPLEX {
  ULONG                Signature;
  union {
    UCHAR MethodName[4];
    ULONG MethodNameAsUlong;
  };
  ULONG                Size;
  ULONG                ArgumentCount;
  ACPI_METHOD_ARGUMENT Argument[ANYSIZE_ARRAY];
} ACPI_EVAL_INPUT_BUFFER_COMPLEX, *PACPI_EVAL_INPUT_BUFFER_COMPLEX;

Members

Signature

The signature of a complex input buffer, which must be set to ACPI_EVAL_INPUT_BUFFER_COMPLEX_SIGNATURE.

MethodName

A four-element ASCII character array that contains the name of the method. For example, 'ABCD.'

MethodNameAsUlong

A value of type ULONG that contains the name of the method in the format (ULONG) ('DCBA'), where the method name is the four-element ASCII character array 'ABCD.'

Size

The number of bytes that the Argument array contains.

ArgumentCount

The number of variable-length ACPI_METHOD_ARGUMENT structures that the Argument array contains. The Argument array can hold a maximum of seven argument structures.

Argument

An array of ACPI_METHOD_ARGUMENT structures.

Remarks

If a device supports a control method named 'ABCD' that takes an array of arguments as input, a driver for the device can evaluate the method by sending an IOCTL_ACPI_EVAL_METHOD request or an IOCTL_ACPI_ASYNC_EVAL_METHOD request to the device and setting the members of the input ACPI_EVAL_INPUT_BUFFER_COMPLEX structure as follows:

  • Set Signature to ACPI_EVAL_INPUT_BUFFER_COMPLEX_SIGNATURE.

  • Set MethodName to 'ABCD' or MethodNameAsUlong to (ULONG)('DCBA').

  • Set Size to the number of bytes in the Argument array.

  • Set Argument count to the number of arguments in the Argument array.

  • Set Argument to the array of ACPI_METHOD_ARGUMENT structures.

For more information about how to use this structure, see Evaluating ACPI Control Methods.

Requirements

Version

Windows 2000 and later versions of Windows.

Header

Acpiioct.h (include Acpiioctl.h)

See also

ACPI_METHOD_ARGUMENT
IOCTL_ACPI_ASYNC_EVAL_METHOD
IOCTL_ACPI_EVAL_METHOD

 

 

Send comments about this topic to Microsoft

Show:
© 2016 Microsoft