// acpiioct.h
typedef struct _ACPI_EVAL_OUTPUT_BUFFER_V1 {
ULONG Signature;
ULONG Length;
ULONG Count;
ACPI_METHOD_ARGUMENT_V1 Argument[ANYSIZE_ARRAY];
} ACPI_EVAL_OUTPUT_BUFFER_V1, ACPI_EVAL_OUTPUT_BUFFER, *PACPI_EVAL_OUTPUT_BUFFER;
View the official Windows Driver Kit DDI referenceNo description available.
The ACPI_EVAL_OUTPUT_BUFFER structure contains output arguments from an ACPI control method.
SignatureThe signature of the output buffer, which must be set to ACPI_EVAL_OUTPUT_BUFFER_SIGNATURE.
LengthThe size, in bytes, of the output buffer. This size includes the storage for the ACPI_EVAL_OUTPUT_BUFFER structure at the start of the output buffer, plus any additional storage that might be required for data in the Argument array that extends past the end of the ACPI_EVAL_OUTPUT_BUFFER structure.
CountThe number of ACPI_METHOD_ARGUMENT structures that the Argument array contains.
ArgumentAn array of ACPI_METHOD_ARGUMENT structures. For more information, see Remarks.
The following ACPI IOCTLs return output arguments from ACPI control methods in an ACPI_EVAL_OUTPUT_BUFFER structure:
IOCTL_ACPI_ASYNC_EVAL_METHOD_EX
Typically, the Argument member is the start of an array of one or more ACPI_METHOD_ARGUMENT structures. If the array contains more than one ACPI_METHOD_ARGUMENT structure, the additional structures follow the end of the ACPI_EVAL_OUTPUT_BUFFER structure. However, these ACPI_METHOD_ARGUMENT structures form a true array only if none of the DataLength members of these structures has a value greater than sizeof(ULONG). For some types of data, the DataLength value in one or more of these structures can be greater than sizeof(ULONG), in which case the offsets between adjacent ACPI_METHOD_ARGUMENT structures can vary.
For more information about how to use ACPI_EVAL_OUTPUT_BUFFER structures to retrieve output arguments from an ACPI control method, see Evaluating ACPI Control Methods.