ACPI_METHOD_ARGUMENT_V1 structure

The ACPI_METHOD_ARGUMENT structure contains the value of an input or output argument of an ACPI control method.

Syntax

typedef struct _ACPI_METHOD_ARGUMENT_V1 {
  USHORT Type;
  USHORT DataLength;
  union {
    ULONG Argument;
    UCHAR Data[ANYSIZE_ARRAY];
  } DUMMYUNIONNAME;
} ACPI_METHOD_ARGUMENT_V1, ACPI_METHOD_ARGUMENT;

Members

Type

The type of the method argument, as specified by one of the following:

ACPI_METHOD_ARGUMENT_INTEGER

Argument contains an integer value of type ULONG.

ACPI_METHOD_ARGUMENT_STRING

The Data array contains a NULL-terminated ASCII string, and DataLength supplies the number of characters in the string, including the NULL terminator.

ACPI_METHOD_ARGUMENT_BUFFER

The Data array contains custom data, and DataLength supplies the number of consecutive array elements that contain the custom data, beginning with the Data[0] element.

ACPI_METHOD_ARGUMENT_PACKAGE

The Data array contains an ACPI package descriptor and DataLength supplies the number of consecutive array elements that contain the package descriptor, beginning with the Data[0] element.

DataLength

The number of UCHAR elements in the Data array that contains the argument data.

DUMMYUNIONNAME

DUMMYUNIONNAME.Argument

An argument value of type ULONG.

DUMMYUNIONNAME.Data

An array of values of type UCHAR that contains argument data.

Remarks

An ACPI_EVAL_OUTPUT_BUFFER structure includes an Argument array of ACPI_METHOD_ARGUMENT structures. The following IOCTLs evaluate control methods and return output arguments in an ACPI_EVAL_OUTPUT_BUFFER structure:

IOCTL_ACPI_ASYNC_EVAL_METHOD

IOCTL_ACPI_ASYNC_EVAL_METHOD_EX

IOCTL_ACPI_EVAL_METHOD

IOCTL_ACPI_EVAL_METHOD_EX

The ACPI_METHOD_ARGUMENT structure is also used to supply an array of complex input arguments to a control method. The ACPI_EVAL_INPUT_BUFFER_COMPLEX and ACPI_EVAL_INPUT_BUFFER_COMPLEX_EX structures includes an Argument array of type ACPI_METHOD_ARGUMENT.

For more information about how to use ACPI_METHOD_ARGUMENT structures to supply and retrieve argument data to an ACPI control method, see Evaluating ACPI Control Methods.

Requirements

   
Minimum supported client Windows 2000 and later versions of Windows.
Header acpiioct.h (include Acpiioct.h)

See also

ACPI_EVAL_INPUT_BUFFER_COMPLEX

ACPI_EVAL_INPUT_BUFFER_COMPLEX_EX

ACPI_EVAL_OUTPUT_BUFFER