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 127 of file AudioIO.h.

Member Typedef Documentation

◆ difference_type

Definition at line 129 of file AudioIO.h.

◆ iterator_category

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

Definition at line 133 of file AudioIO.h.

◆ pointer

Definition at line 131 of file AudioIO.h.

◆ reference

Definition at line 132 of file AudioIO.h.

◆ value_type

Definition at line 130 of file AudioIO.h.

Constructor & Destructor Documentation

◆ AudioIOExtIterator()

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

Definition at line 135 of file AudioIO.h.

136 : mIterator{ end
137 ? audioIO.mAudioIOExt.end()
138 : audioIO.mAudioIOExt.begin() }
139 {}
std::vector< std::unique_ptr< AudioIOExtBase > >::const_iterator mIterator
Definition: AudioIO.h:153
std::vector< std::unique_ptr< AudioIOExtBase > > mAudioIOExt
Definition: AudioIOBase.h:322
const char * end(const char *str) noexcept
Definition: StringUtils.h:106

Member Function Documentation

◆ operator*()

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

Definition at line 3345 of file AudioIO.cpp.

3346{
3347 // Down-cast and dereference are safe because only AudioIOCallback
3348 // populates the array
3349 return *static_cast<AudioIOExt*>(mIterator->get());
3350}

References mIterator.

◆ operator++()

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

Definition at line 140 of file AudioIO.h.

140{ ++mIterator; return *this; }

Friends And Related Function Documentation

◆ operator!=

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

Definition at line 147 of file AudioIO.h.

149 {
150 return !(xx == yy);
151 }

◆ operator==

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

Definition at line 142 of file AudioIO.h.

144 {
145 return xx.mIterator == yy.mIterator;
146 }

Member Data Documentation

◆ mIterator

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

Definition at line 153 of file AudioIO.h.

Referenced by operator*().


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