JUCE: AbstractFifo::ScopedReadWrite< mode > Class Template Reference

JUCE

Public Member Functions | Public Attributes | List of all members
AbstractFifo::ScopedReadWrite< mode > Class Template Referencefinal
juce_core » containers

Class for a scoped reader/writer. More...

`#include <juce_AbstractFifo.h>`

## Public Member Functions
| ScopedReadWrite ()=default
| Construct an unassigned reader/writer. More...
| ScopedReadWrite (AbstractFifo &f, int num) noexcept
| Construct a reader/writer and immediately call prepareRead/prepareWrite on the abstractFifo which was passed in. More...
| ScopedReadWrite (const ScopedReadWrite &)=delete
| ScopedReadWrite (ScopedReadWrite &&) noexcept
ScopedReadWrite & | operator= (const ScopedReadWrite &)=delete
ScopedReadWrite & | operator= (ScopedReadWrite &&) noexcept
| ~ScopedReadWrite () noexcept
| Calls finishedRead or finishedWrite if this is a non-null scoped reader/writer. More...
template<typename FunctionToApply >
void | forEach (FunctionToApply &&func) const
| Calls the passed function with each index that was deemed valid for the current read/write operation. More...

## Public Attributes
int | startIndex1
int | blockSize1
int | startIndex2
int | blockSize2

## Detailed Description

template<ReadOrWrite mode>
class AbstractFifo::ScopedReadWrite< mode >

Class for a scoped reader/writer.

## Constructor & Destructor Documentation

## ◆ ScopedReadWrite() [1/4]

template<ReadOrWrite mode>

AbstractFifo::ScopedReadWrite< mode >::ScopedReadWrite | ( |  | ) |
| default

Construct an unassigned reader/writer.

Doesn't do anything upon destruction.

## ◆ ScopedReadWrite() [2/4]

template<ReadOrWrite mode>

AbstractFifo::ScopedReadWrite< mode >::ScopedReadWrite | ( | AbstractFifo & | f,
|  | int | num
| ) |  |
| noexcept

Construct a reader/writer and immediately call prepareRead/prepareWrite on the abstractFifo which was passed in.

This object will hold a pointer back to the fifo, so make sure that the fifo outlives this object.

References gl::num.

## ◆ ScopedReadWrite() [3/4]

template<ReadOrWrite mode>

AbstractFifo::ScopedReadWrite< mode >::ScopedReadWrite | ( | const ScopedReadWrite< mode > & |  | ) |
| delete

## ◆ ScopedReadWrite() [4/4]

template<ReadOrWrite mode>

AbstractFifo::ScopedReadWrite< mode >::ScopedReadWrite | ( | ScopedReadWrite< mode > && |  | ) |
| noexcept

## ◆ ~ScopedReadWrite()

template<ReadOrWrite mode>

AbstractFifo::ScopedReadWrite< mode >::~ScopedReadWrite | ( |  | ) |
| noexcept

Calls finishedRead or finishedWrite if this is a non-null scoped reader/writer.

## Member Function Documentation

## ◆ operator=() [1/2]

template<ReadOrWrite mode>

ScopedReadWrite & AbstractFifo::ScopedReadWrite< mode >::operator= | ( | const ScopedReadWrite< mode > & |  | ) |
| delete

## ◆ operator=() [2/2]

template<ReadOrWrite mode>

ScopedReadWrite & AbstractFifo::ScopedReadWrite< mode >::operator= | ( | ScopedReadWrite< mode > && |  | ) |
| noexcept

## ◆ forEach()

template<ReadOrWrite mode>
template<typename FunctionToApply >

void AbstractFifo::ScopedReadWrite< mode >::forEach | ( | FunctionToApply && | func | ) | const

Calls the passed function with each index that was deemed valid for the current read/write operation.

References gl::func.

## Member Data Documentation

## ◆ startIndex1

template<ReadOrWrite mode>

int AbstractFifo::ScopedReadWrite< mode >::startIndex1

## ◆ blockSize1

template<ReadOrWrite mode>

int AbstractFifo::ScopedReadWrite< mode >::blockSize1

## ◆ startIndex2

template<ReadOrWrite mode>

int AbstractFifo::ScopedReadWrite< mode >::startIndex2

## ◆ blockSize2

template<ReadOrWrite mode>

int AbstractFifo::ScopedReadWrite< mode >::blockSize2

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

- juce_AbstractFifo.h