casacore
|
#include <Vector.h>
Public Member Functions | |
Vector () | |
A zero-length Vector. More... | |
Vector (size_t Length) | |
A Vector with a defined length and origin of zero. More... | |
Vector (const IPosition &Length) | |
Vector (size_t Length, const T &initialValue) | |
A Vector with a defined length and origin of zero. More... | |
Vector (const IPosition &Length, const T &initialValue) | |
Vector (size_t Length, typename Array< T, Alloc >::uninitializedType, const Alloc &allocator=Alloc()) | |
An uninitialized Vector with a defined length. More... | |
Vector (const IPosition &Length, typename Array< T, Alloc >::uninitializedType, const Alloc &allocator=Alloc()) | |
Vector (const std::vector< T > &other, long long nr) | |
Create a Vector from the given std::vector "other." Make it length "nr" and copy over that many elements. More... | |
Vector (const std::vector< T > &other, const Alloc &allocator=Alloc()) | |
Create a Vector of length other.size() and copy over its values. More... | |
Vector (std::initializer_list< T > list) | |
Create a Vector from an initializer list. More... | |
Vector (const Vector< T, Alloc > &other) | |
Create a reference to other. More... | |
Vector (Vector< T, Alloc > &&source) noexcept | |
Move. More... | |
Vector (const Array< T, Alloc > &other) | |
Create a reference to the other array. More... | |
Vector (const IPosition &shape, T *storage, StorageInitPolicy policy=COPY) | |
Create an Vector of a given shape from a pointer. More... | |
Vector (const IPosition &shape, T *storage, StorageInitPolicy policy, Alloc &allocator) | |
Create an Vector of a given shape from a pointer. More... | |
Vector (const IPosition &shape, const T *storage) | |
Create an Vector of a given shape from a pointer. More... | |
template<typename InputIterator > | |
Vector (InputIterator startIter, InputIterator endIter, const Alloc &allocator=Alloc()) | |
template<typename U , typename V > | |
Vector (const std::vector< U, V > &other) | |
Create a Vector from an STL vector (see tovector() in Array for the reverse operation). More... | |
template<typename Iterator > | |
Vector (Iterator first, size_t size, int dummy) | |
Create a Vector from a container iterator and its length. More... | |
void | resize (size_t len, bool copyValues=false) |
virtual void | resize (const IPosition &len, bool copyValues=false) final override |
Resize the array and optionally copy the values. More... | |
Vector< T, Alloc > & | assign_conforming (const Vector< T, Alloc > &source) |
Vector< T, Alloc > & | assign_conforming (Vector< T, Alloc > &&source) |
Vector< T, Alloc > & | assign_conforming (const Array< T, Alloc > &source) |
source must be a 1-dimensional array. More... | |
Vector< T, Alloc > & | assign_conforming (Array< T, Alloc > &&source) |
Vector< T, Alloc > & | operator= (const Vector< T, Alloc > &source) |
Vector< T, Alloc > & | operator= (Vector< T, Alloc > &&source) |
Vector< T, Alloc > & | operator= (const Array< T, Alloc > &source) |
Vector< T, Alloc > & | operator= (Array< T, Alloc > &&source) |
T & | operator[] (size_t index) |
Convert a Vector to a Block, resizing the block and copying values. More... | |
const T & | operator[] (size_t index) const |
T & | operator() (const IPosition &i) |
const T & | operator() (const IPosition &i) const |
T & | operator() (size_t index) |
const T & | operator() (size_t index) const |
Vector< T, Alloc > | operator() (const Slice &slice) |
Take a slice of this vector. More... | |
const Vector< T, Alloc > | operator() (const Slice &slice) const |
Array< T, Alloc > | operator() (const IPosition &blc, const IPosition &trc, const IPosition &incr) |
Slice using IPositions. More... | |
const Array< T, Alloc > | operator() (const IPosition &blc, const IPosition &trc, const IPosition &incr) const |
Array< T, Alloc > | operator() (const IPosition &blc, const IPosition &trc) |
const Array< T, Alloc > | operator() (const IPosition &blc, const IPosition &trc) const |
Array< T, Alloc > | operator() (const Slicer &slicer) |
const Array< T, Alloc > | operator() (const Slicer &slicer) const |
MaskedArray< T > | operator() (const LogicalArray &mask) const |
The array is masked by the input LogicalArray. More... | |
MaskedArray< T > | operator() (const LogicalArray &mask) |
Return a MaskedArray. More... | |
MaskedArray< T > | operator() (const MaskedLogicalArray &mask) const |
The array is masked by the input MaskedLogicalArray. More... | |
MaskedArray< T > | operator() (const MaskedLogicalArray &mask) |
Return a MaskedArray. More... | |
const IPosition & | shape () const |
The length of the Vector. More... | |
void | shape (int &Shape) const |
virtual bool | ok () const final override |
Verify that dimensionality is 1 and then call Array<T>::ok() More... | |
Public Member Functions inherited from casacore::Array< T, Alloc > | |
Array (const Alloc &allocator=Alloc()) | |
Result has dimensionality of zero, and nelements is zero. More... | |
Array (const IPosition &shape, const Alloc &allocator=Alloc()) | |
Create an array of the given shape, i.e. More... | |
Array (const IPosition &shape, const T &initialValue, const Alloc &allocator=Alloc()) | |
Create an array of the given shape and initialize it with the initial value. More... | |
Array (const IPosition &shape, uninitializedType, const Alloc &allocator=Alloc()) | |
Constructor to create an uninitialized array. More... | |
Array (std::initializer_list< T > list, const Alloc &allocator=Alloc()) | |
Construct a one-dimensional array from an initializer list. More... | |
Array (const Array< T, Alloc > &other) | |
After construction, this and other reference the same storage. More... | |
Array (Array< T, Alloc > &&source) noexcept | |
Source will be empty after this call. More... | |
Array (const IPosition &shape, T *storage, StorageInitPolicy policy=COPY, const Alloc &allocator=Alloc()) | |
Create an Array of a given shape from a pointer. More... | |
Array (const IPosition &shape, const T *storage) | |
Create an Array of a given shape from a pointer. More... | |
template<typename InputIterator > | |
Array (const IPosition &shape, InputIterator startIter, const Alloc &allocator=Alloc()) | |
Construct an array from an iterator and a shape. More... | |
virtual | ~Array () noexcept |
Frees up storage only if this array was the last reference to it. More... | |
virtual std::unique_ptr< ArrayBase > | makeArray () const override |
Make an empty array of the same template type. More... | |
Alloc & | allocator () |
Retrieve the allocator associated with this array. More... | |
const Alloc & | allocator () const |
void | assign (const Array< T, Alloc > &other) |
Assign the other array to this array. More... | |
void | assignBase (const ArrayBase &other, bool checkType=true) override |
Assign the source array to this array. More... | |
void | set (const T &value) |
Set every element of the array to "value." Also could use the assignment operator which assigns an array from a scalar. More... | |
template<typename Callable > | |
void | apply (Callable function) |
Apply the function to every element of the array. More... | |
virtual void | reference (const Array< T, Alloc > &other) |
After invocation, this array and other reference the same storage. More... | |
Array< T, Alloc > & | assign_conforming (const Array< T, Alloc > &other) |
Copy the values in other to this. More... | |
template<typename MaskAlloc > | |
Array< T, Alloc > & | assign_conforming (const MaskedArray< T, Alloc, MaskAlloc > &marray) |
Copy to this those values in marray whose corresponding elements in marray's mask are true. More... | |
Array< T, Alloc > & | operator= (const Array< T, Alloc > &other) |
TODO we should change the semantics. More... | |
template<typename MaskAlloc > | |
Array< T, Alloc > & | operator= (const MaskedArray< T, Alloc, MaskAlloc > &marray) |
Calls assign_conforming(). More... | |
Array< T, Alloc > & | operator= (Array< T, Alloc > &&other) |
The move operator takes the storage from the given array. More... | |
Array< T, Alloc > & | operator= (const T &value) |
Set every element of this array to "value". More... | |
Array< T, Alloc > | copy () const |
This makes a copy of the array and returns it. More... | |
void | copyMatchingPart (const Array< T, Alloc > &from) |
This function copies the matching part of from array to this array. More... | |
void | unique () |
This ensures that this array does not reference any other storage. More... | |
template<class U > | |
void | tovector (std::vector< T, U > &out) const |
Create an STL vector from an Array. More... | |
std::vector< T > | tovector () const |
Array< T, Alloc > | reform (const IPosition &shape) const |
It is occasionally useful to have an array which access the same storage appear to have a different shape. More... | |
bool | reformOrResize (const IPosition &newShape, size_t resizePercentage=0, bool resizeIfNeeded=true) |
Having an array that can be reused without requiring reallocation can be useful for large arrays. More... | |
bool | adjustLastAxis (const IPosition &newShape, size_t resizePercentage=0, bool resizeIfNeeded=true) |
Use this method to extend or reduce the last dimension of an array. More... | |
size_t | capacity () const |
Returns the number of elements allocated. More... | |
Array< T, Alloc > | nonDegenerate (size_t startingAxis=0, bool throwIfError=true) const |
These member functions remove degenerate (ie. More... | |
Array< T, Alloc > | nonDegenerate (const IPosition &ignoreAxes) const |
void | nonDegenerate (const Array< T, Alloc > &other, size_t startingAxis=0, bool throwIfError=true) |
void | nonDegenerate (const Array< T, Alloc > &other, const IPosition &ignoreAxes) |
void | removeDegenerate (size_t startingAxis=0, bool throwIfError=true) |
Remove degenerate axes from this Array object. More... | |
void | removeDegenerate (const IPosition &ignoreAxes) |
const Array< T, Alloc > | addDegenerate (size_t numAxes) const |
This member function returns an Array reference with the specified number of extra axes, all of length one, appended to the end of the Array. More... | |
Array< T, Alloc > | addDegenerate (size_t numAxes) |
void | resize () |
Make this array a different shape. More... | |
T & | operator() (const IPosition &) |
Access a single element of the array. More... | |
const T & | operator() (const IPosition &) const |
Array< T, Alloc > | operator() (const IPosition &start, const IPosition &end) |
Get a reference to an array section extending from start to end (inclusive). More... | |
const Array< T, Alloc > | operator() (const IPosition &start, const IPosition &end) const |
Array< T, Alloc > | operator() (const IPosition &start, const IPosition &end, const IPosition &inc) |
Along the ith axis, every inc[i]'th element is chosen. More... | |
const Array< T, Alloc > | operator() (const IPosition &start, const IPosition &end, const IPosition &inc) const |
Array< T, Alloc > | operator() (const Slicer &) |
Get a reference to an array section using a Slicer. More... | |
const Array< T, Alloc > | operator() (const Slicer &) const |
std::unique_ptr< ArrayBase > | getSection (const Slicer &) const override |
Get a reference to a section of an array. More... | |
Array< T, Alloc > | operator[] (size_t i) const |
Get the subset given by the i-th value of the last axis. More... | |
Array< T, Alloc > | diagonals (size_t firstAxis=0, long long diag=0) const |
Get the diagonal of each matrix part in the full array. More... | |
const MaskedArray< T > | operator() (const LogicalArray &mask) const |
The array is masked by the input LogicalArray. More... | |
MaskedArray< T > | operator() (const LogicalArray &mask) |
const MaskedArray< T > | operator() (const MaskedLogicalArray &mask) const |
The array is masked by the input MaskedLogicalArray. More... | |
MaskedArray< T > | operator() (const MaskedLogicalArray &mask) |
size_t | nrefs () const |
The number of references the underlying storage has assigned to it. More... | |
bool | conform (const Array< T, Alloc > &other) const |
Are the shapes identical? More... | |
bool | conform (const MaskedArray< T > &other) const |
T * | data () |
Get a pointer to the beginning of the array. More... | |
const T * | data () const |
T * | getStorage (bool &deleteIt) |
Generally use of this should be shunned, except to use a FORTRAN routine or something similar. More... | |
const T * | getStorage (bool &deleteIt) const |
void * | getVStorage (bool &deleteIt) override |
The following functions behave the same as the corresponding getStorage functions in the derived templated Array class. More... | |
const void * | getVStorage (bool &deleteIt) const override |
void | putStorage (T *&storage, bool deleteAndCopy) |
putStorage() is normally called after a call to getStorage() (cf). More... | |
void | putVStorage (void *&storage, bool deleteAndCopy) override |
void | freeStorage (const T *&storage, bool deleteIt) const |
If deleteIt is set, delete "storage". More... | |
void | freeVStorage (const void *&storage, bool deleteIt) const override |
virtual void | takeStorage (const IPosition &shape, T *storage, StorageInitPolicy policy=COPY, const Alloc &allocator=Alloc()) |
Replace the data values with those in the pointer storage . More... | |
virtual void | takeStorage (const IPosition &shape, const T *storage, const Alloc &allocator=Alloc()) |
Since the pointer is const, a copy is always taken. More... | |
std::unique_ptr< ArrayPositionIterator > | makeIterator (size_t byDim) const override |
Create an ArrayIterator object of the correct type. More... | |
iterator | begin () |
Get the begin iterator object for any array. More... | |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
contiter | cbegin () |
Get the begin iterator object for a contiguous array. More... | |
const_contiter | cbegin () const |
contiter | cend () |
const_contiter | cend () const |
Public Member Functions inherited from casacore::ArrayBase | |
ArrayBase () noexcept | |
ArrayBase (const IPosition &shape) | |
Create an array of the given shape, i.e. More... | |
ArrayBase (const ArrayBase &other) | |
Copy constructor. More... | |
ArrayBase (ArrayBase &&source) noexcept | |
ArrayBase & | assign (const ArrayBase &) |
Assignment. More... | |
ArrayBase & | operator= (const ArrayBase &)=delete |
ArrayBase & | operator= (ArrayBase &&) noexcept |
virtual | ~ArrayBase () noexcept |
Destructor. More... | |
size_t | ndim () const |
The dimensionality of this array. More... | |
size_t | nelements () const |
How many elements does this array have? Product of all axis lengths. More... | |
size_t | size () const |
bool | empty () const |
Is the array empty (i.e. More... | |
bool | contiguousStorage () const |
Are the array data contiguous? If they are not contiguous, getStorage (see below) needs to make a copy. More... | |
const IPosition & | shape () const |
The length of each axis. More... | |
IPosition | endPosition () const |
A convenience function: endPosition(i) = shape(i) - 1; i.e. More... | |
const IPosition & | steps () const |
Return steps to be made if stepping one element in a dimension. More... | |
void | validateConformance (const ArrayBase &) const |
Various helper functions. More... | |
void | validateIndex (const IPosition &) const |
void | validateIndex (size_t index) const |
void | validateIndex (size_t index1, size_t index2) const |
void | validateIndex (size_t index1, size_t index2, size_t index3) const |
Protected Member Functions | |
virtual void | doNonDegenerate (const Array< T > &other, const IPosition &ignoreAxes) final override |
Remove the degenerate axes from other and store result in this vector. More... | |
virtual size_t | fixedDimensionality () const final override |
Subclasses can return their dimensionality. More... | |
Protected Member Functions inherited from casacore::Array< T, Alloc > | |
Array (Array< T, Alloc > &&source, const IPosition &shapeForSource) noexcept | |
Source will be empty with given shape after this call. More... | |
void | swap (Array< T, Alloc > &other) |
Swap this array with another array. More... | |
virtual void | preTakeStorage (const IPosition &) |
pre/post processing hook of takeStorage() for subclasses. More... | |
virtual void | postTakeStorage () |
void | checkBeforeResize (const IPosition &newShape) |
This function is called when this array is about to be resized, before any work is done. More... | |
virtual void | checkAssignableType (ArrayBase &arrayBase) const |
virtual void | doNonDegenerate (const Array< T, Alloc > &other, const IPosition &ignoreAxes) |
Remove the degenerate axes from the Array object. More... | |
void | makeSteps () |
Fill the steps and the end for a derived class. More... | |
void | setEndIter () |
Set the end iterator. More... | |
Protected Member Functions inherited from casacore::ArrayBase | |
ArrayBase (ArrayBase &&source, const IPosition &shapeForSource) noexcept | |
For subclasses, this move constructor allows the moved-from object to obtain a given shape after resizing. More... | |
void | swap (ArrayBase &source) noexcept |
bool | reformOrResize (const IPosition &newShape, bool resizeIfNeeded, size_t nReferences, long long nElementsAllocated, bool copyDataIfNeeded, size_t resizePercentage) |
Either reforms the array if size permits or resizes it to the new shape. More... | |
bool | isStorageContiguous () const |
Determine if the storage of a subset is contiguous. More... | |
void | checkVectorShape () |
Check if the shape of a vector is correct. More... | |
void | checkMatrixShape () |
Check if the shape of a matrix is correct. More... | |
void | checkCubeShape () |
Check if the shape of a cube is correct. More... | |
void | baseReform (ArrayBase &tmp, const IPosition &shape, bool strict=true) const |
Reform the array to a shape with the same nr of elements. More... | |
void | baseNonDegenerate (const ArrayBase &other, const IPosition &ignoreAxes) |
Remove the degenerate axes from the Array object. More... | |
void | baseAddDegenerate (ArrayBase &, size_t numAxes) |
These member functions return an Array reference with the specified number of extra axes, all of length one, appended to the end of the Array. More... | |
size_t | makeSubset (ArrayBase &out, const IPosition &b, const IPosition &e, const IPosition &i) |
Make a subset of an array. More... | |
size_t | makeDiagonal (size_t firstAxis, long long diag) |
Set the length and stride such that the diagonal of the matrices defined by two consecutive axes is formed. More... | |
bool | conform2 (const ArrayBase &other) const |
Are the shapes identical? More... | |
void | baseMakeSteps () |
Make the indexing step sizes. More... | |
bool | copyVectorHelper (const ArrayBase &other) |
Helper function for templated Vector class. More... | |
Private Member Functions | |
Vector< T, Alloc > & | assign_conforming_implementation (const Vector< T, Alloc > &v, std::false_type isCopyable) |
Vector< T, Alloc > & | assign_conforming_implementation (const Vector< T, Alloc > &v, std::true_type isCopyable) |
void | initVector (const std::vector< T > &, long long nr) |
Helper functions for constructors. More... | |
template<typename InputIterator > | |
Vector (InputIterator startIter, InputIterator endIter, const Alloc &allocator, std::false_type) | |
The following two constructors are used to make distinguish between Vector<literal>(literal size, literal value) and Vector<literal>(iterator, iterator) More... | |
template<typename InputIterator > | |
Vector (InputIterator startIter, InputIterator endIter, const Alloc &allocator, std::true_type) | |
Additional Inherited Members | |
Public Types inherited from casacore::Array< T, Alloc > | |
typedef Alloc | allocator_type |
Define the STL-style iterator functions (only forward iterator). More... | |
typedef T | value_type |
Element type. More... | |
typedef const T & | const_reference |
TODO This is how std containers define a reference type, but the name 'reference' is already taken by a method. More... | |
typedef T * | pointer |
Pointer to an element type. More... | |
typedef const T * | const_pointer |
Constant pointer to the element type. More... | |
typedef IteratorSTL | iterator |
typedef ConstIteratorSTL | const_iterator |
typedef T * | contiter |
typedef const T * | const_contiter |
Static Public Member Functions inherited from casacore::ArrayBase | |
static unsigned | arrayVersion () |
Array version for major change (used by ArrayIO). More... | |
Static Public Attributes inherited from casacore::Array< T, Alloc > | |
static struct casacore::Array::uninitializedType | uninitialized |
Static Protected Member Functions inherited from casacore::Array< T, Alloc > | |
static void | copyToContiguousStorage (T *dst, Array< T, Alloc > const &src) |
Protected Attributes inherited from casacore::Array< T, Alloc > | |
std::shared_ptr< arrays_internal::Storage< T, Alloc > > | data_p |
Shared pointer to a Storage that contains the data. More... | |
T * | begin_p |
This pointer is adjusted to point to the first element of the array. More... | |
T * | end_p |
The end for an STL-style iteration. More... | |
Protected Attributes inherited from casacore::ArrayBase | |
size_t | nels_p |
Number of elements in the array. More... | |
size_t | ndimen_p |
Dimensionality of the array. More... | |
bool | contiguous_p |
Are the data contiguous? More... | |
IPosition | length_p |
Used to hold the shape, increment into the underlying storage and originalLength of the array. More... | |
IPosition | inc_p |
IPosition | originalLength_p |
IPosition | steps_p |
Used to hold the step to next element in each dimension. More... | |
A 1-D Specialization of the Array class
Vector objects are one-dimensional specializations (e.g., more convenient and efficient indexing) of the general Array class. You might also want to look at the Array documentation to see inherited functionality.
Generally the member functions of Array are also available in Vector versions which take an integer where the array needs an IPosition. Since the Vector is one-dimensional, the IPositions are overkill, although you may use those versions if you want to.
Slices may be taken with the Slice class. To take a slice, one "indexes" with Slice(start, length, inc) where end and inc are optional.
Element-by-element arithmetic and logical operations are available (in aips/ArrayMath.h and aips/ArrayLogical.h) as well as dot and cross products (in aips/MatrixMath.h).
A Vector can be constructed from an STL vector
. The reverse operation (Array::tovector()
) can construct an STL vector
from any Array.
Tip: To create any other STL container from an Array (or the reverse), always create from/to a vector
, and use the range constructor to create from/to others (like set, list, deque);
As with the Arrays, if the preprocessor symbol AIPS_DEBUG is defined at compile time invariants will be checked on entry to most member functions. Additionally, if AIPS_ARRAY_INDEX_CHECK is defined index operations will be bounds-checked. Neither of these should be defined for production code.
casacore::Vector< T, Alloc >::Vector | ( | ) |
A zero-length Vector.
|
explicit |
A Vector with a defined length and origin of zero.
|
explicit |
casacore::Vector< T, Alloc >::Vector | ( | size_t | Length, |
const T & | initialValue | ||
) |
A Vector with a defined length and origin of zero.
Fill it with the initial value.
casacore::Vector< T, Alloc >::Vector | ( | const IPosition & | Length, |
const T & | initialValue | ||
) |
casacore::Vector< T, Alloc >::Vector | ( | size_t | Length, |
typename Array< T, Alloc >::uninitializedType | , | ||
const Alloc & | allocator = Alloc() |
||
) |
An uninitialized Vector with a defined length.
casacore::Vector< T, Alloc >::Vector | ( | const IPosition & | Length, |
typename Array< T, Alloc >::uninitializedType | , | ||
const Alloc & | allocator = Alloc() |
||
) |
casacore::Vector< T, Alloc >::Vector | ( | const std::vector< T > & | other, |
long long | nr | ||
) |
|
explicit |
casacore::Vector< T, Alloc >::Vector | ( | std::initializer_list< T > | list | ) |
Create a Vector from an initializer list.
casacore::Vector< T, Alloc >::Vector | ( | const Vector< T, Alloc > & | other | ) |
Create a reference to other.
|
noexcept |
Move.
casacore::Vector< T, Alloc >::Vector | ( | const Array< T, Alloc > & | other | ) |
Create a reference to the other array.
It is always possible if the array has zero or one axes. If it has > 1 axes, it is only possible if the array has at most one axis with length > 1. In that case the degenerated axes are removed.
casacore::Vector< T, Alloc >::Vector | ( | const IPosition & | shape, |
T * | storage, | ||
StorageInitPolicy | policy = COPY |
||
) |
Create an Vector of a given shape from a pointer.
casacore::Vector< T, Alloc >::Vector | ( | const IPosition & | shape, |
T * | storage, | ||
StorageInitPolicy | policy, | ||
Alloc & | allocator | ||
) |
Create an Vector of a given shape from a pointer.
casacore::Vector< T, Alloc >::Vector | ( | const IPosition & | shape, |
const T * | storage | ||
) |
Create an Vector of a given shape from a pointer.
Because the pointer is const, a copy is always made.
casacore::Vector< T, Alloc >::Vector | ( | InputIterator | startIter, |
InputIterator | endIter, | ||
const Alloc & | allocator = Alloc() |
||
) |
|
explicit |
Create a Vector from an STL vector (see tovector()
in Array for the reverse operation).
Tip: Both this constructor and the tovector() are defined in Vector2;cc
;
It does implicit promotion/demotion of the type U if different from T.
casacore::Vector< T, Alloc >::Vector | ( | Iterator | first, |
size_t | size, | ||
int | dummy | ||
) |
|
private |
The following two constructors are used to make distinguish between Vector<literal>(literal size, literal value) and Vector<literal>(iterator, iterator)
|
private |
Vector<T, Alloc>& casacore::Vector< T, Alloc >::assign_conforming | ( | Array< T, Alloc > && | source | ) |
Vector<T, Alloc>& casacore::Vector< T, Alloc >::assign_conforming | ( | const Array< T, Alloc > & | source | ) |
source must be a 1-dimensional array.
|
inline |
Definition at line 183 of file Vector.h.
References casacore::Vector< T, Alloc >::assign_conforming_implementation().
Referenced by casacore::Vector< T, Alloc >::operator=().
Vector<T, Alloc>& casacore::Vector< T, Alloc >::assign_conforming | ( | Vector< T, Alloc > && | source | ) |
|
private |
Referenced by casacore::Vector< T, Alloc >::assign_conforming().
|
private |
|
finaloverrideprotectedvirtual |
Remove the degenerate axes from other and store result in this vector.
An exception is thrown if removing degenerate axes does not result in a vector.
|
inlinefinaloverrideprotectedvirtual |
Subclasses can return their dimensionality.
The Array class will make sure that whenever it is resized, the dimensionality is checked. Array's constructors do not check the dimensionality, because the subclass hasn't been created yet at that point. Subclasses should therefore make sure to call the constructors appropriately. For classes that return 0, any resize will be allowed.
Reimplemented from casacore::Array< T, Alloc >.
|
private |
Helper functions for constructors.
|
finaloverridevirtual |
Verify that dimensionality is 1 and then call Array<T>::ok()
Reimplemented from casacore::Array< T, Alloc >.
|
inline |
Definition at line 258 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Definition at line 260 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Slice using IPositions.
Required to be defined, otherwise the base class versions are hidden.
Definition at line 252 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Definition at line 255 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Definition at line 215 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Definition at line 217 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Return a MaskedArray.
Definition at line 277 of file Vector.h.
References casacore::mask(), and casacore::Array< T, Alloc >::operator()().
|
inline |
The array is masked by the input LogicalArray.
This mask must conform to the array.
Return a MaskedArray.
Definition at line 273 of file Vector.h.
References casacore::mask(), and casacore::Array< T, Alloc >::operator()().
|
inline |
Return a MaskedArray.
Definition at line 294 of file Vector.h.
References casacore::mask(), and casacore::Array< T, Alloc >::operator()().
|
inline |
The array is masked by the input MaskedLogicalArray.
The mask is effectively the AND of the internal LogicalArray and the internal mask of the MaskedLogicalArray. The MaskedLogicalArray must conform to the array.
Return a MaskedArray.
Definition at line 290 of file Vector.h.
References casacore::mask(), and casacore::Array< T, Alloc >::operator()().
Vector<T, Alloc> casacore::Vector< T, Alloc >::operator() | ( | const Slice & | slice | ) |
Take a slice of this vector.
Slices are always indexed starting at zero. This uses reference semantics, i.e. changing a value in the slice changes the original.
const Vector<T, Alloc> casacore::Vector< T, Alloc >::operator() | ( | const Slice & | slice | ) | const |
|
inline |
Definition at line 262 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Definition at line 264 of file Vector.h.
References casacore::Array< T, Alloc >::operator()().
|
inline |
Definition at line 219 of file Vector.h.
References casacore::Array< T, Alloc >::begin_p, casacore::ArrayBase::inc_p, and casacore::ArrayBase::validateIndex().
|
inline |
Definition at line 227 of file Vector.h.
References casacore::Array< T, Alloc >::begin_p, casacore::ArrayBase::inc_p, and casacore::ArrayBase::validateIndex().
|
inline |
Definition at line 200 of file Vector.h.
References casacore::Vector< T, Alloc >::assign_conforming().
|
inline |
Definition at line 198 of file Vector.h.
References casacore::Vector< T, Alloc >::assign_conforming().
|
inline |
Definition at line 194 of file Vector.h.
References casacore::Vector< T, Alloc >::assign_conforming().
|
inline |
Definition at line 196 of file Vector.h.
References casacore::Vector< T, Alloc >::assign_conforming().
|
inline |
Convert a Vector to a Block, resizing the block and copying values.
This is done this way to avoid having the simpler Block class containing dependencies on the Vector class. void toBlock(Block<T> &other) const;
Single-pixel addressing. If AIPS_ARRAY_INDEX_CHECK is defined, bounds checking is performed (not for [])..
Definition at line 211 of file Vector.h.
References casacore::Array< T, Alloc >::begin_p, casacore::ArrayBase::contiguous_p, and casacore::ArrayBase::inc_p.
|
inline |
Definition at line 213 of file Vector.h.
References casacore::Array< T, Alloc >::begin_p, casacore::ArrayBase::contiguous_p, and casacore::ArrayBase::inc_p.
|
finaloverridevirtual |
Resize the array and optionally copy the values.
The default implementation in ArrayBase throws an exception.
Reimplemented from casacore::Array< T, Alloc >.
|
inline |
Definition at line 168 of file Vector.h.
References casacore::ArrayBase::nelements(), and casacore::Array< T, Alloc >::resize().
Referenced by casacore::MSArrayParse::reset(), casacore::MSObservationParse::reset(), casacore::MSPolnParse::reset(), casacore::MSScanParse::reset(), casacore::MSSpwParse::reset(), casacore::MSStateParse::reset(), casacore::MSUvDistParse::reset(), and casacore::TableExprNodeSet::toArray().
|
inline |
The length of the Vector.
Definition at line 301 of file Vector.h.
References casacore::ArrayBase::length_p.
|
inline |
Definition at line 303 of file Vector.h.
References casacore::ArrayBase::length_p.