Go to the documentation of this file.
28 #ifndef TABLES_STINDARRAY_H
29 #define TABLES_STINDARRAY_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/DataMan/StArrayFile.h>
34 #include <casacore/casa/Arrays/IPosition.h>
35 #include <casacore/casa/BasicSL/Complex.h>
41 template<
class T>
class Array;
367 const void* dataPtr));
void getArrayuIntV(StManArrayFile &, Array< uInt > *dataPtr)
void getArrayBoolV(StManArrayFile &, Array< Bool > *dataPtr)
Get an array value from the file at the offset held in this object.
void getSlicefloatV(StManArrayFile &, const Slicer &, Array< float > *dataPtr)
void getSliceStringV(StManArrayFile &, const Slicer &, Array< String > *dataPtr)
void checkShape(const IPosition &userArrayShape, const IPosition &tableArrayShape) const
Throw an exception if the shape of the given array and the table array (slice) are not equal.
void putArrayIntV(StManArrayFile &, const Array< Int > *dataPtr)
Int64 fileOffset() const
Get the file offset.
static void putVecfloatV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void getArrayIntV(StManArrayFile &, Array< Int > *dataPtr)
void putSliceStringV(StManArrayFile &, const Slicer &, const Array< String > *dataPtr)
void getArraydoubleV(StManArrayFile &, Array< double > *dataPtr)
void getArrayInt64V(StManArrayFile &, Array< Int64 > *dataPtr)
void getSliceInt64V(StManArrayFile &, const Slicer &, Array< Int64 > *dataPtr)
void getArrayuCharV(StManArrayFile &, Array< uChar > *dataPtr)
static void getVecuIntV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
void getArrayComplexV(StManArrayFile &, Array< Complex > *dataPtr)
static void getVecShortV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
static void putVecBoolV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
Put a (type-dependent) vector part of a slice.
void putSliceDComplexV(StManArrayFile &, const Slicer &, const Array< DComplex > *dataPtr)
void putSliceBoolV(StManArrayFile &, const Slicer &, const Array< Bool > *dataPtr)
Put a section of the array into the file at the offset held in this object.
void getSliceuIntV(StManArrayFile &, const Slicer &, Array< uInt > *dataPtr)
void getSliceuCharV(StManArrayFile &, const Slicer &, Array< uChar > *dataPtr)
void putArrayuShortV(StManArrayFile &, const Array< uShort > *dataPtr)
void getArrayfloatV(StManArrayFile &, Array< float > *dataPtr)
void putSliceData(StManArrayFile &, const Slicer &ns, const void *value, const IPosition &userArrayShape, void(*putVec)(StManArrayFile &, Int64, uInt, uInt, uInt, uInt, const void *dataPtr))
Put sliced data, i.e.
uInt refCount(StManArrayFile &ios)
Get the reference count.
void getSliceDComplexV(StManArrayFile &, const Slicer &, Array< DComplex > *dataPtr)
static void putVecDComplexV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void putArrayInt64V(StManArrayFile &, const Array< Int64 > *dataPtr)
static void putVecuIntV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void getShape(StManArrayFile &ios)
Read the shape if not read yet.
void putArrayDComplexV(StManArrayFile &, const Array< DComplex > *dataPtr)
void putSliceInt64V(StManArrayFile &, const Slicer &, const Array< Int64 > *dataPtr)
void getSliceShortV(StManArrayFile &, const Slicer &, Array< Short > *dataPtr)
void getArrayShortV(StManArrayFile &, Array< Short > *dataPtr)
static void putVecStringV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
StIndArray(const StIndArray &)
Copy constructor.
void getSliceData(StManArrayFile &, const Slicer &ns, void *value, const IPosition &userArrayShape, void(*getVec)(StManArrayFile &, Int64, uInt, uInt, uInt, uInt, void *dataPtr))
Get sliced data, i.e.
void putArrayShortV(StManArrayFile &, const Array< Short > *dataPtr)
void getArrayDComplexV(StManArrayFile &, Array< DComplex > *dataPtr)
static void getVecuCharV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
void putArrayComplexV(StManArrayFile &, const Array< Complex > *dataPtr)
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.
void putArrayuCharV(StManArrayFile &, const Array< uChar > *dataPtr)
void putArrayBoolV(StManArrayFile &, const Array< Bool > *dataPtr)
Put an array value into the file at the offset held in this object.
void putSlicedoubleV(StManArrayFile &, const Slicer &, const Array< double > *dataPtr)
void getSliceBoolV(StManArrayFile &, const Slicer &, Array< Bool > *dataPtr)
Get a section of the array from the file at the offset held in this object.
void decrementRefCount(StManArrayFile &ios)
Decrement the reference count.
void putSliceShortV(StManArrayFile &, const Slicer &, const Array< Short > *dataPtr)
void incrementRefCount(StManArrayFile &ios)
Increment the reference count.
void putSliceIntV(StManArrayFile &, const Slicer &, const Array< Int > *dataPtr)
void getSliceComplexV(StManArrayFile &, const Slicer &, Array< Complex > *dataPtr)
this file contains all the compiler specific defines
static void getVecInt64V(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
LatticeExprNode length(const LatticeExprNode &expr, const LatticeExprNode &axis)
2-argument function to get the length of an axis.
StIndArray(Int64 fileOffset)
Construct the object with the given file offset.
static void getVecStringV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
static void putVecdoubleV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void putSliceComplexV(StManArrayFile &, const Slicer &, const Array< Complex > *dataPtr)
void getSliceIntV(StManArrayFile &, const Slicer &, Array< Int > *dataPtr)
static void putVecComplexV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void getSliceuShortV(StManArrayFile &, const Slicer &, Array< uShort > *dataPtr)
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
void putSlicefloatV(StManArrayFile &, const Slicer &, const Array< float > *dataPtr)
static void getVecuShortV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
static void putVecShortV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void copyData(StManArrayFile &ios, int dataType, const StIndArray &other)
Copy the data from another array.
static void putVecIntV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
static void getVecIntV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
void putArrayStringV(StManArrayFile &, const Array< String > *dataPtr)
void putSliceuIntV(StManArrayFile &, const Slicer &, const Array< uInt > *dataPtr)
static void getVecBoolV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
Get a (type-dependent) vector part of a slice.
static void putVecInt64V(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
static void getVecdoubleV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
Bool setShape(StManArrayFile &, int dataType, const IPosition &shape)
Set the shape and allocate the array in the file.
bool Bool
Define the standard types used by Casacore.
static void getVecComplexV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
void putSliceuShortV(StManArrayFile &, const Slicer &, const Array< uShort > *dataPtr)
static void putVecuCharV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void putArrayfloatV(StManArrayFile &, const Array< float > *dataPtr)
const IPosition & shape() const
Get the shape.
void getSlicedoubleV(StManArrayFile &, const Slicer &, Array< double > *dataPtr)
static void putVecuShortV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, const void *value)
void putArraydoubleV(StManArrayFile &, const Array< double > *dataPtr)
static void getVecDComplexV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
static void getVecfloatV(StManArrayFile &, Int64 fileOffset, uInt arrayStart, uInt length, uInt increment, uInt valueIndex, void *value)
void getArrayuShortV(StManArrayFile &, Array< uShort > *dataPtr)
void getArrayStringV(StManArrayFile &, Array< String > *dataPtr)
StIndArray & operator=(const StIndArray &)
Assignment.
void putArrayuIntV(StManArrayFile &, const Array< uInt > *dataPtr)
void putSliceuCharV(StManArrayFile &, const Slicer &, const Array< uChar > *dataPtr)