DirectShow DirectShow 레퍼런스 DirectShow base class base class 레퍼런스 CBaseObject [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
CBaseObject 클래스는, Microsoft® DirectShow® 개체를 처리 하는 추상 클래스이다. Component Object Model (COM) 개체를 처리 하려면 ,CBaseObject 로부터 파생한 CUnknown 클래스를 사용한다.
DirectShow 클래스의 대부분은 CBaseObject 로부터 파생한다. 이 클래스는, 실행시에 액티브한 모든 DirectShow 개체의 수를 보관 유지해 디버그를 지원한다. 개체의 수 (카운트)는 클래스의 정적 멤버 변수에 저장 된다.
class CBaseObject
{
private:
static LONG m_cObjects; // 액티브 개체의 합계수.
/* ... */
};
디버그 빌드에서는, DLL 는 개체 카운트가 제로보다 클 때에 언로드될지 어떨지를 Assert 한다. 이것에 의해, 참조 카운트의 문제를 원인으로 하는 누수의 추적이 용이하게 된다.
CObject 생성자의 인수는 1 개로, 그것은 개체의 디버그명이다. 이 이름은 DLL 의 글로벌 테이블에 저장 된다. DbgDumpObjectRegister 함수는 DLL 내의 액티브한 개체의 리스트를 포맷 해, 그것을 디버그 출력에 송신한다.
요건
헤더 : Combase.h 로 선언해, Streams.h 를 인클루드 한다.
라이브러리 : Strmbase.lib (리테일 빌드) 또는 Strmbasd.lib (디버그 빌드).
클래스 메서드 | |
CBaseObject | 생성자 메서드. |
~CBaseObject | 소멸자 메서드. |
ObjectsActive | 액티브 개체의 카운트를 얻어온다. |