본문 바로가기
IT창고/DirectShow

미디어 프로그램 변수 / 함수 정의 부분..

by 창구창고 2007. 1. 23.

📑 목차

    반응형

    // MediaPlayerView.h : CMediaPlayerView 클래스의 인터페이스
    //


    #pragma once
    #include "afxcmn.h"
    #include "afxwin.h"


    class CMediaPlayerView : public CFormView
    {
    public:
     IGraphBuilder * m_pGB ; // 필터 그래프 매니져
     TCHAR   m_szFileName[MAX_PATH] ;
    #ifdef REGISTER_FILTERGRAPH
     DWORD    m_dwGraphRegister ;
    #endif

    protected: // serialization에서만 만들어집니다.
     CMediaPlayerView();
     DECLARE_DYNCREATE(CMediaPlayerView)

    public:
     enum{ IDD = IDD_MEDIAPLAYER_FORM };

    // 특성입니다.
    public:
     CMediaPlayerDoc* GetDocument() const;

    // 작업입니다.
    public:
     HWND playView;
     bool m_bFullScreenOn ;
     RECT m_rectOrgVideo ; // used to store the original video rectangle during fullscreen playback
     long m_lOrgStyle ;  // original video window style bits (before fullscreen)
        long m_lOrgStyleEx ; // original video window extended style bits (.....)
     int  m_POS;
     float m_fVolumePos; // Volume Position
     CString m_strFilePath, m_strSamiPath;  // 자막 경로

    // 재정의입니다.
    public:
     virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
    protected:
     virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 지원입니다.
     virtual void OnInitialUpdate(); // 생성 후 처음 호출되었습니다.

    // 구현입니다.
    public:
     virtual ~CMediaPlayerView();
    #ifdef _DEBUG
     virtual void AssertValid() const;
     virtual void Dump(CDumpContext& dc) const;
    #endif

    protected:

    // 생성된 메시지 맵 함수
    protected:
     DECLARE_MESSAGE_MAP()
    public:
     afx_msg void OnBnClickedBtnOpen();
    public:
     afx_msg void OnBnClickedBtnBack();
    public:
     afx_msg void OnBnClickedBtnPlay();
    public:
     afx_msg void OnBnClickedBtnStop();
    public:
     afx_msg void OnBnClickedBtnPause();
    public:
     afx_msg void OnBnClickedBtnPre();

    public:
     HRESULT OnOpenRun();
    public:
     HRESULT OnBackRun();
    public:
     HRESULT OnPlayRun();
    public:
     HRESULT OnStopRun();
    public:
     HRESULT OnPauseRun();
    public:
     HRESULT OnPreRun();
    public:
     HRESULT OnSizeRun();

    public:
     HRESULT OnTimerRun();
    public:
     HRESULT ToggleFullScreen();
     HRESULT StartFullScreen();
     HRESULT StopFullScreen();
    public:
     virtual BOOL PreTranslateMessage(MSG* pMsg);
    public:
     HRESULT OnVolume(bool bUp);
    public:
     CSliderCtrl ctrPlaySlider;
    public:
     afx_msg void OnTimer(UINT_PTR nIDEvent);
    public:
     afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
    public:
     HRESULT OnHScrollRun(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
    public:
     SYSTEMTIME playTime;
     CString strPlayTime;
    public:
     SYSTEMTIME AllTime;
     CString strAllTime;
    public:
     CSliderCtrl ctrVolumeSlider;
    public:
     CString strFileName;
    public:
     HRESULT OnHScrollVolume(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
    public:
     afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
    };

    #ifndef _DEBUG  // MediaPlayerView.cpp의 디버그 버전
    inline CMediaPlayerDoc* CMediaPlayerView::GetDocument() const
       { return reinterpret_cast<CMediaPlayerDoc*>(m_pDocument); }
    #endif

    반응형

    "이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."