annotate base/PlayParameters.h @ 356:ca3b91119482

* fix support for logarithmic hints in plugin parameters
author Chris Cannam
date Mon, 17 Dec 2007 12:32:28 +0000
parents 70a232b1f12a
children 5858cc462d0a
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@0 31 virtual float getPlayPan() const { return m_playPan; } // -1.0 -> 1.0
Chris@0 32 virtual float getPlayGain() const { return m_playGain; }
Chris@0 33
Chris@57 34 virtual QString getPlayPluginId() const { return m_playPluginId; }
Chris@57 35 virtual QString getPlayPluginConfiguration() const { return m_playPluginConfiguration; }
Chris@57 36
Chris@284 37 virtual void copyFrom(const PlayParameters *);
Chris@284 38
Chris@314 39 virtual void toXml(QTextStream &stream,
Chris@314 40 QString indent = "",
Chris@314 41 QString extraAttributes = "") const;
Chris@81 42
Chris@29 43 public slots:
Chris@29 44 virtual void setPlayMuted(bool muted);
Chris@29 45 virtual void setPlayAudible(bool nonMuted);
Chris@29 46 virtual void setPlayPan(float pan);
Chris@29 47 virtual void setPlayGain(float gain);
Chris@57 48 virtual void setPlayPluginId(QString id);
Chris@57 49 virtual void setPlayPluginConfiguration(QString configuration);
Chris@0 50
Chris@30 51 signals:
Chris@30 52 void playParametersChanged();
Chris@30 53 void playMutedChanged(bool);
Chris@30 54 void playAudibleChanged(bool);
Chris@30 55 void playPanChanged(float);
Chris@30 56 void playGainChanged(float);
Chris@57 57 void playPluginIdChanged(QString);
Chris@57 58 void playPluginConfigurationChanged(QString);
Chris@30 59
Chris@0 60 protected:
Chris@0 61 bool m_playMuted;
Chris@0 62 float m_playPan;
Chris@0 63 float m_playGain;
Chris@57 64 QString m_playPluginId;
Chris@57 65 QString m_playPluginConfiguration;
Chris@284 66
Chris@284 67 private:
Chris@284 68 PlayParameters(const PlayParameters &);
Chris@284 69 PlayParameters &operator=(const PlayParameters &);
Chris@0 70 };
Chris@0 71
Chris@0 72 #endif
Chris@0 73
Chris@0 74
Chris@0 75
Chris@0 76