Async 1.7.0
AsyncSigCAudioSource.h
Go to the documentation of this file.
1
26
27
28#ifndef ASYNC_SIGC_AUDIO_SOURCE_INCLUDED
29#define ASYNC_SIGC_AUDIO_SOURCE_INCLUDED
30
31
32/****************************************************************************
33 *
34 * System Includes
35 *
36 ****************************************************************************/
37
38#include <sigc++/sigc++.h>
39
40
41/****************************************************************************
42 *
43 * Project Includes
44 *
45 ****************************************************************************/
46
47#include <AsyncAudioSource.h>
48
49
50/****************************************************************************
51 *
52 * Local Includes
53 *
54 ****************************************************************************/
55
56
57
58/****************************************************************************
59 *
60 * Forward declarations
61 *
62 ****************************************************************************/
63
64
65
66/****************************************************************************
67 *
68 * Namespace
69 *
70 ****************************************************************************/
71
72namespace Async
73{
74
75
76/****************************************************************************
77 *
78 * Forward declarations of classes inside of the declared namespace
79 *
80 ****************************************************************************/
81
82
83
84/****************************************************************************
85 *
86 * Defines & typedefs
87 *
88 ****************************************************************************/
89
90
91
92/****************************************************************************
93 *
94 * Exported Global Variables
95 *
96 ****************************************************************************/
97
98
99
100/****************************************************************************
101 *
102 * Class definitions
103 *
104 ****************************************************************************/
105
114class SigCAudioSource : public AudioSource, public sigc::trackable
115{
116 public:
121
126
133 virtual void resumeOutput(void)
134 {
136 }
137
144 virtual void allSamplesFlushed(void)
145 {
147 }
148
159 int writeSamples(float *samples, int count)
160 {
161 return sinkWriteSamples(samples, count);
162 }
163
171 void flushSamples(void)
172 {
174 }
175
182 sigc::signal<void> sigResumeOutput;
183
190 sigc::signal<void> sigAllSamplesFlushed;
191
192}; /* class SigCAudioSource */
193
194
195} /* namespace */
196
197#endif /* ASYNC_SIGC_AUDIO_SOURCE_INCLUDED */
198
199
200
201/*
202 * This file has not been truncated
203 */
204
This file contains the base class for an audio source.
void sinkFlushSamples(void)
AudioSource(void)
Default constuctor.
int sinkWriteSamples(const float *samples, int len)
virtual void allSamplesFlushed(void)
The registered sink has flushed all samples.
void flushSamples(void)
Tell the sink to flush the previously written samples.
int writeSamples(float *samples, int count)
Write samples into this audio sink.
sigc::signal< void > sigResumeOutput
A signal that is emitted when more samples can be written.
sigc::signal< void > sigAllSamplesFlushed
Signal that is emitted when the connected sink is done flushing.
~SigCAudioSource(void)
Destructor.
SigCAudioSource(void)
Default constuctor.
virtual void resumeOutput(void)
Resume audio output to the sink.
Namespace for the asynchronous programming classes.