Audacity 3.2.0
AudioSegment.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*!********************************************************************
3
4 Audacity: A Digital Audio Editor
5
6 AudioSegment.h
7
8 Matthieu Hodgkinson
9
10**********************************************************************/
11
12#pragma once
13
14#include "SampleCount.h"
15
16#include <vector>
17
22class STRETCHING_SEQUENCE_API AudioSegment
23{
24public:
25 virtual ~AudioSegment();
26
34 virtual size_t
35 GetFloats(float *const *buffers, size_t numSamples) = 0;
36
40 virtual size_t NChannels() const = 0;
41
45 virtual bool Empty() const = 0;
46};
A generalization for audio segments, whether clips or silence between clips.
Definition: AudioSegment.h:23
virtual ~AudioSegment()
virtual size_t GetFloats(float *const *buffers, size_t numSamples)=0
Fills buffers with as many as numSamples or the number of remaining samples, whichever is smaller.
virtual bool Empty() const =0
Whether the segment has no more samples to provide.
virtual size_t NChannels() const =0
The number of channels in the segment.