Go to the documentation of this file.
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/TaQL/MArrayBase.h>
69 class MArray:
public MArrayBase
116 itsArray.reference (other.itsArray);
117 referenceBase (other);
132 template <
typename U>
136 convertArray (
itsArray, from.array());
143 template <
typename U>
164 size_t flatten (T* out,
size_t size)
const;
172 mask()(start, end, stride));
188 flatten (vec.data(), itsArray.size());
195 if (size < itsArray.size()) {
197 " of output buffer is too small");
207 if (itsArray.contiguousStorage() &&
mask().contiguousStorage()) {
211 iter!=iterEnd; ++iter, ++miter) {
212 if (!*miter) out[nr++] = *iter;
218 iter!=iterEnd; ++iter, ++miter) {
219 if (!*miter) out[nr++] = *iter;
MArray()
Default constructor creates a null array.
A Vector of integers, for indexing into Array<T> objects.
void fill(const Array< U > &from)
Copy the array from a normal Array.
void reference(const MArray< T > &other)
Reference another array.
Base class for an array with an optional mask.
const IPosition & shape() const
The length of each axis.
Vector< T > flatten() const
Flatten the unmasked elements of the array to a vector.
MArray(const Array< T > &array)
Construct from an array without a mask.
contiter cbegin()
Get the begin iterator object for a contiguous array.
TableExprNode shape(const TableExprNode &array)
Function operating on any scalar or array resulting in a Double array containing the shape.
void fill(const MArray< U > &from)
Copy the array data and possible mask from another one.
this file contains all the compiler specific defines
const Array< T > & array() const
Get access to the array.
The base class for all Array exception classes.
LatticeExprNode mask(const LatticeExprNode &expr)
This function returns the mask of the given expression.
@ SHARE
Share means that the Array will just use the pointer (no copy), however the Array will NOT delete it ...
TableExprNode marray(const TableExprNode &array, const TableExprNode &mask)
Form a masked array.
static String toString(const T &value)
Convert a value to a String.
template <class T, class U> class vector;
bool Bool
Define the standard types used by Casacore.
MArray(const Array< T > &array, const Array< Bool > &mask, Bool isNull=False)
Construct from an array and a mask.
A 1-D Specialization of the Array class.
MArray< T > operator()(const IPosition &start, const IPosition &end, const IPosition &stride)
Get a subset of the array.
MArray(const Array< T > &array, const MArrayBase &marray)
Construct from an array with the mask and null from another MArray.
void resize(const IPosition &shape, Bool useMask)
Resize the array and optionally the mask.
Class to handle an Array with an optional mask.
MArray(const MArray< T > &array, const MArray< Bool > &mask)
Construct from two MArrays, one the array, the other the mask.