10#ifndef __AUDACITY_WIDE_SAMPLE_SEQUENCE_
11#define __AUDACITY_WIDE_SAMPLE_SEQUENCE_
58 bool GetFloats(
size_t iChannel,
size_t nBuffers,
59 float *
const buffers[],
sampleCount start,
size_t len,
61 bool mayThrow =
true,
sampleCount* pNumWithinClips =
nullptr)
const;
113 double SnapToSample(
double t)
const;
128 double* buffer,
size_t bufferLen,
double t0,
bool backwards)
const = 0;
virtual bool HasTrivialEnvelope() const =0
virtual double GetStartTime() const =0
virtual void GetEnvelopeValues(double *buffer, size_t bufferLen, double t0, bool backwards) const =0
virtual sampleFormat WidestEffectiveFormat() const =0
virtual bool DoGet(size_t iChannel, size_t nBuffers, const samplePtr buffers[], sampleFormat format, sampleCount start, size_t len, bool backward, fillFormat fill=FillFormat::fillZero, bool mayThrow=true, sampleCount *pNumWithinClips=nullptr) const =0
virtual ~WideSampleSequence()
virtual double GetEndTime() const =0
virtual float GetChannelVolume(int channel) const =0
virtual size_t NChannels() const =0
A constant property.
virtual double GetRate() const =0
Positions or offsets within audio files need a wide type.