summaryrefslogtreecommitdiff
path: root/portaudio/bindings/cpp/ChangeLog
blob: 1e96618ec6be3a8c2fec8400caca386c27b68d7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
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.

PortAudioCpp v19 revision 16 06/05/22:

	mblaauw:
	- 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.
	- Changed the code and projects (MSVC 7.1 only) to be up-to-date with PortAudio's new directory structure.
	- Added equivalents of the PaAsio_GetInputChannelName() and PaAsio_GetOutputChannelName() functions to the AsioDeviceAdapter wrapper-class (missing functions pointed out by David Moore).
	- Added code to PortAudio's main SVN repository.

PortAudioCpp v19 revision 15 (unknown release date):

	mblaauw:
	- Changed some exception handling code in HostApi's constructor.
	- Added accessors to PortAudio PaStream from PortAudioCpp Stream (their absence being pointed out
	by Tom Jordan).
	- Fixed a bug/typo in MemFunToCallbackInterfaceAdapter::init() thanks to Fredrik Viklund.
	- Fixed issue with concrete Stream classes possibly throwing an exception and fixed documentation w.r.t. this.
	- Moved files to portaudio/binding/cpp/. Made new msvc 7.1 projects to reflect the change and removed msvc 6.0 
	and 7.0 projects (because I can no longer maintain them myself). Gnu projects will probably need updating.

PortAudioCpp v19 revision 14 03/10/24:

	mblaauw:
	- Fixed some error handling bugs in Stream and System (pointed out by Tom Jordan).
	- Updated documentation a little (main page).
	- Fixed order of members so initializer list was in the right order in 
	StreamParameters (pointed out by Ludwig Schwardt).
	- Added new lines at EOF's (as indicated by Ludwig Schwardt).

PortAudioCpp v19 revision 13 03/10/19:

	lschwardt:
	- Added build files for GNU/Linux.
	- Fixed bug in Exception where the inherited what() member function (and destructor) had looser 
	exception specification (namely no exception specification, i.e. could throw anything) than 
	the std::exception base class's what() member function (which had throw(), i.e. no-throw guarantee).
	- Changed the iterators so that they have a set of public typedefs instead of deriving the C++ standard 
	library std::iterator<> struct. G++ 2.95 doesn't support std::exception<> and composition-by-aggregation 
	is preferred over composition-by-inheritance in this case.
	- Changed some minor things to avoid G++ warning messages.

	mblaauw:
	- Renamed this file (/WHATSNEW.txt) to /CHANGELOG.
	- Renamed /PA_ISSUES.txt to /PA_ISSUES.
	- Added /INSTALL file with some build info for GNU/Linux and VC6.
	- Added MSVC 6.0 projects for building PortAudioCpp as a statically or dynamically linkable library.
	- Moved build files to /build/(gnu/ or vc6/).
	- Moved Doxygen configuration files to /doc/ and output to /doc/api_reference/.
	- Added a /doc/README with some info how to generate Doxygen documentation.

PortAudioCpp v19 revision 12 03/09/02:

	mblaauw:
	- Updated code to reflect changes on V19-devel CVS branch.
	- Fixed some typos in the documentation.

PortAudioCpp v19 revision 11 03/07/31:

	mblaauw:
	- Renamed SingleDirecionStreamParameters to DirectionSpecificStreamParameters.
	- Implemented BlockingStream.
	- Updated code to reflect recent changes to PortAudio V19-devel.
	- Fixed a potential memory leak when an exception was thrown in the HostApi 
	constructor.
	- Renamed ``Latency'' to ``BufferSize'' in AsioDeviceAdapter.
	- Updated class documentation.

PortAudioCpp v19 revision 10 03/07/18:

	mblaauw:
	- SingleDirectionStreamParameters now has a (static) null() method.
	- StreamParameters uses references for the direction-specific stream parameters 
	instead of pointers (use null() method (above) instead of NULL).
	- StreamParameters and SingleDirectionStreamParameters must now be fully specified 
	and now default values are used (because this was not very useful in general and 
	only made things more complex).
	- Updated documentation.

PortAudioCpp v19 revision 09 03/06/25:

	mblaauw:
	- Changed some things in SingleDirectionStreamParameters to ease it's usage.
	- Placed all SingleDirectionStreamParameters stuff into a separate file.
	+ Totally redid the callback stuff, now it's less awkward and supports C++ functions.

PortAudioCpp v19 revision 08 03/06/20:

	mblaauw:
	- Made deconstructors for Device and HostApi private.
	+ Added a AsioDeviceWrapper host api specific device extension class.
	- Refactored Exception into a Exception base class and PaException and PaCppException 
	derived classes.
	- Added ASIO specific device info to the devs.cxx example.
	- Fixed a bug in System::hostApiCount() and System::defaultHostApi().
	+ Moved Device::null to System::nullDevice.
	- Fixed some bugs in Device and System.

PortAudioCpp v19 revision 07 03/06/08:

	mblaauw:
	- Updated some doxy comments.
	+ Renamed CbXyz to CallbackXyz.
	+ Renamed all ``configurations'' to ``parameters''.
	+ Renamed HalfDuplexStreamConfiguration to SingleDirectionStreamConfiguration.
	- Renamed SingleDirectionStreamParameters::streamParameters() to 
	SingleDirectionStreamParameters::paSteamParameters.
	- Added a non-constant version of SingleDirectionStreamParameters::paStreamParameters().
	- A few improvements to SingleDirectionStreamParameters.
	- Allowed AutoSystem to be created without initializing the System singleton 
	(using a ctor flag).
	- Added a BlockingStream class (not implemented for now).
	- Fixed many bugs in the implementation of the iterators.
	- Fixed a bug in Device::operator==().
	+ Added a C++ version of the patest_sine.c test/example.
	- Added a ctor for StreamParameters for a default half-duplex stream.
	- Added SingleDirectionStreamParameters::setDevice() and setNumChannels().
	- Renamed System::numHostApis() to System::hostApiCount().
	+ Rewrote the iterators and related classes. They are now fully STL compliant. The System now 
	has a static array of all HostApis and all Devices. Only the System can create HostApis and 
	Devices and they are non-copyable now. All HostApis and Devices are now passed by-reference.
	- Renamed (System::) getVersion() to version() and getVersionText() to versionText().
	- Renamed (Device::) numXyzChannels() to maxXyzChannels().
	- Changed some stuff in StreamParameters.
	+ Added a C++ version of the patest_devs.c test/example.

PortAudioCpp v19 revision 06 03/06/04:

	mblaauw:
	+ Added this file to the project (roughly, a `+' denotes a major change, a `-' a minor change).
	- Added System::deviceByIndex(), useful when a Device's index is stored for instance.
	- Renamed System::hostApiFromTypeId() to System::hostApiByTypeId().
	- Updated and added some Doxygen documentation.
	- Made Stream::usedIntputLatency(), Stream::usedOutputLatency() and 
	Stream::usedSampleRate() throw an paInternalError equivalent exception instead of paBadStreamPtr.
	- Changed exception handling in Stream::open() functions. They now follow the PA error handling 
	mechanism better and a couple of bugs regarding ownership of objects were fixed.
	- Renamed Device::isDefaultXyzDevice() to Device::isSystemDefaultXyzDevice().
	- Added Device::isHostApiDefaultXyzDevice().
	- Added StreamConfiguration::unsetFlag().
	- Removed CUSTOM from SampleDataFormat.
	- System::hostApiByTypeId() now throws an paInternalError if the type id was out-of-range; this 
	is a temporary work-around (see comments).
	- Changed CbInterface to use paCallbackFun() instead of operator()().
	- Renamed ``object'' to ``instance'' in CbMemFunAdapter.hxx.
	- Added StreamConfiguration::setXyzHostApiSpecificSampleFormat().
	- Added StreamConfiguration::isXyzSampleFormatHostApiSpecific().
	- Changed error handling in System::terminate(), it can now throw an Exception.
	- Added error handling in System::defaultHostApi().
	- Added error handling in System::hostApisEnd().
	- Changed some (but probably not all) C casts to C++ casts to avoid confusion with a 
	certain Python person.
	- Renamed RaiiSystem to AutoSystem (class and file) as this is a come common convention.
	- Renamed System::numDevices() to System::deviceCount() to be more compatible with PortAudio 
	(although PortAudio uses Pa_CountDevices() instead, see comment).
	- Renamed HostApi::numDevices() to HostApi::deviceCount().
	- Changed INC_ to INCLUDED_ in the header multiple include guards.
	- Changed the order of functions in the StreamConfiguration class' header.
	- Written some more info in PortAudioCpp.hxx (Doxygen).
	- Added CallbackStream.hxx and CallbackStream.cxx files.
	+ Refactored StreamConfiguration to remove the duplication which was there. There is now a 
	HalfDuplexStreamConfiguration class. Also made some improvements to these classes while 
	doing the refactoring.
	+ Moved all code files to source/portaudiocpp/ and changed includes.
	+ Moved all header files to include/portaudiocpp/ to easy a binary build if needed. The project 
	must be set to have .../include/ as a path to look for includes.
	+ Refactored the Stream class into a Stream base class and a CallbackStream derived class.
	- Renamed Stream::usingXyz() to Stream::xyz().
	- Updated some doxy comments.
	- Changed ``using namespace portaudio'' in .cxx files to ``namespace portaudio { ... }''.

PortAudioCpp v19 revision 05 03/04/09:

	mblaauw:
	- Initial release on the PortAudio mailinglist.