#ifndef INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX #define INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX // --------------------------------------------------------------------------------------- ////// /// @mainpage PortAudioCpp /// ///

PortAudioCpp - A Native C++ Binding of PortAudio V19

///

PortAudio

///

/// PortAudio is a portable and mature C API for accessing audio hardware. It offers both callback-based and blocking /// style input and output, deals with sample data format conversions, dithering and much more. There are a large number /// of implementations available for various platforms including Windows MME, Windows DirectX, Windows and MacOS (Classic) /// ASIO, MacOS Classic SoundManager, MacOS X CoreAudio, OSS (Linux), Linux ALSA, JACK (MacOS X and Linux) and SGI Irix /// AL. Note that, currently not all of these implementations are equally complete or up-to-date (as PortAudio V19 is /// still in development). Because PortAudio has a C API, it can easily be called from a variety of other programming /// languages. ///

///

PortAudioCpp

///

/// Although, it is possible to use PortAudio's C API from within a C++ program, this is usually a little awkward /// as procedural and object-oriented paradigms need to be mixed. PortAudioCpp aims to resolve this by encapsulating /// PortAudio's C API to form an equivalent object-oriented C++ API. It provides a more natural integration of PortAudio /// into C++ programs as well as a more structured interface. PortAudio's concepts were preserved as much as possible and /// no additional features were added except for some `convenience methods'. ///

///

/// PortAudioCpp's main features are: ///

///

///

/// PortAudioCpp requires a recent version of the PortAudio V19 source code. This can be obtained from CVS or as a snapshot /// from the website. The examples also require the ASIO 2 SDK which can be obtained from the Steinberg website. Alternatively, the /// examples can easily be modified to compile without needing ASIO. ///

///

/// Supported platforms: ///

/// Other platforms should be easily supported as PortAudioCpp is platform-independent and (reasonably) C++ standard compliant. ///

///

/// This documentation mainly provides information specific to PortAudioCpp. For a more complete explanation of all of the /// concepts used, please consult the PortAudio documentation. ///

///

/// PortAudioCpp was developed by Merlijn Blaauw with many great suggestions and help from Ross Bencina. Ludwig Schwardt provided /// GNU/Linux build files and checked G++ compatibility. PortAudioCpp may be used under the same licensing, conditions and /// warranty as PortAudio. See the PortAudio license for more details. ///

///

Links

///

/// Official PortAudio site.
///

////// // --------------------------------------------------------------------------------------- ////// /// @namespace portaudio /// /// To avoid name collision, everything in PortAudioCpp is in the portaudio /// namespace. If this name is too long it's usually pretty safe to use an /// alias like ``namespace pa = portaudio;''. ////// // --------------------------------------------------------------------------------------- ////// /// @file PortAudioCpp.hxx /// An include-all header file (for lazy programmers and using pre-compiled headers). ////// // --------------------------------------------------------------------------------------- #include "portaudio.h" #include "portaudiocpp/AutoSystem.hxx" #include "portaudiocpp/BlockingStream.hxx" #include "portaudiocpp/CallbackInterface.hxx" #include "portaudiocpp/CallbackStream.hxx" #include "portaudiocpp/CFunCallbackStream.hxx" #include "portaudiocpp/CppFunCallbackStream.hxx" #include "portaudiocpp/Device.hxx" #include "portaudiocpp/Exception.hxx" #include "portaudiocpp/HostApi.hxx" #include "portaudiocpp/InterfaceCallbackStream.hxx" #include "portaudiocpp/MemFunCallbackStream.hxx" #include "portaudiocpp/SampleDataFormat.hxx" #include "portaudiocpp/DirectionSpecificStreamParameters.hxx" #include "portaudiocpp/Stream.hxx" #include "portaudiocpp/StreamParameters.hxx" #include "portaudiocpp/System.hxx" #include "portaudiocpp/SystemDeviceIterator.hxx" #include "portaudiocpp/SystemHostApiIterator.hxx" // --------------------------------------------------------------------------------------- #endif // INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX