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