annotate base/PlayParameters.h @ 1008:d9e0e59a1581

When using an aggregate model to pass data to a transform, zero-pad the shorter input to the duration of the longer rather than truncating the longer. (This is better behaviour for e.g. MATCH, and in any case the code was previously truncating incorrectly and ending up with garbage data at the end.)
author Chris Cannam
date Fri, 14 Nov 2014 13:51:33 +0000
parents 3a3541b357fe
children c01cbe41aeb5
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@866 35 virtual QString getPlayClipId() const { return m_playClipId; }
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@866 48 virtual void setPlayClipId(QString id);
Chris@0 49
Chris@30 50 signals:
Chris@30 51 void playParametersChanged();
Chris@30 52 void playMutedChanged(bool);
Chris@30 53 void playAudibleChanged(bool);
Chris@30 54 void playPanChanged(float);
Chris@30 55 void playGainChanged(float);
Chris@866 56 void playClipIdChanged(QString);
Chris@30 57
Chris@0 58 protected:
Chris@0 59 bool m_playMuted;
Chris@0 60 float m_playPan;
Chris@0 61 float m_playGain;
Chris@866 62 QString m_playClipId;
Chris@284 63
Chris@284 64 private:
Chris@284 65 PlayParameters(const PlayParameters &);
Chris@284 66 PlayParameters &operator=(const PlayParameters &);
Chris@0 67 };
Chris@0 68
Chris@0 69 #endif
Chris@0 70
Chris@0 71
Chris@0 72
Chris@0 73