Audacity 3.2.0
|
#include <Channel.h>
Classes | |
class | ChannelIterator |
Public Member Functions | |
~WideChannelGroupInterval () override | |
virtual size_t | NChannels () const =0 |
Report the number of channels. More... | |
template<typename IntervalType = ChannelInterval> | |
std::shared_ptr< IntervalType > | GetChannel (size_t iChannel) |
Retrieve a channel, cast to the given type. More... | |
template<typename IntervalType = const ChannelInterval> | |
auto | GetChannel (size_t iChannel) const -> std::enable_if_t< std::is_const_v< IntervalType >, std::shared_ptr< IntervalType > > |
template<typename IntervalType = ChannelInterval> | |
IteratorRange< ChannelIterator< IntervalType > > | Channels () |
Get range of ChannelInterval objects with mutative access. More... | |
template<typename IntervalType = const ChannelInterval> | |
auto | Channels () const -> std::enable_if_t< std::is_const_v< IntervalType >, IteratorRange< ChannelIterator< IntervalType > > > |
Get range of channels with read-only access. More... | |
Public Member Functions inherited from ChannelGroupInterval | |
ChannelGroupInterval ()=default | |
virtual | ~ChannelGroupInterval () |
virtual double | Start () const =0 |
virtual double | End () const =0 |
Protected Member Functions | |
virtual std::shared_ptr< ChannelInterval > | DoGetChannel (size_t iChannel)=0 |
Retrieve a channel. More... | |
Start and end time, and channel width, and whatever else subclasses associate with them
Start and end and number of channels are immutable, but subclasses may add other mutable data
|
overridedefault |
|
inline |
Get range of ChannelInterval objects with mutative access.
Definition at line 135 of file Channel.h.
|
inline |
|
protectedpure virtual |
Retrieve a channel.
!(iChannel < NChannels()) || result
Implemented in LabelTrack::Interval, NoteTrack::Interval, and WaveClip.
|
inline |
Retrieve a channel, cast to the given type.
Postconditions imply that GetChannel(0)
is always non-null
!(iChannel < NChannels()) || result
Definition at line 74 of file Channel.h.
References anonymous_namespace{StretchingSequenceIntegrationTest.cpp}::iChannel.
|
inline |
Postconditions imply that GetChannel(0)
is always non-null
!(iChannel < NChannels()) || result
Definition at line 84 of file Channel.h.
References anonymous_namespace{StretchingSequenceIntegrationTest.cpp}::iChannel.
|
pure virtual |
Report the number of channels.
result >= 1
Implemented in LabelTrack::Interval, NoteTrack::Interval, and WaveClip.
Referenced by WaveTrack::ClearAndPasteAtSameTempo().