PCMETHOD_ITEM 구조체(portcls.h)

PCMETHOD_ITEM 구조는 필터, 핀 또는 노드에서 지원하는 메서드를 설명합니다.

구문

typedef struct {
  const GUID          *Set;
  ULONG               Id;
  ULONG               Flags;
  PCPFNMETHOD_HANDLER Handler;
} PCMETHOD_ITEM, *PPCMETHOD_ITEM;

멤버

Set

메서드 집합을 지정합니다. 이 멤버는 메서드 집합을 고유하게 식별하는 GUID에 대한 포인터입니다.

Id

메서드 ID를 지정합니다. 이 멤버는 메서드 집합의 메서드 항목을 식별합니다. 메서드 집합에 n 개 항목이 포함된 경우 유효한 메서드 ID는 0에서 n-1 범위의 정수입니다.

Flags

메서드에서 사용하는 매개 변수 전달 및 메모리 액세스의 형식을 지정합니다. 이 멤버는 다음 표에 있는 플래그 비트 중 하나 이상의 비트 OR로 설정할 수 있습니다.

플래그 비트 의미
PCMETHOD_ITEM_FLAG_MODIFY 메서드에서 읽고 매개 변수 버퍼에 씁니다.
PCMETHOD_ITEM_FLAG_NONE 메서드는 매개 변수 버퍼를 사용하지 않습니다.
PCMETHOD_ITEM_FLAG_READ 메서드는 매개 변수 버퍼에서 읽습니다.
PCMETHOD_ITEM_FLAG_SOURCE 메서드는 메모리 액세스를 시도하기 전에 메모리 페이지를 검색하고 잠가줍니다.
PCMETHOD_ITEM_FLAG_WRITE 메서드는 매개 변수 버퍼에 씁니다.

Handler

메서드 처리기 루틴에 대한 포인터입니다. 이 멤버는 다음과 같이 정의된 PCPFNMETHOD_HANDLER 형식의 함수 포인터입니다.

  typedef NTSTATUS (*PCPFNMETHOD_HANDLER)
  (
      IN PPCMETHOD_REQUEST  MethodRequest
  );

처리기 루틴을 호출할 때 호출자는 PCMETHOD_REQUEST 형식의 구조에 대한 포인터인 단일 호출 매개 변수를 전달합니다.

설명

WDM 오디오 하위 시스템은 현재 필터 인스턴스 또는 핀 인스턴스에 대한 메서드를 지원하지 않습니다. 이 제한은 노드의 메서드에 대한 지원도 배제합니다.

PCAUTOMATION_TABLE 구조체에는 PCMETHOD_ITEM 구조체 배열에 대한 포인터가 포함되어 있습니다.

요구 사항

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

추가 정보

PCMETHOD_REQUEST