Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
poison_reader.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2019 Roc Streaming authors
3
*
4
* This Source Code Form is subject to the terms of the Mozilla Public
5
* License, v. 2.0. If a copy of the MPL was not distributed with this
6
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
7
*/
8
9
//! @file roc_audio/poison_reader.h
10
//! @brief Poison reader.
11
12
#ifndef ROC_AUDIO_POISON_READER_H_
13
#define ROC_AUDIO_POISON_READER_H_
14
15
#include "
roc_audio/frame.h
"
16
#include "
roc_audio/iframe_reader.h
"
17
#include "
roc_core/noncopyable.h
"
18
19
namespace
roc
{
20
namespace
audio {
21
22
//! Poisons audio frames before reading them.
23
class
PoisonReader
:
public
IFrameReader
,
public
core::NonCopyable
<> {
24
public
:
25
//! Initialize.
26
PoisonReader
(
IFrameReader
& reader);
27
28
//! Read audio frame.
29
virtual
bool
read
(
Frame
&);
30
31
private
:
32
IFrameReader
& reader_;
33
};
34
35
}
// namespace audio
36
}
// namespace roc
37
38
#endif
// ROC_AUDIO_POISON_READER_H_
roc::audio::Frame
Audio frame.
Definition:
frame.h:25
roc::audio::IFrameReader
Frame reader interface.
Definition:
iframe_reader.h:22
roc::audio::PoisonReader
Poisons audio frames before reading them.
Definition:
poison_reader.h:23
roc::audio::PoisonReader::PoisonReader
PoisonReader(IFrameReader &reader)
Initialize.
roc::audio::PoisonReader::read
virtual bool read(Frame &)
Read audio frame.
roc::core::NonCopyable
Base class for non-copyable objects.
Definition:
noncopyable.h:23
frame.h
Audio frame.
iframe_reader.h
Frame reader interface.
roc
Root namespace.
noncopyable.h
Non-copyable object.
roc_audio
poison_reader.h
Generated by
1.9.1