annotate audio/PlaySpeedRangeMapper.h @ 738:48001ed9143b audio-source-refactor

Introduce TimeStretchWrapper; some work towards making the AudioCallbackPlaySource not actually try to be an ApplicationPlaybackSource itself but only return one that is constructed from wrappers that it controls the lifespan of
author Chris Cannam
date Wed, 18 Mar 2020 12:51:41 +0000
parents 26a0cb8335e3
children
rev   line source
Chris@43 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@43 2
Chris@43 3 /*
Chris@43 4 Sonic Visualiser
Chris@43 5 An audio file viewer and annotation editor.
Chris@43 6 Centre for Digital Music, Queen Mary, University of London.
Chris@43 7 This file copyright 2006 QMUL.
Chris@43 8
Chris@43 9 This program is free software; you can redistribute it and/or
Chris@43 10 modify it under the terms of the GNU General Public License as
Chris@43 11 published by the Free Software Foundation; either version 2 of the
Chris@43 12 License, or (at your option) any later version. See the file
Chris@43 13 COPYING included with this distribution for more information.
Chris@43 14 */
Chris@43 15
Chris@635 16 #ifndef SV_PLAY_SPEED_RANGE_MAPPER_H
Chris@635 17 #define SV_PLAY_SPEED_RANGE_MAPPER_H
Chris@43 18
Chris@43 19 #include "base/RangeMapper.h"
Chris@43 20
Chris@43 21 class PlaySpeedRangeMapper : public RangeMapper
Chris@43 22 {
Chris@43 23 public:
Chris@466 24 PlaySpeedRangeMapper();
Chris@43 25
Chris@466 26 int getMinPosition() const { return m_minpos; }
Chris@466 27 int getMaxPosition() const { return m_maxpos; }
Chris@466 28
Chris@634 29 int getPositionForValue(double value) const override;
Chris@634 30 int getPositionForValueUnclamped(double value) const override;
Chris@330 31
Chris@634 32 double getValueForPosition(int position) const override;
Chris@634 33 double getValueForPositionUnclamped(int position) const override;
Chris@43 34
Chris@434 35 int getPositionForFactor(double factor) const;
Chris@434 36 double getValueForFactor(double factor) const;
Chris@43 37
Chris@434 38 double getFactorForPosition(int position) const;
Chris@434 39 double getFactorForValue(double value) const;
Chris@43 40
Chris@634 41 QString getUnit() const override;
Chris@43 42
Chris@43 43 protected:
Chris@43 44 int m_minpos;
Chris@43 45 int m_maxpos;
Chris@43 46 };
Chris@43 47
Chris@43 48
Chris@43 49 #endif