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;