다음을 통해 공유


PCPIN_DESCRIPTOR 구조체(portcls.h)

PCPIN_DESCRIPTOR 구조체는 핀 팩터리를 설명합니다.

구문

typedef struct {
  ULONG                    MaxGlobalInstanceCount;
  ULONG                    MaxFilterInstanceCount;
  ULONG                    MinFilterInstanceCount;
  const PCAUTOMATION_TABLE *AutomationTable;
  KSPIN_DESCRIPTOR         KsPinDescriptor;
} PCPIN_DESCRIPTOR, *PPCPIN_DESCRIPTOR;

멤버

MaxGlobalInstanceCount

이 핀 유형을 인스턴스화할 수 있는 전역 최대 횟수를 지정합니다. 전역 최대값은 어댑터 드라이버가 필터의 모든 인스턴스에서 지원할 수 있는 핀 인스턴스 수를 계산합니다. 개수를 0으로 설정하여 핀을 인스턴스화할 수 없음을 나타낼 수 있습니다. ULONG(-1) 값은 핀을 횟수에 따라 인스턴스화할 수 있음을 나타냅니다. 다른 값은 핀을 인스턴스화할 수 있는 특정 횟수를 나타냅니다.

MaxFilterInstanceCount

필터의 단일 instance 핀을 인스턴스화할 수 있는 최대 횟수를 지정합니다. 개수를 0으로 설정하여 핀을 인스턴스화할 수 없음을 나타낼 수 있습니다. ULONG(-1) 값은 핀을 횟수에 따라 인스턴스화할 수 있음을 나타냅니다. 다른 값은 핀을 인스턴스화할 수 있는 특정 횟수를 나타냅니다.

MinFilterInstanceCount

필터의 instance 핀을 인스턴스화해야 하는 최소 횟수를 지정합니다. 이 멤버는 필터가 작동하기 위해 존재해야 하는 핀 인스턴스 수에 대한 명확한 하한입니다.

AutomationTable

자동화 테이블에 대한 포인터입니다. 이 멤버는 PCAUTOMATION_TABLE 형식의 구조체에 대한 포인터입니다. 포인터는 자동화가 지원되지 않음을 나타내는 NULL 일 수 있습니다. 자동화 테이블은 핀 instance 속하는 속성 및 이벤트에 대한 처리기를 지정합니다.

KsPinDescriptor

핀 팩터리를 설명합니다. 이 멤버는 KSPIN_DESCRIPTOR 형식의 구조체입니다. 핀 팩터리에는 0개의 인터페이스와 0개의 매체가 있을 수 있습니다. 인터페이스 목록은 모든 경우에 무시됩니다. 표준 중간 목록은 기본적으로 디바이스 I/O(KSMEDIUM_STANDARD_DEVIO)만 포함하는 목록으로 설정됩니다.

설명

이 구조는 미니포트 드라이버가 구현하는 각 핀 팩터리를 설명하는 데 사용됩니다. 드라이버의 PCFILTER_DESCRIPTOR 구조체에는 PCPIN_DESCRIPTOR 구조체 배열에 대한 포인터 포함되어 있습니다. 배열의 요소 수는 필터의 핀 팩터리 수와 같습니다.

MaxGlobalInstanceCount, MaxFilterInstanceCountMinFilterInstanceCount 멤버는 핀의 리소스 제한 및 기능 요구 사항을 설명하는 최대 및 최소 개수입니다. 자동 초기화된 PCPIN_DESCRIPTOR 배열은 사용 가능한 핀 리소스의 정적 예상치만 표시할 수 있습니다. IPinCount::P InCount 메서드는 핀이 할당되고 해제됨에 따라 드라이버가 사용 가능한 핀 리소스 목록을 동적으로 수정할 수 있는 수단을 제공합니다.

MaxGlobalInstanceCount 값은 다음과 비슷합니다.

MaxFilterInstanceCount 값은 다음과 비슷합니다.
  • PinCount 메서드의 FilterPossible 호출 매개 변수입니다.
  • KSPROPERTY_PIN_CINSTANCES 속성 값(KSPIN_CINSTANCES 구조체의 PossibleCount 멤버)입니다.
MinFilterInstanceCount 값은 의미와 비슷합니다. 브리지 핀을 설명할 때( 오디오 필터 그래프 참조) MaxGlobalInstanceCount, MaxFilterInstanceCountMinFilterInstanceCount 를 0으로 설정하고 AutomationTableNULL로 설정합니다.

PCPIN_DESCRIPTOR 구조체를 사용하는 방법을 보여 주는 간단한 코드 예제는 필터 토폴로지 노출을 참조하세요.

자세한 내용은 공장 고정을 참조하세요.

요구 사항

요구 사항
헤더 portcls.h(Portcls.h 포함)

추가 정보

IPinCount::P Count

KSPIN_DESCRIPTOR

KSPROPERTY_PIN_CINSTANCES

KSPROPERTY_PIN_GLOBALCINSTANCES

KSPROPERTY_PIN_NECESSARYINSTANCES

PCAUTOMATION_TABLE