Mercurial > hg > svcore
diff data/model/RangeSummarisableTimeValueModel.h @ 300:5877d68815c7
* Change WaveFileModel API from getValues(start,end) to getData(start,count).
It's much less error-prone to pass in frame counts instead of start/end
locations. Should have done this ages ago. This closes #1794563.
* Add option to apply a transform to only the selection region, instead of
the whole audio.
* (to make the above work properly) Add start frame offset to wave models
author | Chris Cannam |
---|---|
date | Mon, 01 Oct 2007 13:48:38 +0000 |
parents | c022976d18e8 |
children | 3ff8f571da09 |
line wrap: on
line diff
--- a/data/model/RangeSummarisableTimeValueModel.h Fri Sep 28 16:15:06 2007 +0000 +++ b/data/model/RangeSummarisableTimeValueModel.h Mon Oct 01 13:48:38 2007 +0000 @@ -53,25 +53,26 @@ typedef std::vector<Range> RangeBlock; /** - * Return ranges between the given start and end frames, - * summarised at the given block size. ((end - start + 1) / - * blockSize) ranges should ideally be returned. + * Return ranges from the given start frame, corresponding to the + * given number of underlying sample frames, summarised at the + * given block size. duration / blockSize ranges should ideally + * be returned. * * If the given block size is not supported by this model * (according to its zoom constraint), also modify the blockSize * parameter so as to return the block size that was actually * obtained. */ - virtual void getRanges(size_t channel, size_t start, size_t end, - RangeBlock &ranges, - size_t &blockSize) const = 0; + virtual void getSummaries(size_t channel, size_t start, size_t count, + RangeBlock &ranges, + size_t &blockSize) const = 0; /** - * Return the range between the given start and end frames, - * summarised at a block size equal to the distance between start - * and end frames. + * Return the range from the given start frame, corresponding to + * the given number of underlying sample frames, summarised at a + * block size equal to the distance between start and end frames. */ - virtual Range getRange(size_t channel, size_t start, size_t end) const = 0; + virtual Range getSummary(size_t channel, size_t start, size_t count) const = 0; virtual void setAlignment(AlignmentModel *alignment); // I take ownership virtual const Model *getAlignmentReference() const;