- Main Page
- Namespaces
- Classes
- Files
- Directories

- File List
- File Members

# PPageAudioSwitcher.h

    00001 /*
    00002  *      Copyright (C) 2003-2005 Gabest
    00003  *      http://www.gabest.org
    00004  *
    00005  *  This Program is free software; you can redistribute it and/or modify
    00006  *  it under the terms of the GNU General Public License as published by
    00007  *  the Free Software Foundation; either version 2, or (at your option)
    00008  *  any later version.
    00009  *
    00010  *  This Program is distributed in the hope that it will be useful,
    00011  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
    00012  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    00013  *  GNU General Public License for more details.
    00014  *
    00015  *  You should have received a copy of the GNU General Public License
    00016  *  along with GNU Make; see the file COPYING.  If not, write to
    00017  *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
    00018  *  http://www.gnu.org/copyleft/gpl.html
    00019  *
    00020  */
    00021
    00022 #pragma once
    00023
    00024 #include "PPageBase.h"
    00025 #include "FloatEdit.h"
    00026 #include "..\..\filters\switcher\AudioSwitcher\AudioSwitcher.h"
    00027
    00028 // CPPageAudioSwitcher dialog
    00029
    00030 class CPPageAudioSwitcher : public CPPageBase
    00031 {
    00032         DECLARE_DYNAMIC(CPPageAudioSwitcher)
    00033
    00034 private:
    00035         CComQIPtr<IAudioSwitcherFilter> m_pAudioSwitcher;
    00036         DWORD m_pSpeakerToChannelMap[18][18];
    00037         DWORD m_dwChannelMask;
    00038
    00039 public:
    00040         CPPageAudioSwitcher(IFilterGraph* pFG);
    00041         virtual ~CPPageAudioSwitcher();
    00042
    00043 // Dialog Data
    00044         enum { IDD = IDD_PPAGEAUDIOSWITCHER };
    00045
    00046         BOOL m_fEnableAudioSwitcher;
    00047         BOOL m_fDownSampleTo441;
    00048         CButton m_fDownSampleTo441Ctrl;
    00049         BOOL m_fCustomChannelMapping;
    00050         CButton m_fCustomChannelMappingCtrl;
    00051         CEdit m_nChannelsCtrl;
    00052         int m_nChannels;
    00053         CSpinButtonCtrl m_nChannelsSpinCtrl;
    00054         CListCtrl m_list;
    00055         int m_tAudioTimeShift;
    00056         CButton m_fAudioTimeShiftCtrl;
    00057         CIntEdit m_tAudioTimeShiftCtrl;
    00058         CSpinButtonCtrl m_tAudioTimeShiftSpin;
    00059         BOOL m_fAudioTimeShift;
    00060
    00061 protected:
    00062         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
    00063         virtual BOOL OnInitDialog();
    00064         virtual BOOL OnApply();
    00065
    00066         DECLARE_MESSAGE_MAP()
    00067
    00068 public:
    00069         afx_msg void OnNMClickList1(NMHDR* pNMHDR, LRESULT* pResult);
    00070         afx_msg void OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct);
    00071         afx_msg void OnEnChangeEdit1();
    00072         afx_msg void OnUpdateAudioSwitcher(CCmdUI* pCmdUI);
    00073         afx_msg void OnUpdateChannelMapping(CCmdUI* pCmdUI);
    00074 };