다음을 통해 공유


단추 기능 배열

단추 기능 배열에는 특정 유형의 HID 보고서에 대한 최상위 컬렉션에서 지원하는 단추 사용량에 대한 정보가 포함되어 있습니다. 컬렉션의 기능에 대한 정보는 HIDP_CAPS 구조에 포함되어 있습니다.

사용자 모드 애플리케이션 또는 커널 모드 드라이버는 다음 HIDClass 지원 루틴 중 하나를 사용하여 단추 기능 정보를 가져옵니다.

  • HidP_GetButtonCaps 지정된 보고서 형식에 포함된 모든 단추 사용을 설명하는 단추 기능 배열을 반환합니다.

  • HidP_GetSpecificButtonCaps 호출자가 지정한 사용 페이지, 사용 ID 및 링크 컬렉션에서 반환하는 단추 기능 정보를 필터링합니다.

단추 기능 배열에는 HIDP_BUTTON_CAPS 구조가 포함되며, 각 구조에는 HID 사용량 또는 사용 범위에 대한 다음 정보가 포함됩니다.

  • 사용량 또는 사용 범위의 사용 페이지

  • 단추 데이터가 포함된 보고서의 보고서 ID

  • 사용 ID 또는 사용 범위

  • 사용법이 별칭 사용법인지 표시하는 플래그입니다.

  • 사용량 또는 사용 범위를 포함하는 링크 컬렉션

  • 사용량 또는 사용 범위와 연결된 문자열 설명자 및 지정자(지정자 인덱스 항목 및 문자열 인덱스 항목 참조)

  • HID 파서가 사용량 또는 사용 범위에 할당한 데이터 인덱스

일반적으로 단추 기능 배열에서 설명하는 모든 사용량에 대해 다음 조건이 유지됩니다.

  • 각 기능 구조는 변수 주 항목 또는 배열 주 항목과 연결된 단일 사용량 또는 사용 범위를 나타냅니다.

  • 별칭이 지정된 사용법은 변수 주 항목과 함께 사용할 수 있습니다. 배열 항목과 연결된 사용법은 별칭을 지정할 수 없습니다. 사용 범위는 별칭을 지정할 수 없습니다.

  • HID 파서는 필요한 최소 사용 수만 사용하여 각 단추에 사용량을 할당합니다. 파서는 보고서 설명자에 지정된 순서대로 사용량을 할당합니다. 필요하지 않은 보고서 설명자의 사용은 삭제됩니다. 단추 기능 배열에는 삭제된 사용량에 대한 정보가 포함되어 있지 않습니다.

  • 변수 항목에 대해 지정된 사용 횟수가 항목의 단추 수보다 작으면 기능 배열에는 단추 사용량(변수 주 항목에 대한 보고서 설명자에 지정된 마지막 사용량)을 설명하는 하나의 기능 구조만 포함됩니다. 그러나 보고서 수가 1보다 큰 사용량 값에 대한 자세한 내용은 사용량 값 배열 을 참조하세요.

  • HID 파서는 기능 배열에 설명된 각 사용량에 고유한 데이터 인덱스를 할당합니다.

다음 항목에서는 단추 기능 배열에서 기능 구조를 구성하고 설정하는 방법에 대해 설명합니다.

변수 주 항목의 단추 사용

보고서 설명자에 지정된 각 사용량 또는 사용 범위 는 단추 기능 배열의 고유한 기능 구조에 의해 설명됩니다.

기능 구조의 IsAlias 멤버는 다음과 같이 n 별칭 사용 집합을 지정하는 데 사용됩니다.

  • IsAlias는 기능 배열에 추가된 첫 번째 n-1 기능 구조에서 TRUE로 설정됩니다. IsAliasn번째 기능 구조에서 FALSE로 설정됩니다. 선호되는 사용 방식은 시퀀스의 마지막 별칭 사용입니다.

애플리케이션 또는 드라이버는 이러한 시퀀스를 검사하여 별칭이 지정된 단추 사용을 결정할 수 있습니다.

다음 표에서는 별칭이 지정된 세 가지 사용에 대한 예제를 요약합니다.

보고서 설명자에서 별칭 사용 순서 기능 배열의 사용 순서 IsAlias 멤버 값
사용량 1 사용량 3 TRUE
사용량 2 사용량 2 TRUE
사용량 3 사용량 1 FALSE

사용량 및 데이터 인덱스를 상호 참조하는 방법에 대한 자세한 내용은 데이터 인덱스를 참조하세요.

배열 주 항목의 단추 사용

보고서 설명자에 지정된 단추 배열 주 항목의 각 사용량 또는 사용 범위 는 단추 기능 배열의 고유한 기능 구조에 의해 설명됩니다. 기능 구조가 기능 배열에 추가되는 순서는 주 항목에 대해 사용이 지정된 순서의 반대입니다.

HID 파서는 배열 항목과 연결된 각 사용량에 데이터 인덱 스를 보고서 설명자에 지정된 순서대로 할당합니다. 예를 들어 다음 표에서는 보고서 설명자에 지정된 사용량 집합과 기능 배열에 지정된 사용량 및 데이터 인덱스 간의 대응을 보여 줍니다. (이 표에서 n 은 파서가 배열 항목과 연결된 첫 번째 사용량에 할당하는 첫 번째 데이터 인덱스입니다.)

보고서 설명자의 사용 순서 기능 배열의 사용 순서 DataIndex 또는 DataIndexMin에서 DataIndexMax로
사용량 1 사용 범위 2 n+7에서 n+8로
사용 범위 1(사용량 4개 포함) 사용량 2 n+5
사용량 2 사용 범위 1 n+1에서 n+4로
사용 범위 2(사용량 2개 포함) 사용량 1 n