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

Member Typedef Documentation

◆ difference_type

Definition at line 130 of file AudioIO.h.

◆ iterator_category

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

Definition at line 134 of file AudioIO.h.

◆ pointer

Definition at line 132 of file AudioIO.h.

◆ reference

Definition at line 133 of file AudioIO.h.

◆ value_type

Definition at line 131 of file AudioIO.h.

Constructor & Destructor Documentation

◆ AudioIOExtIterator()

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

Definition at line 136 of file AudioIO.h.

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

Member Function Documentation

◆ operator*()

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

Definition at line 3308 of file AudioIO.cpp.

3309{
3310 // Down-cast and dereference are safe because only AudioIOCallback
3311 // populates the array
3312 return *static_cast<AudioIOExt*>(mIterator->get());
3313}

References mIterator.

◆ operator++()

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

Definition at line 141 of file AudioIO.h.

141{ ++mIterator; return *this; }

Friends And Related Function Documentation

◆ operator!=

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

Definition at line 148 of file AudioIO.h.

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

◆ operator==

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

Definition at line 143 of file AudioIO.h.

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

Member Data Documentation

◆ mIterator

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

Definition at line 154 of file AudioIO.h.

Referenced by operator*().


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