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