Mercurial > hg > sv-dependency-builds
comparison src/portaudio/bindings/cpp/include/portaudiocpp/PortAudioCpp.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_PORTAUDIOCPP_HXX | |
2 #define INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX | |
3 | |
4 // --------------------------------------------------------------------------------------- | |
5 | |
6 ////// | |
7 /// @mainpage PortAudioCpp | |
8 /// | |
9 /// <h1>PortAudioCpp - A Native C++ Binding of PortAudio V19</h1> | |
10 /// <h2>PortAudio</h2> | |
11 /// <p> | |
12 /// PortAudio is a portable and mature C API for accessing audio hardware. It offers both callback-based and blocking | |
13 /// style input and output, deals with sample data format conversions, dithering and much more. There are a large number | |
14 /// of implementations available for various platforms including Windows MME, Windows DirectX, Windows and MacOS (Classic) | |
15 /// ASIO, MacOS Classic SoundManager, MacOS X CoreAudio, OSS (Linux), Linux ALSA, JACK (MacOS X and Linux) and SGI Irix | |
16 /// AL. Note that, currently not all of these implementations are equally complete or up-to-date (as PortAudio V19 is | |
17 /// still in development). Because PortAudio has a C API, it can easily be called from a variety of other programming | |
18 /// languages. | |
19 /// </p> | |
20 /// <h2>PortAudioCpp</h2> | |
21 /// <p> | |
22 /// Although, it is possible to use PortAudio's C API from within a C++ program, this is usually a little awkward | |
23 /// as procedural and object-oriented paradigms need to be mixed. PortAudioCpp aims to resolve this by encapsulating | |
24 /// PortAudio's C API to form an equivalent object-oriented C++ API. It provides a more natural integration of PortAudio | |
25 /// into C++ programs as well as a more structured interface. PortAudio's concepts were preserved as much as possible and | |
26 /// no additional features were added except for some `convenience methods'. | |
27 /// </p> | |
28 /// <p> | |
29 /// PortAudioCpp's main features are: | |
30 /// <ul> | |
31 /// <li>Structured object model.</li> | |
32 /// <li>C++ exception handling instead of C-style error return codes.</li> | |
33 /// <li>Handling of callbacks using free functions (C and C++), static functions, member functions or instances of classes | |
34 /// derived from a given interface.</li> | |
35 /// <li>STL compliant iterators to host APIs and devices.</li> | |
36 /// <li>Some additional convenience functions to more easily set up and use PortAudio.</li> | |
37 /// </ul> | |
38 /// </p> | |
39 /// <p> | |
40 /// PortAudioCpp requires a recent version of the PortAudio V19 source code. This can be obtained from CVS or as a snapshot | |
41 /// from the website. The examples also require the ASIO 2 SDK which can be obtained from the Steinberg website. Alternatively, the | |
42 /// examples can easily be modified to compile without needing ASIO. | |
43 /// </p> | |
44 /// <p> | |
45 /// Supported platforms: | |
46 /// <ul> | |
47 /// <li>Microsoft Visual C++ 6.0, 7.0 (.NET 2002) and 7.1 (.NET 2003).</li> | |
48 /// <li>GNU G++ 2.95 and G++ 3.3.</li> | |
49 /// </ul> | |
50 /// Other platforms should be easily supported as PortAudioCpp is platform-independent and (reasonably) C++ standard compliant. | |
51 /// </p> | |
52 /// <p> | |
53 /// This documentation mainly provides information specific to PortAudioCpp. For a more complete explaination of all of the | |
54 /// concepts used, please consult the PortAudio documentation. | |
55 /// </p> | |
56 /// <p> | |
57 /// PortAudioCpp was developed by Merlijn Blaauw with many great suggestions and help from Ross Bencina. Ludwig Schwardt provided | |
58 /// GNU/Linux build files and checked G++ compatibility. PortAudioCpp may be used under the same licensing, conditions and | |
59 /// warranty as PortAudio. See <a href="http://www.portaudio.com/license.html">the PortAudio license</a> for more details. | |
60 /// </p> | |
61 /// <h2>Links</h2> | |
62 /// <p> | |
63 /// <a href="http://www.portaudio.com/">Official PortAudio site.</a><br> | |
64 /// </p> | |
65 ////// | |
66 | |
67 // --------------------------------------------------------------------------------------- | |
68 | |
69 ////// | |
70 /// @namespace portaudio | |
71 /// | |
72 /// To avoid name collision, everything in PortAudioCpp is in the portaudio | |
73 /// namespace. If this name is too long it's usually pretty safe to use an | |
74 /// alias like ``namespace pa = portaudio;''. | |
75 ////// | |
76 | |
77 // --------------------------------------------------------------------------------------- | |
78 | |
79 ////// | |
80 /// @file PortAudioCpp.hxx | |
81 /// An include-all header file (for lazy programmers and using pre-compiled headers). | |
82 ////// | |
83 | |
84 // --------------------------------------------------------------------------------------- | |
85 | |
86 #include "portaudio.h" | |
87 | |
88 #include "portaudiocpp/AutoSystem.hxx" | |
89 #include "portaudiocpp/BlockingStream.hxx" | |
90 #include "portaudiocpp/CallbackInterface.hxx" | |
91 #include "portaudiocpp/CallbackStream.hxx" | |
92 #include "portaudiocpp/CFunCallbackStream.hxx" | |
93 #include "portaudiocpp/CppFunCallbackStream.hxx" | |
94 #include "portaudiocpp/Device.hxx" | |
95 #include "portaudiocpp/Exception.hxx" | |
96 #include "portaudiocpp/HostApi.hxx" | |
97 #include "portaudiocpp/InterfaceCallbackStream.hxx" | |
98 #include "portaudiocpp/MemFunCallbackStream.hxx" | |
99 #include "portaudiocpp/SampleDataFormat.hxx" | |
100 #include "portaudiocpp/DirectionSpecificStreamParameters.hxx" | |
101 #include "portaudiocpp/Stream.hxx" | |
102 #include "portaudiocpp/StreamParameters.hxx" | |
103 #include "portaudiocpp/System.hxx" | |
104 #include "portaudiocpp/SystemDeviceIterator.hxx" | |
105 #include "portaudiocpp/SystemHostApiIterator.hxx" | |
106 | |
107 // --------------------------------------------------------------------------------------- | |
108 | |
109 #endif // INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX |