Audacity 3.2.0
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
AudioIoCallback::AudioIOExtIterator Class Reference

#include <AudioIO.h>

Collaboration diagram for AudioIoCallback::AudioIOExtIterator:
[legend]

Public Types

using difference_type = ptrdiff_t
 
using value_type = AudioIOExt &
 
using pointer = AudioIOExt *
 
using reference = AudioIOExt &
 
using iterator_category = std::forward_iterator_tag
 

Public Member Functions

 AudioIOExtIterator (AudioIoCallback &audioIO, bool end)
 
AudioIOExtIteratoroperator++ ()
 
auto operator* () const -> AudioIOExt &
 

Private Attributes

std::vector< std::unique_ptr< AudioIOExtBase > >::const_iterator mIterator
 

Friends

bool operator== (const AudioIOExtIterator &xx, const AudioIOExtIterator &yy)
 
bool operator!= (const AudioIOExtIterator &xx, const AudioIOExtIterator &yy)
 

Detailed Description

Definition at line 142 of file AudioIO.h.

Member Typedef Documentation

◆ difference_type

Definition at line 144 of file AudioIO.h.

◆ iterator_category

using AudioIoCallback::AudioIOExtIterator::iterator_category = std::forward_iterator_tag

Definition at line 148 of file AudioIO.h.

◆ pointer

Definition at line 146 of file AudioIO.h.

◆ reference

Definition at line 147 of file AudioIO.h.

◆ value_type

Definition at line 145 of file AudioIO.h.

Constructor & Destructor Documentation

◆ AudioIOExtIterator()

AudioIoCallback::AudioIOExtIterator::AudioIOExtIterator ( AudioIoCallback audioIO,
bool  end 
)
inlineexplicit

Definition at line 150 of file AudioIO.h.

151 : mIterator{ end
152 ? audioIO.mAudioIOExt.end()
153 : audioIO.mAudioIOExt.begin() }
154 {}
std::vector< std::unique_ptr< AudioIOExtBase > >::const_iterator mIterator
Definition: AudioIO.h:168
std::vector< std::unique_ptr< AudioIOExtBase > > mAudioIOExt
Definition: AudioIOBase.h:322
auto end(const Ptr< Type, BaseDeleter > &p)
Enables range-for.
Definition: PackedArray.h:159

Member Function Documentation

◆ operator*()

auto AudioIoCallback::AudioIOExtIterator::operator* ( ) const -> AudioIOExt &

Definition at line 3271 of file AudioIO.cpp.

3272{
3273 // Down-cast and dereference are safe because only AudioIOCallback
3274 // populates the array
3275 return *static_cast<AudioIOExt*>(mIterator->get());
3276}

References mIterator.

◆ operator++()

AudioIOExtIterator & AudioIoCallback::AudioIOExtIterator::operator++ ( )
inline

Definition at line 155 of file AudioIO.h.

155{ ++mIterator; return *this; }

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( const AudioIOExtIterator xx,
const AudioIOExtIterator yy 
)
friend

Definition at line 162 of file AudioIO.h.

164 {
165 return !(xx == yy);
166 }

◆ operator==

bool operator== ( const AudioIOExtIterator xx,
const AudioIOExtIterator yy 
)
friend

Definition at line 157 of file AudioIO.h.

159 {
160 return xx.mIterator == yy.mIterator;
161 }

Member Data Documentation

◆ mIterator

std::vector<std::unique_ptr<AudioIOExtBase>>::const_iterator AudioIoCallback::AudioIOExtIterator::mIterator
private

Definition at line 168 of file AudioIO.h.

Referenced by operator*().


The documentation for this class was generated from the following files: