Change log Library_casa_Arrays for AIPS++ version 1.9
A summary of the changes is available.
Change-id: 0156
Author: Ger van Diepen
Date: 2003/08/13
Area: Library casa Arrays
Category: New Code
Summary: Added function assign
Array::operator= is the function to assign one array to another (using copy semantics). One of its properties is that the shapes of the arrays have to match or that the destination array is empty.
Some people did not like that property as they wanted an automatic resize if the shapes mismatch.
For that reason the function assign has been added to the classes Array, Vector, Matrix, and Cube. It resizes the array if needed and uses operator= thereafter to do the actual assignment.
Note that assign should only be used when needed. For example, when assigning an array to a slice of another array, operator= should always be used, because in such a case the shapes should match.
Change-id: 0162
Author: Ger van Diepen
Date: 2004/12/23
Area: Library casa Arrays
Category: New Code
Summary: Added arbitrary axes to ArrayIterator classes
ArrayIterator (and its derived classes VectorIterator and MatrixIterator) have been extended with the ability to iterate over any combination of axes.
For example, in VectorIterator the cursor axis can now be axis 2. Before it could only be axis 0.
Change-id: 0166
Author: Ger van Diepen
Date: 2005/04/04
Area: Library casa Arrays
Category: New Code
Summary: Vector accepts Array with > 1 dimensions
The Vector constructor taking an Array has been changed such that now it accepts an Array with more than one dimensions as long as at most one dimensions has a length > 1. In this way one can easily make a Vector from a 1-dim slice of an Array without having to use the reform function.
Furthermore the reference function has been changed to accept a const Array
object. It makes it possible to use a temporary Array object (e.g. a slice) directly instead of having to create an intermediate Array object. Several Array examples already contained this until now incorrect behaviour.
Finally The Matrix and Cube constructor accepting an Array can now correctly handle a 0-dim Array.