다음을 통해 공유


CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT 구조체(gpioclx.h)

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT 구조에는 GPIO(범용 I/O) 컨트롤러의 하드웨어 특성에 대한 요청이 포함됩니다.

통사론

typedef struct _CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT {
  CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE RequestType;
  USHORT                                   Size;
  ULONG                                    Flags;
  union {
    struct {
      BANK_ID BankId;
    } BankPowerInformation;
    struct {
      WDFCMRESLIST ResourcesTranslated;
      WDFCMRESLIST ResourcesRaw;
      USHORT       TotalBanks;
    } BankInterruptBinding;
    struct {
      PVOID  InputBuffer;
      SIZE_T InputBufferSize;
      SIZE_T OutputBufferSize;
      USHORT TotalBanks;
    } ControllerFunctionBankMapping;
  };
} CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT, *PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT;

회원

RequestType

요청되는 특성 정보의 형식입니다. 이 멤버는 CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE 열거형 값으로 설정됩니다.

Size

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT 구조체의 크기(바이트)를 지정합니다.

Flags

RequestType 멤버가 나타내는 특성 요청 유형에 대한 추가 정보를 제공하는 플래그 비트 집합입니다. Flags 멤버에 대한 플래그는 현재 정의되어 있지 않습니다.

BankPowerInformation

전원 특성이 요청되는 GPIO 은행에 대한 정보를 포함하는 구조체입니다.

BankPowerInformation.BankId

GPIO 핀 뱅크의 식별자입니다. M이 GPIO 컨트롤러의 은행 수인 경우 BankId 0~M-1 범위의 정수입니다. GPIO 프레임워크 확장(GpioClx)은 이전에 CLIENT_QueryControllerBasicInformation 이벤트 콜백 함수에서 컨트롤러의 은행 수를 획득했습니다. 자세한 내용은 CLIENT_CONTROLLER_BASIC_INFORMATION주의 내용을 참조하세요.

BankInterruptBinding

GPIO 컨트롤러에 할당된 인터럽트 리소스에 대한 정보를 포함하는 구조체입니다.

BankInterruptBinding.ResourcesTranslated

플러그 앤 플레이 관리자가 디바이스에 할당한 변환된 하드웨어 리소스를 식별하는 프레임워크 리소스 목록 개체에 대한 핸들입니다.

BankInterruptBinding.ResourcesRaw

플러그 앤 플레이 관리자가 디바이스에 할당한 원시 하드웨어 리소스를 식별하는 프레임워크 리소스 목록 개체에 대한 핸들입니다.

BankInterruptBinding.TotalBanks

GPIO 컨트롤러의 은행 수입니다. 이 멤버는 호출자가 이 구조에 NULL이 아닌 포인터를 제공하는 경우 호출자가 할당한 CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT 구조에서 BankInterruptBinding.ResourceMapping 배열의 예상 길이를 나타냅니다.

ControllerFunctionBankMapping

I/O 제어 요청(IOCTL)에 대한 정보를 포함하는 구조체입니다.

ControllerFunctionBankMapping.InputBuffer

IOCTL의 입력 버퍼에 대한 포인터입니다.

ControllerFunctionBankMapping.InputBufferSize

IOCTL에 대한 입력 버퍼의 크기(바이트)입니다.

ControllerFunctionBankMapping.OutputBufferSize

IOCTL에 대한 출력 버퍼의 크기(바이트)입니다.

ControllerFunctionBankMapping.TotalBanks

GPIO 컨트롤러의 은행 수입니다. 이 멤버는 호출자가 이 구조에 NULL이 아닌 포인터를 제공하는 경우 호출자가 할당한 CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT 구조에서 ControllerFunctionBankMapping.Mapping 배열의 예상 길이를 나타냅니다.

발언

명명되지 않은 공용 구조체에는 다양한 유형의 특성 요청에 대한 입력 정보가 포함됩니다. RequestType 멤버는 이 공용 구조체의 멤버를 결정합니다. 다음 표에서는 각 유효한 RequestType 값에 해당하는 공용 구조체 멤버를 보여 줍니다.

RequestType 값 공용 구조체 구성원
QueryBankPowerInformation BankPowerInformation
QueryBankInterruptBindingInformation BankInterruptBinding
QueryControllerFunctionBankMappingInformation ControllerFunctionBankMapping

CLIENT_QuerySetControllerInformation 함수의 InputBuffer 매개 변수는 CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT 구조체에 대한 포인터입니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 8부터 지원됩니다.
헤더 gpioclx.h

참고 항목