casacore::TableExprNodeArray Class Reference

Base class for arrays in table select expression. More...

#include <ExprNodeArray.h>

Inheritance diagram for casacore::TableExprNodeArray:
casacore::TableExprNodeBinary casacore::TableExprNodeRep casacore::TableExprFuncNodeArray casacore::TableExprNodeArrayAND casacore::TableExprNodeArrayBitAndInt casacore::TableExprNodeArrayBitNegate casacore::TableExprNodeArrayBitOrInt casacore::TableExprNodeArrayBitXorInt casacore::TableExprNodeArrayColumn casacore::TableExprNodeArrayConstBool casacore::TableExprNodeArrayConstDate casacore::TableExprNodeArrayConstDComplex casacore::TableExprNodeArrayConstDouble casacore::TableExprNodeArrayConstInt casacore::TableExprNodeArrayConstString casacore::TableExprNodeArrayDivide casacore::TableExprNodeArrayEQBool casacore::TableExprNodeArrayEQDate casacore::TableExprNodeArrayEQDComplex casacore::TableExprNodeArrayEQDouble casacore::TableExprNodeArrayEQInt casacore::TableExprNodeArrayEQRegex casacore::TableExprNodeArrayEQString casacore::TableExprNodeArrayGEDate casacore::TableExprNodeArrayGEDComplex casacore::TableExprNodeArrayGEDouble casacore::TableExprNodeArrayGEInt casacore::TableExprNodeArrayGEString casacore::TableExprNodeArrayGTDate casacore::TableExprNodeArrayGTDComplex casacore::TableExprNodeArrayGTDouble casacore::TableExprNodeArrayGTInt casacore::TableExprNodeArrayGTString casacore::TableExprNodeArrayINDate casacore::TableExprNodeArrayINDComplex casacore::TableExprNodeArrayINDouble casacore::TableExprNodeArrayINInt casacore::TableExprNodeArrayINString casacore::TableExprNodeArrayMIN casacore::TableExprNodeArrayMinus casacore::TableExprNodeArrayModulo casacore::TableExprNodeArrayNEBool casacore::TableExprNodeArrayNEDate casacore::TableExprNodeArrayNEDComplex casacore::TableExprNodeArrayNEDouble casacore::TableExprNodeArrayNEInt casacore::TableExprNodeArrayNERegex casacore::TableExprNodeArrayNEString casacore::TableExprNodeArrayNOT casacore::TableExprNodeArrayOR casacore::TableExprNodeArrayPart casacore::TableExprNodeArrayPlus casacore::TableExprNodeArrayTimes casacore::TableExprNodeArrayUnit casacore::TableExprNodeRecordFieldArray casacore::TableExprUDFNodeArray

List of all members.

Public Member Functions

 TableExprNodeArray (NodeDataType, OperType)
 Create the object.
 TableExprNodeArray (const TableExprNodeRep &node, NodeDataType, OperType)
 TableExprNodeArray (NodeDataType, OperType, const IPosition &shape)
 ~TableExprNodeArray ()
virtual TableExprNodeRep * makeConstantScalar ()
 Turn a constant array with one element into a scalar.
IPosition validateIndex (const IPosition &index, const ArrayBase &arr) const
 Validate the given index against the array's shape.
virtual const IPosition & getShape (const TableExprId &id)
 Get the shape of the array in the given row.
virtual MArray< Double > getArrayDouble (const TableExprId &id)
 The default implementation of getArrayDouble does getArrayInt and converts the result.
virtual MArray< DComplex > getArrayDComplex (const TableExprId &id)
 The default implementation of getArrayDComplex does getArrayDouble and converts the result.
virtual Bool hasBool (const TableExprId &id, Bool value)
 Does a value occur in the set?
virtual Bool hasInt (const TableExprId &id, Int64 value)
virtual Bool hasDouble (const TableExprId &id, Double value)
virtual Bool hasDComplex (const TableExprId &id, const DComplex &value)
virtual Bool hasString (const TableExprId &id, const String &value)
virtual Bool hasDate (const TableExprId &id, const MVTime &value)
virtual MArray< Bool > hasArrayBool (const TableExprId &id, const MArray< Bool > &value)
virtual MArray< Bool > hasArrayInt (const TableExprId &id, const MArray< Int64 > &value)
virtual MArray< Bool > hasArrayDouble (const TableExprId &id, const MArray< Double > &value)
virtual MArray< Bool > hasArrayDComplex (const TableExprId &id, const MArray< DComplex > &value)
virtual MArray< Bool > hasArrayString (const TableExprId &id, const MArray< String > &value)
virtual MArray< Bool > hasArrayDate (const TableExprId &id, const MArray< MVTime > &value)
virtual Bool getElemBool (const TableExprId &id, const Slicer &index)
 Get a single element from the array in the given row.
virtual Int64 getElemInt (const TableExprId &id, const Slicer &index)
virtual Double getElemDouble (const TableExprId &id, const Slicer &index)
virtual DComplex getElemDComplex (const TableExprId &id, const Slicer &index)
virtual String getElemString (const TableExprId &id, const Slicer &index)
virtual MVTime getElemDate (const TableExprId &id, const Slicer &index)
virtual MArray< Bool > getSliceBool (const TableExprId &id, const Slicer &)
 Get a slice of the array in the given row.
virtual MArray< Int64 > getSliceInt (const TableExprId &id, const Slicer &)
virtual MArray< Double > getSliceDouble (const TableExprId &id, const Slicer &)
virtual MArray< DComplex > getSliceDComplex (const TableExprId &id, const Slicer &)
virtual MArray< String > getSliceString (const TableExprId &id, const Slicer &)
virtual MArray< MVTime > getSliceDate (const TableExprId &id, const Slicer &)
virtual Array< Bool > getElemColumnBool (const Vector< uInt > &rownrs, const Slicer &)
 Get a single element for the entire column (used by sort).
virtual Array< uChar > getElemColumnuChar (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< Short > getElemColumnShort (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< uShort > getElemColumnuShort (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< Int > getElemColumnInt (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< uInt > getElemColumnuInt (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< Float > getElemColumnFloat (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< Double > getElemColumnDouble (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< Complex > getElemColumnComplex (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< DComplex > getElemColumnDComplex (const Vector< uInt > &rownrs, const Slicer &)
virtual Array< String > getElemColumnString (const Vector< uInt > &rownrs, const Slicer &)

Static Public Member Functions

static MArray< Int64 > makeArray (const IPosition &shape, Int64 value)
 Make an array with the given shape and fill it with the value.
static MArray< Double > makeArray (const IPosition &shape, Double value)
static MArray< DComplex > makeArray (const IPosition &shape, const DComplex &value)

Protected Attributes

IPosition varShape_p

Detailed Description

Base class for arrays in table select expression.

Intended use:

Internal

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25

Prerequisite

Synopsis

This class is the base class to represent an array. The actual storing of the array column is done by its derivations.

Definition at line 65 of file ExprNodeArray.h.


Constructor & Destructor Documentation

casacore::TableExprNodeArray::TableExprNodeArray ( NodeDataType  ,
OperType   
)

Create the object.

casacore::TableExprNodeArray::TableExprNodeArray ( const TableExprNodeRep &  node,
NodeDataType  ,
OperType   
)
casacore::TableExprNodeArray::TableExprNodeArray ( NodeDataType  ,
OperType  ,
const IPosition &  shape 
)
casacore::TableExprNodeArray::~TableExprNodeArray (  ) 

Member Function Documentation

virtual MArray<DComplex> casacore::TableExprNodeArray::getArrayDComplex ( const TableExprId &  id  )  [virtual]
virtual MArray<Double> casacore::TableExprNodeArray::getArrayDouble ( const TableExprId &  id  )  [virtual]
virtual Bool casacore::TableExprNodeArray::getElemBool ( const TableExprId &  id,
const Slicer &  index 
) [virtual]

Get a single element from the array in the given row.

Reimplemented in casacore::TableExprNodeArrayColumnBool.

virtual Array<Bool> casacore::TableExprNodeArray::getElemColumnBool ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]

Get a single element for the entire column (used by sort).

Reimplemented in casacore::TableExprNodeArrayColumnBool.

virtual Array<Complex> casacore::TableExprNodeArray::getElemColumnComplex ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<DComplex> casacore::TableExprNodeArray::getElemColumnDComplex ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<Double> casacore::TableExprNodeArray::getElemColumnDouble ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<Float> casacore::TableExprNodeArray::getElemColumnFloat ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<Int> casacore::TableExprNodeArray::getElemColumnInt ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<Short> casacore::TableExprNodeArray::getElemColumnShort ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<String> casacore::TableExprNodeArray::getElemColumnString ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<uChar> casacore::TableExprNodeArray::getElemColumnuChar ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<uInt> casacore::TableExprNodeArray::getElemColumnuInt ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual Array<uShort> casacore::TableExprNodeArray::getElemColumnuShort ( const Vector< uInt > &  rownrs,
const Slicer &   
) [virtual]
virtual MVTime casacore::TableExprNodeArray::getElemDate ( const TableExprId &  id,
const Slicer &  index 
) [virtual]
virtual DComplex casacore::TableExprNodeArray::getElemDComplex ( const TableExprId &  id,
const Slicer &  index 
) [virtual]
virtual Double casacore::TableExprNodeArray::getElemDouble ( const TableExprId &  id,
const Slicer &  index 
) [virtual]
virtual Int64 casacore::TableExprNodeArray::getElemInt ( const TableExprId &  id,
const Slicer &  index 
) [virtual]
virtual String casacore::TableExprNodeArray::getElemString ( const TableExprId &  id,
const Slicer &  index 
) [virtual]
virtual const IPosition& casacore::TableExprNodeArray::getShape ( const TableExprId &  id  )  [virtual]

Get the shape of the array in the given row.

This default implementation evaluates the value and returns its shape.

Reimplemented from casacore::TableExprNodeRep.

Reimplemented in casacore::TableExprNodeArrayColumn, and casacore::TableExprNodeRecordFieldArray.

virtual MArray<Bool> casacore::TableExprNodeArray::getSliceBool ( const TableExprId &  id,
const Slicer &   
) [virtual]

Get a slice of the array in the given row.

Reimplemented in casacore::TableExprNodeArrayColumnBool.

virtual MArray<MVTime> casacore::TableExprNodeArray::getSliceDate ( const TableExprId &  id,
const Slicer &   
) [virtual]
virtual MArray<DComplex> casacore::TableExprNodeArray::getSliceDComplex ( const TableExprId &  id,
const Slicer &   
) [virtual]
virtual MArray<Double> casacore::TableExprNodeArray::getSliceDouble ( const TableExprId &  id,
const Slicer &   
) [virtual]
virtual MArray<Int64> casacore::TableExprNodeArray::getSliceInt ( const TableExprId &  id,
const Slicer &   
) [virtual]
virtual MArray<String> casacore::TableExprNodeArray::getSliceString ( const TableExprId &  id,
const Slicer &   
) [virtual]
virtual MArray<Bool> casacore::TableExprNodeArray::hasArrayBool ( const TableExprId &  id,
const MArray< Bool > &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual MArray<Bool> casacore::TableExprNodeArray::hasArrayDate ( const TableExprId &  id,
const MArray< MVTime > &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual MArray<Bool> casacore::TableExprNodeArray::hasArrayDComplex ( const TableExprId &  id,
const MArray< DComplex > &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual MArray<Bool> casacore::TableExprNodeArray::hasArrayDouble ( const TableExprId &  id,
const MArray< Double > &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual MArray<Bool> casacore::TableExprNodeArray::hasArrayInt ( const TableExprId &  id,
const MArray< Int64 > &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual MArray<Bool> casacore::TableExprNodeArray::hasArrayString ( const TableExprId &  id,
const MArray< String > &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual Bool casacore::TableExprNodeArray::hasBool ( const TableExprId &  id,
Bool  value 
) [virtual]

Does a value occur in the set?

Reimplemented from casacore::TableExprNodeRep.

virtual Bool casacore::TableExprNodeArray::hasDate ( const TableExprId &  id,
const MVTime &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual Bool casacore::TableExprNodeArray::hasDComplex ( const TableExprId &  id,
const DComplex &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual Bool casacore::TableExprNodeArray::hasDouble ( const TableExprId &  id,
Double  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual Bool casacore::TableExprNodeArray::hasInt ( const TableExprId &  id,
Int64  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

virtual Bool casacore::TableExprNodeArray::hasString ( const TableExprId &  id,
const String &  value 
) [virtual]

Reimplemented from casacore::TableExprNodeRep.

static MArray<DComplex> casacore::TableExprNodeArray::makeArray ( const IPosition &  shape,
const DComplex &  value 
) [static]
static MArray<Double> casacore::TableExprNodeArray::makeArray ( const IPosition &  shape,
Double  value 
) [static]
static MArray<Int64> casacore::TableExprNodeArray::makeArray ( const IPosition &  shape,
Int64  value 
) [static]

Make an array with the given shape and fill it with the value.

virtual TableExprNodeRep* casacore::TableExprNodeArray::makeConstantScalar (  )  [virtual]

Turn a constant array with one element into a scalar.

It returns a zero pointer if not possible. The default implementation returns 0.

IPosition casacore::TableExprNodeArray::validateIndex ( const IPosition &  index,
const ArrayBase &  arr 
) const

Validate the given index against the array's shape.

Treat a negative as an index from the end (a la python) and replace it.


Member Data Documentation

Definition at line 186 of file ExprNodeArray.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1