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 };

Generated on Tue Dec 13 14:47:00 2005 for guliverkli by  doxygen 1.4.5