Mercurial > hg > sv-dependency-builds
comparison src/portaudio/bindings/cpp/include/portaudiocpp/DirectionSpecificStreamParameters.hxx @ 4:e13257ea84a4
Add bzip2, zlib, liblo, portaudio sources
author | Chris Cannam |
---|---|
date | Wed, 20 Mar 2013 13:59:52 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
3:6c505a35919a | 4:e13257ea84a4 |
---|---|
1 #ifndef INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX | |
2 #define INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX | |
3 | |
4 // --------------------------------------------------------------------------------------- | |
5 | |
6 #include <cstddef> | |
7 | |
8 #include "portaudio.h" | |
9 | |
10 #include "portaudiocpp/System.hxx" | |
11 #include "portaudiocpp/SampleDataFormat.hxx" | |
12 | |
13 // --------------------------------------------------------------------------------------- | |
14 | |
15 // Forward declaration(s): | |
16 namespace portaudio | |
17 { | |
18 class Device; | |
19 } | |
20 | |
21 // --------------------------------------------------------------------------------------- | |
22 | |
23 // Declaration(s): | |
24 namespace portaudio | |
25 { | |
26 | |
27 ////// | |
28 /// @brief All parameters for one direction (either in or out) of a Stream. Together with | |
29 /// parameters common to both directions, two DirectionSpecificStreamParameters can make up | |
30 /// a StreamParameters object which contains all parameters for a Stream. | |
31 ////// | |
32 class DirectionSpecificStreamParameters | |
33 { | |
34 public: | |
35 static DirectionSpecificStreamParameters null(); | |
36 | |
37 DirectionSpecificStreamParameters(); | |
38 DirectionSpecificStreamParameters(const Device &device, int numChannels, SampleDataFormat format, | |
39 bool interleaved, PaTime suggestedLatency, void *hostApiSpecificStreamInfo); | |
40 | |
41 // Set up methods: | |
42 void setDevice(const Device &device); | |
43 void setNumChannels(int numChannels); | |
44 | |
45 void setSampleFormat(SampleDataFormat format, bool interleaved = true); | |
46 void setHostApiSpecificSampleFormat(PaSampleFormat format, bool interleaved = true); | |
47 | |
48 void setSuggestedLatency(PaTime latency); | |
49 | |
50 void setHostApiSpecificStreamInfo(void *streamInfo); | |
51 | |
52 // Accessor methods: | |
53 PaStreamParameters *paStreamParameters(); | |
54 const PaStreamParameters *paStreamParameters() const; | |
55 | |
56 Device &device() const; | |
57 int numChannels() const; | |
58 | |
59 SampleDataFormat sampleFormat() const; | |
60 bool isSampleFormatInterleaved() const; | |
61 bool isSampleFormatHostApiSpecific() const; | |
62 PaSampleFormat hostApiSpecificSampleFormat() const; | |
63 | |
64 PaTime suggestedLatency() const; | |
65 | |
66 void *hostApiSpecificStreamInfo() const; | |
67 | |
68 private: | |
69 PaStreamParameters paStreamParameters_; | |
70 }; | |
71 | |
72 | |
73 } // namespace portaudio | |
74 | |
75 // --------------------------------------------------------------------------------------- | |
76 | |
77 #endif // INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX |