Chris@55: Note: Because PortAudioCpp is now in the main PortAudio SVN repository, having these per-release changelogs probably doesn't make much sense anymore. Perhaps it's better to just note mayor changes by date from now on. Chris@55: Chris@55: PortAudioCpp v19 revision 16 06/05/22: Chris@55: Chris@55: mblaauw: Chris@55: - Added up-to-date MSVC 6.0 projects created by David Moore. Besides MSVC 6.0 users, MSVC 7.0 users may use these projects and automatically convert them to MSVC 7.0 projects. Chris@55: - Changed the code and projects (MSVC 7.1 only) to be up-to-date with PortAudio's new directory structure. Chris@55: - Added equivalents of the PaAsio_GetInputChannelName() and PaAsio_GetOutputChannelName() functions to the AsioDeviceAdapter wrapper-class (missing functions pointed out by David Moore). Chris@55: - Added code to PortAudio's main SVN repository. Chris@55: Chris@55: PortAudioCpp v19 revision 15 (unknown release date): Chris@55: Chris@55: mblaauw: Chris@55: - Changed some exception handling code in HostApi's constructor. Chris@55: - Added accessors to PortAudio PaStream from PortAudioCpp Stream (their absense being pointed out Chris@55: by Tom Jordan). Chris@55: - Fixed a bug/typo in MemFunToCallbackInterfaceAdapter::init() thanks to Fredrik Viklund. Chris@55: - Fixed issue with concrete Stream classes possibly throwing an exception and fixed documentation w.r.t. this. Chris@55: - Moved files to portaudio/binding/cpp/. Made new msvc 7.1 projects to reflect the change and removed msvc 6.0 Chris@55: and 7.0 projects (because I can no longer maintain them myself). Gnu projects will probably need updating. Chris@55: Chris@55: PortAudioCpp v19 revision 14 03/10/24: Chris@55: Chris@55: mblaauw: Chris@55: - Fixed some error handling bugs in Stream and System (pointed out by Tom Jordan). Chris@55: - Updated documentation a little (main page). Chris@55: - Fixed order of members so initializer list was in the right order in Chris@55: StreamParameters (pointed out by Ludwig Schwardt). Chris@55: - Added new lines at EOF's (as indicated by Ludwig Schwardt). Chris@55: Chris@55: PortAudioCpp v19 revision 13 03/10/19: Chris@55: Chris@55: lschwardt: Chris@55: - Added build files for GNU/Linux. Chris@55: - Fixed bug in Exception where the inherited what() member function (and destructor) had looser Chris@55: exception specification (namely no exception specification, i.e. could throw anything) than Chris@55: the std::exception base class's what() member function (which had throw(), i.e. no-throw guarantee). Chris@55: - Changed the iterators so that they have a set of public typedefs instead of deriving the C++ standard Chris@55: library std::iterator<> struct. G++ 2.95 doesn't support std::exception<> and composition-by-aggregation Chris@55: is prefered over composition-by-inheritance in this case. Chris@55: - Changed some minor things to avoid G++ warning messages. Chris@55: Chris@55: mblaauw: Chris@55: - Renamed this file (/WHATSNEW.txt) to /CHANGELOG. Chris@55: - Renamed /PA_ISSUES.txt to /PA_ISSUES. Chris@55: - Added /INSTALL file with some build info for GNU/Linux and VC6. Chris@55: - Added MSVC 6.0 projects for building PortAudioCpp as a staticly or dynamically linkable library. Chris@55: - Moved build files to /build/(gnu/ or vc6/). Chris@55: - Moved Doxygen configuration files to /doc/ and output to /doc/api_reference/. Chris@55: - Added a /doc/README with some info how to generate Doxygen documentation. Chris@55: Chris@55: PortAudioCpp v19 revision 12 03/09/02: Chris@55: Chris@55: mblaauw: Chris@55: - Updated code to reflect changes on V19-devel CVS branch. Chris@55: - Fixed some typos in the documentation. Chris@55: Chris@55: PortAudioCpp v19 revision 11 03/07/31: Chris@55: Chris@55: mblaauw: Chris@55: - Renamed SingleDirecionStreamParameters to DirectionSpecificStreamParameters. Chris@55: - Implemented BlockingStream. Chris@55: - Updated code to reflect recent changes to PortAudio V19-devel. Chris@55: - Fixed a potential memory leak when an exception was thrown in the HostApi Chris@55: constructor. Chris@55: - Renamed ``Latency'' to ``BufferSize'' in AsioDeviceAdapter. Chris@55: - Updated class documentation. Chris@55: Chris@55: PortAudioCpp v19 revision 10 03/07/18: Chris@55: Chris@55: mblaauw: Chris@55: - SingleDirectionStreamParameters now has a (static) null() method. Chris@55: - StreamParameters uses references for the direction-specific stream parameters Chris@55: instead of pointers (use null() method (above) instead of NULL). Chris@55: - StreamParameters and SingleDirectionStreamParameters must now be fully specified Chris@55: and now default values are used (because this was not very useful in general and Chris@55: only made things more complex). Chris@55: - Updated documentation. Chris@55: Chris@55: PortAudioCpp v19 revision 09 03/06/25: Chris@55: Chris@55: mblaauw: Chris@55: - Changed some things in SingleDirectionStreamParameters to ease it's usage. Chris@55: - Placed all SingleDirectionStreamParameters stuff into a separate file. Chris@55: + Totally redid the callback stuff, now it's less ackward and supports C++ functions. Chris@55: Chris@55: PortAudioCpp v19 revision 08 03/06/20: Chris@55: Chris@55: mblaauw: Chris@55: - Made deconstructors for Device and HostApi private. Chris@55: + Added a AsioDeviceWrapper host api specific device extension class. Chris@55: - Refactored Exception into a Exception base class and PaException and PaCppException Chris@55: derived classes. Chris@55: - Added ASIO specific device info to the devs.cxx example. Chris@55: - Fixed a bug in System::hostApiCount() and System::defaultHostApi(). Chris@55: + Moved Device::null to System::nullDevice. Chris@55: - Fixed some bugs in Device and System. Chris@55: Chris@55: PortAudioCpp v19 revision 07 03/06/08: Chris@55: Chris@55: mblaauw: Chris@55: - Updated some doxy comments. Chris@55: + Renamed CbXyz to CallbackXyz. Chris@55: + Renamed all ``configurations'' to ``parameters''. Chris@55: + Renamed HalfDuplexStreamConfiguration to SingleDirectionStreamConfiguration. Chris@55: - Renamed SingleDirectionStreamParameters::streamParameters() to Chris@55: SingleDirectionStreamParameters::paSteamParameters. Chris@55: - Added a non-constant version of SingleDirectionStreamParameters::paStreamParameters(). Chris@55: - A few improvements to SingleDirectionStreamParameters. Chris@55: - Allowed AutoSystem to be created without initializing the System singleton Chris@55: (using a ctor flag). Chris@55: - Added a BlockingStream class (not implemented for now). Chris@55: - Fixed many bugs in the implementation of the iterators. Chris@55: - Fixed a bug in Device::operator==(). Chris@55: + Added a C++ version of the patest_sine.c test/example. Chris@55: - Added a ctor for StreamParameters for a default half-duplex stream. Chris@55: - Added SingleDirectionStreamParameters::setDevice() and setNumChannels(). Chris@55: - Renamed System::numHostApis() to System::hostApiCount(). Chris@55: + Rewrote the iterators and related classes. They are now fully STL compliant. The System now Chris@55: has a static array of all HostApis and all Devices. Only the System can create HostApis and Chris@55: Devices and they are non-copyable now. All HostApis and Devices are now passed by-reference. Chris@55: - Renamed (System::) getVersion() to version() and getVersionText() to versionText(). Chris@55: - Renamed (Device::) numXyzChannels() to maxXyzChannels(). Chris@55: - Changed some stuff in StreamParameters. Chris@55: + Added a C++ version of the patest_devs.c test/example. Chris@55: Chris@55: PortAudioCpp v19 revision 06 03/06/04: Chris@55: Chris@55: mblaauw: Chris@55: + Added this file to the project (roughly, a `+' denotes a major change, a `-' a minor change). Chris@55: - Added System::deviceByIndex(), useful when a Device's index is stored for instance. Chris@55: - Renamed System::hostApiFromTypeId() to System::hostApiByTypeId(). Chris@55: - Updated and added some Doxygen documentation. Chris@55: - Made Stream::usedIntputLatency(), Stream::usedOutputLatency() and Chris@55: Stream::usedSampleRate() throw an paInternalError equivalent exception instead of paBadStreamPtr. Chris@55: - Changed exception handling in Stream::open() functions. They now follow the PA error handling Chris@55: mechanism better and a couple of bugs regarding ownership of objects were fixed. Chris@55: - Renamed Device::isDefaultXyzDevice() to Device::isSystemDefaultXyzDevice(). Chris@55: - Added Device::isHostApiDefaultXyzDevice(). Chris@55: - Added StreamConfiguration::unsetFlag(). Chris@55: - Removed CUSTOM from SampleDataFormat. Chris@55: - System::hostApiByTypeId() now throws an paInternalError if the type id was out-of-range; this Chris@55: is a temporary work-around (see comments). Chris@55: - Changed CbInterface to use paCallbackFun() instead of operator()(). Chris@55: - Renamed ``object'' to ``instance'' in CbMemFunAdapter.hxx. Chris@55: - Added StreamConfiguration::setXyzHostApiSpecificSampleFormat(). Chris@55: - Added StreamConfiguration::isXyzSampleFormatHostApiSpecific(). Chris@55: - Changed error handling in System::terminate(), it can now throw an Exception. Chris@55: - Added error handling in System::defaultHostApi(). Chris@55: - Added error handling in System::hostApisEnd(). Chris@55: - Changed some (but probably not all) C casts to C++ casts to avoid confusion with a Chris@55: certain Python person. Chris@55: - Renamed RaiiSystem to AutoSystem (class and file) as this is a come common convention. Chris@55: - Renamed System::numDevices() to System::deviceCount() to be more compatible with PortAudio Chris@55: (although PortAudio uses Pa_CountDevices() instead, see comment). Chris@55: - Renamed HostApi::numDevices() to HostApi::deviceCount(). Chris@55: - Changed INC_ to INCLUDED_ in the header multiple include guards. Chris@55: - Changed the order of functions in the StreamConfiguration class' header. Chris@55: - Written some more info in PortAudioCpp.hxx (Doxygen). Chris@55: - Added CallbackStream.hxx and CallbackStream.cxx files. Chris@55: + Refactored StreamConfiguration to remove the duplication which was there. There is now a Chris@55: HalfDuplexStreamConfiguration class. Also made some improvements to these classes while Chris@55: doing the refactoring. Chris@55: + Moved all code files to source/portaudiocpp/ and changed includes. Chris@55: + Moved all header files to include/portaudiocpp/ to easy a binary build if needed. The project Chris@55: must be set to have .../include/ as a path to look for includes. Chris@55: + Refactored the Stream class into a Stream base class and a CallbackStream derived class. Chris@55: - Renamed Stream::usingXyz() to Stream::xyz(). Chris@55: - Updated some doxy comments. Chris@55: - Changed ``using namespace portaudio'' in .cxx files to ``namespace portaudio { ... }''. Chris@55: Chris@55: PortAudioCpp v19 revision 05 03/04/09: Chris@55: Chris@55: mblaauw: Chris@55: - Initial release on the PortAudio mailinglist. Chris@55: Chris@55: Chris@55: