comparison data/model/WaveFileModel.h @ 297:c022976d18e8

* Merge from sv-match-alignment branch (excluding alignment-specific document). - add aggregate wave model (not yet complete enough to be added as a true model in a layer, but there's potential) - add play solo mode - add alignment model -- unused in plain SV - fix two plugin leaks - add m3u playlist support (opens all files at once, potentially hazardous) - fix retrieval of pre-encoded URLs - add ability to resample audio files on import, so as to match rates with other files previously loaded; add preference for same - add preliminary support in transform code for range and rate of transform input - reorganise preferences dialog, move dark-background option to preferences, add option for temporary directory location
author Chris Cannam
date Fri, 28 Sep 2007 13:56:38 +0000
parents 7b96b3bd4bae
children 5877d68815c7
comparison
equal deleted inserted replaced
296:2b6c99b607f1 297:c022976d18e8
30 class WaveFileModel : public RangeSummarisableTimeValueModel 30 class WaveFileModel : public RangeSummarisableTimeValueModel
31 { 31 {
32 Q_OBJECT 32 Q_OBJECT
33 33
34 public: 34 public:
35 WaveFileModel(QString path); 35 WaveFileModel(QString path, size_t targetRate = 0);
36 WaveFileModel(QString path, QString originalLocation); 36 WaveFileModel(QString path, QString originalLocation, size_t targetRate = 0);
37 WaveFileModel(QString originalLocation, AudioFileReader *reader); 37 WaveFileModel(QString originalLocation, AudioFileReader *reader);
38 ~WaveFileModel(); 38 ~WaveFileModel();
39 39
40 bool isOK() const; 40 bool isOK() const;
41 bool isReady(int *) const; 41 bool isReady(int *) const;
43 const ZoomConstraint *getZoomConstraint() const { return &m_zoomConstraint; } 43 const ZoomConstraint *getZoomConstraint() const { return &m_zoomConstraint; }
44 44
45 size_t getFrameCount() const; 45 size_t getFrameCount() const;
46 size_t getChannelCount() const; 46 size_t getChannelCount() const;
47 size_t getSampleRate() const; 47 size_t getSampleRate() const;
48 size_t getNativeRate() const;
48 49
49 virtual Model *clone() const; 50 virtual Model *clone() const;
50 51
51 float getValueMinimum() const { return -1.0f; } 52 float getValueMinimum() const { return -1.0f; }
52 float getValueMaximum() const { return 1.0f; } 53 float getValueMaximum() const { return 1.0f; }