DirectShow DirectShow 레퍼런스 인터페이스 IMediaEvent GetEvent   [목차열람] [주소복사] [슬롯비우기]
IMediaEvent::GetEvent
 
Microsoft DirectX 9.0

IMediaEvent::GetEvent

GetEvent 메서드는, 다음의 이벤트 통지를 이벤트 큐로부터 얻어온다.

구문

HRESULT GetEvent(
  long *lEventCode,
  long *lParam1,
  long *lParam2,
  long msTimeout
);

파라미터

lEventCode

[out] 이벤트 코드를 받는 변수의 포인터.

lParam1

[out] 제 1 이벤트 인수를 받는 변수의 포인터.

lParam2

[out] 제 2 이벤트 인수를 받는 변수의 포인터.

msTimeout

[in] 타임 아웃 시간 (밀리 세컨드 단위). 이벤트가 도착할 때까지 동작을 정지하려면 , INFINITE 를 사용한다.

반환값

HRESULT 값을 돌려준다. 가능한 값은 다음의 일람대로이다.

설명
S_OK 성공.
E_ABORT 타임 아웃에 의한 마감 시간.

주의

큐에 이벤트가 없는 경우, 이 메서드는 이벤트가 도착할 때까지 최대 msTimeout 밀리 세컨드간 대기한다. thread는,GetEvent 로 대기중은 메시지를 처리할 수 없기 때문에, INFINITE 의 타임 아웃 간격은 사용하지 않는 것. Windows 메시지를 처리하는 thread로부터 GetEvent 를 호출하는 경우는, 사용자 입력에의 응답에 지장이 없게, 가능한 한 짧은 대기 시간을 지정하는 것.

GetEvent 를 호출한 다음에,IMediaEvent::FreeEventParams 메서드를 호출해 이벤트 인수에 할당한 모든 리소스를 릴리즈 하는 것.

통지 코드 및 인수값의 일람에 대해서는, 「이벤트 통지 코드」를 참조할것.

이 메서드는, 필터 그래프의 이벤트 큐로부터 이벤트를 삭제하므로, 복수의 클라이언트가 같은 그래프로부터의 이벤트를 감시하는 방법은 없다.

참조

↑TOP