www.pudn.com > Face3DModel.zip > VideoCamera.h


// VideoCamera.h: interface for the CVideoCamera class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_VIDEOCAMERA_H__F889F22D_2821_4BF0_863C_0270F2312EC6__INCLUDED_) 
#define AFX_VIDEOCAMERA_H__F889F22D_2821_4BF0_863C_0270F2312EC6__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#include "IVideoSource.h" 
 
class CVideoCamera : public IVideoSource   
{ 
public: 
	CVideoCamera(); 
	virtual ~CVideoCamera(); 
 
    // IVideoSource interface 
    BOOL Connect(); 
    BOOL Disconnect(); 
    BOOL IsConnect(); 
    BOOL GetSize(long *pWidth, long *pHeight); 
    BOOL SetVideoWindow(HWND hWnd, long x, long y, long width, long height); 
    BOOL Run(); 
    BOOL Pause(); 
    BOOL Stop(); 
    LONG GetState(); 
    BOOL GetCurrentBuffer(long * pBufferSize, long *pBuffer); 
 
    void OnCameraVideoSource(); 
    void OnCameraVideoFormat(); 
 
protected: 
    HRESULT CVideoCamera::GetMyCaptureDevice(IBaseFilter **pF, BSTR bstrName); 
 
private: 
    CComPtr m_pSrc; 
    CComPtr m_pSample; 
    CComPtr m_pGraph; 
    CComPtr m_pBuilder; 
    CComPtr m_pSampleGrabber; 
    IVideoWindow *m_pVW; 
    BOOL m_fConnect; 
     
}; 
#endif // !defined(AFX_VIDEOCAMERA_H__F889F22D_2821_4BF0_863C_0270F2312EC6__INCLUDED_)