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

Member Typedef Documentation

◆ difference_type

Definition at line 128 of file AudioIO.h.

◆ iterator_category

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

Definition at line 132 of file AudioIO.h.

◆ pointer

Definition at line 130 of file AudioIO.h.

◆ reference

Definition at line 131 of file AudioIO.h.

◆ value_type

Definition at line 129 of file AudioIO.h.

Constructor & Destructor Documentation

◆ AudioIOExtIterator()

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

Definition at line 134 of file AudioIO.h.

135 : mIterator{ end
136 ? audioIO.mAudioIOExt.end()
137 : audioIO.mAudioIOExt.begin() }
138 {}
std::vector< std::unique_ptr< AudioIOExtBase > >::const_iterator mIterator
Definition: AudioIO.h:152
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 3292 of file AudioIO.cpp.

3293{
3294 // Down-cast and dereference are safe because only AudioIOCallback
3295 // populates the array
3296 return *static_cast<AudioIOExt*>(mIterator->get());
3297}

References mIterator.

◆ operator++()

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

Definition at line 139 of file AudioIO.h.

139{ ++mIterator; return *this; }

Friends And Related Function Documentation

◆ operator!=

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

Definition at line 146 of file AudioIO.h.

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

◆ operator==

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

Definition at line 141 of file AudioIO.h.

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

Member Data Documentation

◆ mIterator

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

Definition at line 152 of file AudioIO.h.

Referenced by operator*().


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