KSCLOCK_DISPATCH 구조체(ks.h)

KSCLOCK_DISPATCH 구조에는 핀이 클록 개체를 구현하는 데 필요한 콜백이 포함되어 있습니다.

구문

typedef struct _KSCLOCK_DISPATCH {
  PFNKSPINSETTIMER       SetTimer;
  PFNKSPINCANCELTIMER    CancelTimer;
  PFNKSPINCORRELATEDTIME CorrelatedTime;
  PFNKSPINRESOLUTION     Resolution;
} KSCLOCK_DISPATCH, *PKSCLOCK_DISPATCH;

멤버

SetTimer

필요에 따라 프레젠테이션 시간을 기반으로 DPC 타이머 콜백을 생성하는 데 사용할 대체 함수에 대한 포인터를 포함합니다. 이 함수를 설정하면 이벤트 알림을 생성하기 위해 델타 기반 타이머를 현재 프레젠테이션 시간으로 설정하는 데 사용됩니다. 타이머를 설정하기 위해 대체 함수를 지정하는 경우 해당 CancelTimer 함수도 제공해야 합니다. 다음 알림 시간을 근사화하기 위해 기본 KeSetTimerEx 함수를 사용하는 경우 NULL로 설정됩니다. 이는 일반적으로 KeSetTimerEx 함수를 사용하는 경우에만 설정됩니다. 함수는 기본 함수와 동일한 특성을 가져야 합니다.

함수는 다음과 같이 프로토타입화되어야 합니다.

BOOLEAN SetTimer (IN PKSPIN Pin,
    IN PKTIMER Timer,
    IN LARGE_INTEGER DueTime,
    IN PKDPC Dpc);

이 함수의 구현에 대한 자세한 내용은 KeSetTimerEx 설명서를 참조하세요. 모든 클라이언트 구현은 비슷한 방식으로 동작해야 합니다.

CancelTimer

필요에 따라 처리 중인 타이머 콜백을 취소하는 데 사용할 대체 함수가 포함되어 있습니다. 타이머를 취소하기 위해 대체 함수를 제공하는 경우 해당 SetTimer 함수도 제공해야 합니다. 기본 KeCancelTimer 함수를 사용할 경우 NULL로 설정됩니다. 함수는 기본 함수와 동일한 특성을 가져야 합니다.

함수는 다음과 같이 프로토타입화되어야 합니다.

BOOLEAN CancelTimer (IN PKSPIN Pin,
    IN PKTIMER Timer);

이 함수의 구현에 대한 자세한 내용은 KeCancelTimer 설명서를 참조하세요. 모든 클라이언트 구현은 비슷한 방식으로 동작해야 합니다.

CorrelatedTime

현재 클록 시간과 상관 관계가 있는 시스템 시간을 원자성 작업으로 검색하는 함수에 대한 포인터입니다. 함수는 다음과 같이 프로토타입화되어야 합니다.

LONGLONG CorrelatedTime (IN PKSPIN Pin,
    OUT PLONGLONG SystemTime);

현재 클록 시간이 반환되고 현재 시스템 시간이 SystemTime에 배치되어야 합니다.

Resolution

클록의 해상도를 지정하는 함수에 대한 포인터입니다. 이는 KS 속성 KSPROPERTY_CLOCK_RESOLUTION 해당합니다. 이 함수는 100나노초 단위로 세분성을 보고해야 합니다. 자세한 내용은 KSPROPERTY_CLOCK_RESOLUTION 대한 KS 설명서를 참조하세요.

함수는 다음과 같이 프로토타입화되어야 합니다.

void Resolution (IN PKSPIN Pin,
        OUT PKSRESOLUTION Resolution);

요구 사항

요구 사항
지원되는 최소 클라이언트 Microsoft Windows XP 이상 운영 체제 및 Microsoft DirectX 8.0 이상 버전에서 사용할 수 있습니다.
머리글 ks.h(Ks.h 포함)

추가 정보

KDPC

KSPIN

KSPIN_DISPATCH

KSPROPERTY_CLOCK_RESOLUTION

KSRESOLUTION

KeSetTimerEx