annotate base/PlayParameters.h @ 434:5a13b76cd034

...
author Chris Cannam
date Wed, 02 Jul 2008 13:31:37 +0000
parents 5858cc462d0a
children 1f98e28f70c6
rev   line source
Chris@49 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@0 2
Chris@0 3 /*
Chris@52 4 Sonic Visualiser
Chris@52 5 An audio file viewer and annotation editor.
Chris@52 6 Centre for Digital Music, Queen Mary, University of London.
Chris@52 7 This file copyright 2006 Chris Cannam.
Chris@0 8
Chris@52 9 This program is free software; you can redistribute it and/or
Chris@52 10 modify it under the terms of the GNU General Public License as
Chris@52 11 published by the Free Software Foundation; either version 2 of the
Chris@52 12 License, or (at your option) any later version. See the file
Chris@52 13 COPYING included with this distribution for more information.
Chris@0 14 */
Chris@0 15
Chris@28 16 #ifndef _PLAY_PARAMETERS_H_
Chris@28 17 #define _PLAY_PARAMETERS_H_
Chris@0 18
Chris@0 19 #include <QObject>
Chris@0 20
Chris@81 21 #include "XmlExportable.h"
Chris@81 22
Chris@81 23 class PlayParameters : public QObject, public XmlExportable
Chris@0 24 {
Chris@0 25 Q_OBJECT
Chris@0 26
Chris@0 27 public:
Chris@0 28 PlayParameters() : m_playMuted(false), m_playPan(0.0), m_playGain(1.0) { }
Chris@0 29
Chris@0 30 virtual bool isPlayMuted() const { return m_playMuted; }
Chris@391 31 virtual bool isPlayAudible() const { return !m_playMuted; }
Chris@0 32 virtual float getPlayPan() const { return m_playPan; } // -1.0 -> 1.0
Chris@0 33 virtual float getPlayGain() const { return m_playGain; }
Chris@0 34
Chris@57 35 virtual QString getPlayPluginId() const { return m_playPluginId; }
Chris@57 36 virtual QString getPlayPluginConfiguration() const { return m_playPluginConfiguration; }
Chris@57 37
Chris@284 38 virtual void copyFrom(const PlayParameters *);
Chris@284 39
Chris@314 40 virtual void toXml(QTextStream &stream,
Chris@314 41 QString indent = "",
Chris@314 42 QString extraAttributes = "") const;
Chris@81 43
Chris@29 44 public slots:
Chris@29 45 virtual void setPlayMuted(bool muted);
Chris@29 46 virtual void setPlayAudible(bool nonMuted);
Chris@29 47 virtual void setPlayPan(float pan);
Chris@29 48 virtual void setPlayGain(float gain);
Chris@57 49 virtual void setPlayPluginId(QString id);
Chris@57 50 virtual void setPlayPluginConfiguration(QString configuration);
Chris@0 51
Chris@30 52 signals:
Chris@30 53 void playParametersChanged();
Chris@30 54 void playMutedChanged(bool);
Chris@30 55 void playAudibleChanged(bool);
Chris@30 56 void playPanChanged(float);
Chris@30 57 void playGainChanged(float);
Chris@57 58 void playPluginIdChanged(QString);
Chris@57 59 void playPluginConfigurationChanged(QString);
Chris@30 60
Chris@0 61 protected:
Chris@0 62 bool m_playMuted;
Chris@0 63 float m_playPan;
Chris@0 64 float m_playGain;
Chris@57 65 QString m_playPluginId;
Chris@57 66 QString m_playPluginConfiguration;
Chris@284 67
Chris@284 68 private:
Chris@284 69 PlayParameters(const PlayParameters &);
Chris@284 70 PlayParameters &operator=(const PlayParameters &);
Chris@0 71 };
Chris@0 72
Chris@0 73 #endif
Chris@0 74
Chris@0 75
Chris@0 76
Chris@0 77