값 기능 배열
값 기능 배열에는 특정 유형의 HID 보고서에 대해 최상위 컬렉션에서 지원하는 값 사용량에 대한 정보가 포함됩니다. 컬렉션의 값 기능 배열에 대한 정보는 HIDP_CAPS 구조에 포함되어 있습니다.
사용자 모드 애플리케이션 또는 커널 모드 드라이버는 다음 HIDClass 지원 루틴 중 하나를 사용하여 단추 기능 정보를 가져옵니다.
HidP_GetValueCaps 호출자가 지정한 보고서 형식에 포함된 모든 값을 설명하는 값 기능 배열을 반환합니다.
HidP_GetSpecificValueCaps 호출자가 지정한 사용 페이지, 사용량, 링크 컬렉션 및 보고서 유형에서 반환하는 값 기능 정보를 필터링합니다.
값 기능 배열에는 각각 HID 사용량 또는 사용 범위에 대한 다음 정보를 설명하는 HIDP_VALUE_CAPS 구조가 포함됩니다.
사용량 또는 사용 범위의 사용 페이지
값이 포함된 보고서의 보고서 ID입니다.
사용 ID 또는 사용 범위
사용법이 별칭이 지정된 사용법인지 여부를 나타냅니다.
사용량 또는 사용 범위를 포함하는 링크 컬렉션 에 대한 정보
값의 크기(비트) 및 보고서 수(구조체에서 설명하는 개별 값의 수)입니다.
null 값, 해당 단위 및 지수, 논리 및 물리적 범위를 포함하는 각 값의 특성
사용량 또는 사용 범위와 연결된 문자열 설명자 및 지정자에 대한 정보
HID 파서가 사용량 또는 사용량 범위를 할당하는 데이터 인덱 스에 대한 정보
일반적으로 값 기능 배열에 설명된 모든 사용량에 대해 다음 조건이 유지됩니다.
각 기능 구조는 변수 기본 항목과 연결된 사용량, 사용 범위 또는 사용량 값 배열을 나타냅니다. 배열 기본 항목은 값에 대해 지원되지 않습니다.
별칭이 지정된 사용량을 사용할 수 있습니다. 사용 범위는 별칭을 지정할 수 없습니다. 별칭이 지정된 값은 단추 기능 배열에서 함께 연결된 별칭이 지정된 단추와 동일한 방식으로 값 기능 배열에 함께 연결됩니다. 변수 주 항목의 단추 사용을 참조하세요.
HID 파서는 필요한 최소 사용량만 사용하여 각 값에 사용량을 할당합니다. 파서는 보고서 설명자에 지정된 순서대로 사용량을 할당합니다. 필요하지 않은 보고서 설명자의 사용은 삭제됩니다. 값 기능 배열에는 삭제된 사용량에 대한 정보가 포함되어 있지 않습니다.
HID 파서는 기능 배열에 설명된 각 사용량에 고유한 데이터 인덱 스를 할당합니다.
데이터 인덱스가 값에 할당되는 방법에 대한 설명은 데이터 인덱스를 참조하세요.
사용량 값 배열
사용량 값 배열은 기본 항목에 지정된 연속된 값 집합이며 모두 동일한 사용량이 할당됩니다. 이 문제는 보고서 수가 1보다 큰 기본 항목에 대해 하나의 사용량만 지정한 경우에 발생합니다.
다음 그림에서는 각각 6비트 길이의 5개의 데이터 항목을 포함하는 사용량 값 배열의 예를 보여 줍니다.
이전 예제에서 이러한 사용량 값 배열의 값 기능 구조에는 IsRange 멤버가 FALSE로 설정되고 NotRange.Usage 멤버가 17로 설정되고 ReportCount 멤버가 5로 설정되고 BitSize 멤버가 6으로 설정됩니다.
사용량에 대한 보고서 수가 1인 경우 HidP_GetUsageValue 사용하여 사용량 값을 추출합니다. 사용량의 보고서 수가 1보다 큰 경우 HidP_GetUsageValue 사용량 값 배열의 첫 번째 데이터 항목만 반환합니다. 사용량 값 배열의 모든 데이터 항목을 추출하려면 HidP_GetUsageValueArray 사용합니다.