RTP Audio System
2.0.0
|
00001 // ########################################################################## 00002 // #### #### 00003 // #### RTP Audio Server Project #### 00004 // #### ============================ #### 00005 // #### #### 00006 // #### QAudioMixer #### 00007 // #### #### 00008 // #### Copyright (C) 1999-2012 by Thomas Dreibholz #### 00009 // #### #### 00010 // #### Contact: #### 00011 // #### EMail: dreibh@iem.uni-due.de #### 00012 // #### WWW: https://www.nntb.no/~dreibh/rtpaudio #### 00013 // #### #### 00014 // #### ---------------------------------------------------------------- #### 00015 // #### #### 00016 // #### This program is free software: you can redistribute it and/or #### 00017 // #### modify it under the terms of the GNU General Public License as #### 00018 // #### published by the Free Software Foundation, either version 3 of #### 00019 // #### the License, or (at your option) any later version. #### 00020 // #### #### 00021 // #### This program is distributed in the hope that it will be useful, #### 00022 // #### but WITHOUT ANY WARRANTY; without even the implied warranty of #### 00023 // #### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #### 00024 // #### GNU General Public License for more details. #### 00025 // #### #### 00026 // #### You should have received a copy of the GNU General Public #### 00027 // #### License along with this program. If not, see #### 00028 // #### <http://www.gnu.org/licenses/>. #### 00029 // #### #### 00030 // ########################################################################## 00031 // $Id: qaudiomixer.h 1330 2011-12-23 22:29:42Z dreibh $ 00032 00033 00034 #ifndef QAUDIOMIXER_H 00035 #define QAUDIOMIXER_H 00036 00037 00038 #include "tdsystem.h" 00039 #include "audiomixer.h" 00040 00041 00042 #include <qapplication.h> 00043 #include <qlayout.h> 00044 #include <qpushbutton.h> 00045 #include <qlabel.h> 00046 #include <qslider.h> 00047 #include <qgroupbox.h> 00048 #include <qmainwindow.h> 00049 00050 00058 class QAudioMixer : public QMainWindow 00059 { 00060 // ====== Constructor/Destructor ========================================= 00061 Q_OBJECT 00062 public: 00069 QAudioMixer(AudioMixer* mixer, 00070 QWidget* parent = NULL); 00071 00075 ~QAudioMixer(); 00076 00077 00078 // ====== Qt slots ======================================================= 00079 public slots: 00083 void balance(int value); 00084 00088 void volume(int value); 00089 00093 void updateVolumeFromDevice(); 00094 00098 void centerBalance(); 00099 00103 void mute(); 00104 00105 00106 // ====== Qt signals ===================================================== 00107 signals: 00111 void closeAudioMixer(); 00112 00113 00114 // ====== Private data =================================================== 00115 private: 00116 void closeEvent(QCloseEvent* event); 00117 void setVolumeOnDevice(); 00118 void updateText(const card8 left, const card8 right); 00119 00120 00121 integer VolumeSetting; 00122 integer BalanceSetting; 00123 00124 AudioMixer* Mixer; 00125 QPushButton* Mute; 00126 QSlider* Balance; 00127 QSlider* Volume; 00128 QLabel* Values; 00129 }; 00130 00131 00132 #endif