casacore
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
casacore::TableExprNodeSet Class Reference

Class to hold multiple table expression nodes. More...

#include <ExprNodeSet.h>

Public Member Functions

 TableExprNodeSet ()
 Construct an empty set. More...
 
 TableExprNodeSet (const IPosition &)
 Construct from an IPosition. More...
 
 TableExprNodeSet (const Slicer &)
 Construct from a Slicer. More...
 
 TableExprNodeSet (const Vector< rownr_t > &rownrs, const TableExprNodeSet &)
 Construct a set with n*set.size() elements where n is the number of rows. More...
 
 TableExprNodeSet (const TableExprNodeSet &)
 
 ~TableExprNodeSet ()
 
void add (const TableExprNodeSetElem &, Bool adaptType=False)
 Add an element to the set. More...
 
void show (ostream &os, uInt indent) const
 Show the node. More...
 
virtual void getAggrNodes (std::vector< TableExprNodeRep * > &aggr)
 Get the nodes representing an aggregate function. More...
 
virtual void getColumnNodes (std::vector< TableExprNodeRep * > &cols)
 Get the nodes representing a table column. More...
 
void checkEqualDataTypes () const
 Check if the data type of the set elements are the same. More...
 
Bool isSingle () const
 Contains the set only single elements? Single means that only single values are given (thus end nor incr). More...
 
Bool isDiscrete () const
 Contains the set only discrete elements? Discrete means that no continuous ranges are given, but discrete ranges (using :) are possible. More...
 
Bool isBounded () const
 Is the set fully bounded (discrete and no undefined end values)? More...
 
size_t size () const
 Get the number of elements. More...
 
size_t nelements () const
 For backward compatibility. More...
 
const TableExprNodeSetElemoperator[] (size_t index) const
 Get the i-th element. More...
 
Bool hasArrays () const
 Contains the set array values? More...
 
TENShPtr setOrArray () const
 Try to convert the set to an array. More...
 
template<typename T >
MArray< T > toArray (const TableExprId &id) const
 
virtual MArray< BoolgetArrayBool (const TableExprId &id)
 Get an array value for this bounded set in the given row. More...
 
virtual MArray< Int64getArrayInt (const TableExprId &id)
 
virtual MArray< DoublegetArrayDouble (const TableExprId &id)
 
virtual MArray< DComplex > getArrayDComplex (const TableExprId &id)
 
virtual MArray< StringgetArrayString (const TableExprId &id)
 
virtual MArray< MVTimegetArrayDate (const TableExprId &id)
 
virtual Bool hasBool (const TableExprId &id, Bool value)
 Does a value occur in the set? More...
 
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< BoolhasArrayBool (const TableExprId &id, const MArray< Bool > &value)
 
virtual MArray< BoolhasArrayInt (const TableExprId &id, const MArray< Int64 > &value)
 
virtual MArray< BoolhasArrayDouble (const TableExprId &id, const MArray< Double > &value)
 
virtual MArray< BoolhasArrayDComplex (const TableExprId &id, const MArray< DComplex > &value)
 
virtual MArray< BoolhasArrayString (const TableExprId &id, const MArray< String > &value)
 
virtual MArray< BoolhasArrayDate (const TableExprId &id, const MArray< MVTime > &value)
 
virtual void adaptSetUnits (const Unit &)
 Let a set node convert itself to the given unit. More...
 
- Public Member Functions inherited from casacore::TableExprNodeRep
 TableExprNodeRep (NodeDataType, ValueType, OperType, ArgType, ExprType, Int ndim, const IPosition &shape, const Table &table)
 Construct a node. More...
 
 TableExprNodeRep (NodeDataType, ValueType, OperType, const Table &)
 This constructor is called from the derived TableExprNodeRep. More...
 
 TableExprNodeRep (const TableExprNodeRep &)
 Copy constructor. More...
 
virtual ~TableExprNodeRep ()
 The destructor deletes all the underlying TableExprNode objects. More...
 
virtual void disableApplySelection ()
 Do not apply the selection. More...
 
virtual void applySelection (const Vector< rownr_t > &rownrs)
 Re-create the column object for a selection of rows. More...
 
virtual Double getUnitFactor () const
 Get the unit conversion factor. More...
 
void checkAggrFuncs ()
 Throw an exception if an aggregate function is used in the expression node or its children. More...
 
virtual CountedPtr< TableExprGroupFuncBasemakeGroupAggrFunc ()
 Create the correct immediate aggregate function object. More...
 
virtual Bool isLazyAggregate () const
 Is the aggregate function a lazy or an immediate one? The default implementation returns True (because all UDF aggregate functions have to be lazy). More...
 
virtual Bool getBool (const TableExprId &id)
 Get a scalar value for this node in the given row. More...
 
virtual Int64 getInt (const TableExprId &id)
 
virtual Double getDouble (const TableExprId &id)
 
virtual DComplex getDComplex (const TableExprId &id)
 
virtual String getString (const TableExprId &id)
 
virtual TaqlRegex getRegex (const TableExprId &id)
 
virtual MVTime getDate (const TableExprId &id)
 
void get (const TableExprId &id, Bool &value)
 General get functions for template purposes. More...
 
void get (const TableExprId &id, Int64 &value)
 
void get (const TableExprId &id, Double &value)
 
void get (const TableExprId &id, DComplex &value)
 
void get (const TableExprId &id, MVTime &value)
 
void get (const TableExprId &id, String &value)
 
void get (const TableExprId &id, MArray< Bool > &value)
 
void get (const TableExprId &id, MArray< Int64 > &value)
 
void get (const TableExprId &id, MArray< Double > &value)
 
void get (const TableExprId &id, MArray< DComplex > &value)
 
void get (const TableExprId &id, MArray< MVTime > &value)
 
void get (const TableExprId &id, MArray< String > &value)
 
MArray< BoolgetBoolAS (const TableExprId &id)
 Get a value as an array, even it it is a scalar. More...
 
MArray< Int64getIntAS (const TableExprId &id)
 
MArray< DoublegetDoubleAS (const TableExprId &id)
 
MArray< DComplex > getDComplexAS (const TableExprId &id)
 
MArray< StringgetStringAS (const TableExprId &id)
 
MArray< MVTimegetDateAS (const TableExprId &id)
 
rownr_t nrow () const
 Get the number of rows in the table associated with this expression. More...
 
virtual Bool getColumnDataType (DataType &) const
 Get the data type of the column. More...
 
virtual Array< BoolgetColumnBool (const Vector< rownr_t > &rownrs)
 Get the value of the expression evaluated for the entire column. More...
 
virtual Array< uChargetColumnuChar (const Vector< rownr_t > &rownrs)
 
virtual Array< ShortgetColumnShort (const Vector< rownr_t > &rownrs)
 
virtual Array< uShortgetColumnuShort (const Vector< rownr_t > &rownrs)
 
virtual Array< IntgetColumnInt (const Vector< rownr_t > &rownrs)
 
virtual Array< uIntgetColumnuInt (const Vector< rownr_t > &rownrs)
 
virtual Array< Int64getColumnInt64 (const Vector< rownr_t > &rownrs)
 
virtual Array< FloatgetColumnFloat (const Vector< rownr_t > &rownrs)
 
virtual Array< DoublegetColumnDouble (const Vector< rownr_t > &rownrs)
 
virtual Array< Complex > getColumnComplex (const Vector< rownr_t > &rownrs)
 
virtual Array< DComplex > getColumnDComplex (const Vector< rownr_t > &rownrs)
 
virtual Array< StringgetColumnString (const Vector< rownr_t > &rownrs)
 
virtual void ranges (Block< TableExprRange > &)
 Convert the tree to a number of range vectors which at least select the same things. More...
 
NodeDataType dataType () const
 Get the data type of the derived TableExprNode object. More...
 
Bool isReal () const
 Is the data type real (i.e., integer or double)? More...
 
ValueType valueType () const
 Get the value type. More...
 
void setValueType (ValueType vtype)
 Set the value type. More...
 
OperType operType () const
 Get the operator type. More...
 
ExprType exprType () const
 Get the expression type. More...
 
Bool isConstant () const
 Is the expression a constant? More...
 
const Unitunit () const
 Get the unit. More...
 
void setUnit (const Unit &unit)
 Set the unit. More...
 
const Recordattributes () const
 Get the attributes. More...
 
void setAttributes (const Record &)
 Set the attributes. More...
 
Int ndim () const
 Get the fixed dimensionality (same for all rows). More...
 
const IPositionshape () const
 Get the fixed shape (same for all rows). More...
 
const IPositionshape (const TableExprId &id)
 Get the shape for the given row. More...
 
virtual Bool isDefined (const TableExprId &id)
 Is the value in the given row defined? The default implementation returns True. More...
 
Tabletable ()
 Get table. More...
 
const Tabletable () const
 

Private Types

typedef Bool(TableExprNodeSet::* FindFuncPtr) (Double value)
 Define the functions to find a double, which depend on open/closed-ness. More...
 

Private Member Functions

TableExprNodeSetoperator= (const TableExprNodeSet &)
 A copy of a TableExprNodeSet cannot be made. More...
 
TENShPtr toConstArray () const
 Convert the const set to an array. More...
 
void getArray (MArray< Bool > &marr, const TENShPtr &node, const TableExprId &id) const
 Get the array in a templated way. More...
 
void getArray (MArray< Int64 > &marr, const TENShPtr &node, const TableExprId &id) const
 
void getArray (MArray< Double > &marr, const TENShPtr &node, const TableExprId &id) const
 
void getArray (MArray< DComplex > &marr, const TENShPtr &node, const TableExprId &id) const
 
void getArray (MArray< String > &marr, const TENShPtr &node, const TableExprId &id) const
 
void getArray (MArray< MVTime > &marr, const TENShPtr &node, const TableExprId &id) const
 
void combineIntIntervals ()
 Sort and combine intervals. More...
 
void combineDoubleIntervals ()
 
void combineDateIntervals ()
 
Bool findOpenOpen (Double value)
 
Bool findOpenClosed (Double value)
 
Bool findClosedOpen (Double value)
 
Bool findClosedClosed (Double value)
 
void setFindFunc (Bool isLeftClosed, Bool isRightClosed)
 

Private Attributes

std::vector< TENShPtritsElems
 
Bool itsSingle
 
Bool itsDiscrete
 
Bool itsBounded
 
Bool itsCheckTypes
 
Bool itsAllIntervals
 
Block< DoubleitsStart
 
Block< DoubleitsEnd
 
FindFuncPtr itsFindFunc
 

Additional Inherited Members

- Public Types inherited from casacore::TableExprNodeRep
enum  NodeDataType {
  NTBool ,
  NTInt ,
  NTDouble ,
  NTComplex ,
  NTString ,
  NTRegex ,
  NTDate ,
  NTReal ,
  NTDouCom ,
  NTNumeric ,
  NTAny
}
 Define the data types of a node. More...
 
enum  ValueType {
  VTScalar ,
  VTArray ,
  VTRecord ,
  VTSetElem ,
  VTSet ,
  VTIndex
}
 Define the value types. More...
 
enum  OperType {
  OtPlus ,
  OtMinus ,
  OtTimes ,
  OtDivide ,
  OtModulo ,
  OtBitAnd ,
  OtBitOr ,
  OtBitXor ,
  OtBitNegate ,
  OtEQ ,
  OtGE ,
  OtGT ,
  OtNE ,
  OtIN ,
  OtAND ,
  OtOR ,
  OtNOT ,
  OtMIN ,
  OtColumn ,
  OtField ,
  OtLiteral ,
  OtFunc ,
  OtSlice ,
  OtUndef ,
  OtRownr ,
  OtRandom
}
 Define the operator types. More...
 
enum  ArgType {
  NoArr ,
  ArrArr ,
  ArrSca ,
  ScaArr
}
 Define the value types of the 2 arguments when arrays are involved. More...
 
enum  ExprType {
  Constant ,
  Variable
}
 Define (sub-)expression type. More...
 
- Static Public Member Functions inherited from casacore::TableExprNodeRep
static TENShPtr replaceConstNode (const TENShPtr &node)
 Replace a node with a constant expression by node with its value. More...
 
static void createRange (Block< TableExprRange > &, TableExprNodeColumn *, Double start, Double end)
 Create a range object from a column and an interval. More...
 
static void createRange (Block< TableExprRange > &)
 Create a empty range object. More...
 
static String typeString (NodeDataType)
 Convert a NodeDataType to a string. More...
 
static String typeString (ValueType)
 Convert a ValueType to a string. More...
 
- Protected Member Functions inherited from casacore::TableExprNodeRep
virtual const IPositiongetShape (const TableExprId &id)
 Get the shape for the given row. More...
 
virtual void convertConstChild ()
 If one of the children is a constant, convert its data type to that of the other operand (if appropriate). More...
 
void checkTablePtr (const TENShPtr &node)
 Check if this node uses the same table pointer. More...
 
void fillExprType (const TENShPtr &node)
 Set expression type to Variable if node is Variable. More...
 
- Static Protected Member Functions inherited from casacore::TableExprNodeRep
static void checkTablePtr (Table &table, const TENShPtr &node)
 
static void fillExprType (ExprType &, const TENShPtr &node)
 
static TENShPtr convertNode (const TENShPtr &thisNode, Bool convertConstType)
 If the node is constant, it is evaluated and replaced by the appropriate TableExprNodeConst object. More...
 
- Protected Attributes inherited from casacore::TableExprNodeRep
Table table_p
 
NodeDataType dtype_p
 
ValueType vtype_p
 
OperType optype_p
 
ArgType argtype_p
 
ExprType exprtype_p
 
Int ndim_p
 
IPosition shape_p
 
Unit unit_p
 
Record attributes_p
 

Detailed Description

Class to hold multiple table expression nodes.

Intended use:

Public interface

Review Status

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

Prerequisite

Synopsis

This class is used to assemble several table expression nodes. It is used for 3 purposes:

  1. To hold the arguments of a function. All set elements must be single.
  2. To hold the variables of an index for an array slice. All set elements must be of type int scalar and they must represent a discrete interval (which includes single).
  3. To hold the elements of a set used with the IN operator. All set elements must be scalars of any type.

The type of all set elements has to be the same. The set consists of TableExprNodeSetElem elements. The add function has to be used to add an element to the set.

It is possible to construct the object directly from an IPosition object. In that case all elements are single. Furthermore it is possible to construct it directly from a Slicer object. In that case all elements represent a discrete interval.

Definition at line 310 of file ExprNodeSet.h.

Member Typedef Documentation

◆ FindFuncPtr

typedef Bool(TableExprNodeSet::* casacore::TableExprNodeSet::FindFuncPtr) (Double value)
private

Define the functions to find a double, which depend on open/closed-ness.

In this way a test on open/closed is done only once.

Definition at line 463 of file ExprNodeSet.h.

Constructor & Destructor Documentation

◆ TableExprNodeSet() [1/5]

casacore::TableExprNodeSet::TableExprNodeSet ( )

Construct an empty set.

◆ TableExprNodeSet() [2/5]

casacore::TableExprNodeSet::TableExprNodeSet ( const IPosition )

Construct from an IPosition.

The number of elements in the set is the number of elements in the IPosition. All set elements are single values.

◆ TableExprNodeSet() [3/5]

casacore::TableExprNodeSet::TableExprNodeSet ( const Slicer )

Construct from a Slicer.

The number of elements in the set is the dimensionality of the Slicer. All set elements are discrete intervals. Their start and/or end is undefined if it is was not defined (i.e. Slicer::MimicSource used) in the Slicer object.

◆ TableExprNodeSet() [4/5]

casacore::TableExprNodeSet::TableExprNodeSet ( const Vector< rownr_t > &  rownrs,
const TableExprNodeSet  
)

Construct a set with n*set.size() elements where n is the number of rows.

Element i is constructed by evaluating the input element for row rownr[i].

◆ TableExprNodeSet() [5/5]

casacore::TableExprNodeSet::TableExprNodeSet ( const TableExprNodeSet )

◆ ~TableExprNodeSet()

casacore::TableExprNodeSet::~TableExprNodeSet ( )

Member Function Documentation

◆ adaptSetUnits()

virtual void casacore::TableExprNodeSet::adaptSetUnits ( const Unit )
virtual

Let a set node convert itself to the given unit.

Reimplemented from casacore::TableExprNodeRep.

◆ add()

void casacore::TableExprNodeSet::add ( const TableExprNodeSetElem ,
Bool  adaptType = False 
)

Add an element to the set.

If adaptType=True, the data type is the highest of the elements added. Otherwise it is that of the first element. True is meant for a set of values, False for function arguments.

◆ checkEqualDataTypes()

void casacore::TableExprNodeSet::checkEqualDataTypes ( ) const

Check if the data type of the set elements are the same.

If not, an exception is thrown.

◆ combineDateIntervals()

void casacore::TableExprNodeSet::combineDateIntervals ( )
private

◆ combineDoubleIntervals()

void casacore::TableExprNodeSet::combineDoubleIntervals ( )
private

◆ combineIntIntervals()

void casacore::TableExprNodeSet::combineIntIntervals ( )
private

Sort and combine intervals.

◆ findClosedClosed()

Bool casacore::TableExprNodeSet::findClosedClosed ( Double  value)
private

◆ findClosedOpen()

Bool casacore::TableExprNodeSet::findClosedOpen ( Double  value)
private

◆ findOpenClosed()

Bool casacore::TableExprNodeSet::findOpenClosed ( Double  value)
private

◆ findOpenOpen()

Bool casacore::TableExprNodeSet::findOpenOpen ( Double  value)
private

◆ getAggrNodes()

virtual void casacore::TableExprNodeSet::getAggrNodes ( std::vector< TableExprNodeRep * > &  aggr)
virtual

Get the nodes representing an aggregate function.

Reimplemented from casacore::TableExprNodeRep.

◆ getArray() [1/6]

void casacore::TableExprNodeSet::getArray ( MArray< Bool > &  marr,
const TENShPtr node,
const TableExprId id 
) const
inlineprivate

Get the array in a templated way.

Definition at line 433 of file ExprNodeSet.h.

References casacore::TableExprNodeRep::getArrayBool(), and casacore::MArray< T >::reference().

Referenced by toArray().

◆ getArray() [2/6]

void casacore::TableExprNodeSet::getArray ( MArray< DComplex > &  marr,
const TENShPtr node,
const TableExprId id 
) const
inlineprivate

◆ getArray() [3/6]

void casacore::TableExprNodeSet::getArray ( MArray< Double > &  marr,
const TENShPtr node,
const TableExprId id 
) const
inlineprivate

◆ getArray() [4/6]

void casacore::TableExprNodeSet::getArray ( MArray< Int64 > &  marr,
const TENShPtr node,
const TableExprId id 
) const
inlineprivate

◆ getArray() [5/6]

void casacore::TableExprNodeSet::getArray ( MArray< MVTime > &  marr,
const TENShPtr node,
const TableExprId id 
) const
inlineprivate

◆ getArray() [6/6]

void casacore::TableExprNodeSet::getArray ( MArray< String > &  marr,
const TENShPtr node,
const TableExprId id 
) const
inlineprivate

◆ getArrayBool()

virtual MArray<Bool> casacore::TableExprNodeSet::getArrayBool ( const TableExprId id)
virtual

Get an array value for this bounded set in the given row.

Reimplemented from casacore::TableExprNodeRep.

◆ getArrayDate()

virtual MArray<MVTime> casacore::TableExprNodeSet::getArrayDate ( const TableExprId id)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ getArrayDComplex()

virtual MArray<DComplex> casacore::TableExprNodeSet::getArrayDComplex ( const TableExprId id)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ getArrayDouble()

virtual MArray<Double> casacore::TableExprNodeSet::getArrayDouble ( const TableExprId id)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ getArrayInt()

virtual MArray<Int64> casacore::TableExprNodeSet::getArrayInt ( const TableExprId id)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ getArrayString()

virtual MArray<String> casacore::TableExprNodeSet::getArrayString ( const TableExprId id)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ getColumnNodes()

virtual void casacore::TableExprNodeSet::getColumnNodes ( std::vector< TableExprNodeRep * > &  cols)
virtual

Get the nodes representing a table column.

Reimplemented from casacore::TableExprNodeRep.

◆ hasArrayBool()

virtual MArray<Bool> casacore::TableExprNodeSet::hasArrayBool ( const TableExprId id,
const MArray< Bool > &  value 
)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ hasArrayDate()

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

Reimplemented from casacore::TableExprNodeRep.

◆ hasArrayDComplex()

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

Reimplemented from casacore::TableExprNodeRep.

◆ hasArrayDouble()

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

Reimplemented from casacore::TableExprNodeRep.

◆ hasArrayInt()

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

Reimplemented from casacore::TableExprNodeRep.

◆ hasArrays()

Bool casacore::TableExprNodeSet::hasArrays ( ) const

Contains the set array values?

Referenced by toArray().

◆ hasArrayString()

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

Reimplemented from casacore::TableExprNodeRep.

◆ hasBool()

virtual Bool casacore::TableExprNodeSet::hasBool ( const TableExprId id,
Bool  value 
)
virtual

Does a value occur in the set?

Reimplemented from casacore::TableExprNodeRep.

◆ hasDate()

virtual Bool casacore::TableExprNodeSet::hasDate ( const TableExprId id,
const MVTime value 
)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ hasDComplex()

virtual Bool casacore::TableExprNodeSet::hasDComplex ( const TableExprId id,
const DComplex &  value 
)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ hasDouble()

virtual Bool casacore::TableExprNodeSet::hasDouble ( const TableExprId id,
Double  value 
)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ hasInt()

virtual Bool casacore::TableExprNodeSet::hasInt ( const TableExprId id,
Int64  value 
)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ hasString()

virtual Bool casacore::TableExprNodeSet::hasString ( const TableExprId id,
const String value 
)
virtual

Reimplemented from casacore::TableExprNodeRep.

◆ isBounded()

Bool casacore::TableExprNodeSet::isBounded ( ) const
inline

Is the set fully bounded (discrete and no undefined end values)?

Definition at line 491 of file ExprNodeSet.h.

References itsBounded.

◆ isDiscrete()

Bool casacore::TableExprNodeSet::isDiscrete ( ) const
inline

Contains the set only discrete elements? Discrete means that no continuous ranges are given, but discrete ranges (using :) are possible.

Definition at line 487 of file ExprNodeSet.h.

References itsDiscrete.

◆ isSingle()

Bool casacore::TableExprNodeSet::isSingle ( ) const
inline

Contains the set only single elements? Single means that only single values are given (thus end nor incr).

Definition at line 483 of file ExprNodeSet.h.

References itsSingle.

◆ nelements()

size_t casacore::TableExprNodeSet::nelements ( ) const
inline

For backward compatibility.

Definition at line 374 of file ExprNodeSet.h.

References size().

◆ operator=()

TableExprNodeSet& casacore::TableExprNodeSet::operator= ( const TableExprNodeSet )
private

A copy of a TableExprNodeSet cannot be made.

◆ operator[]()

const TableExprNodeSetElem & casacore::TableExprNodeSet::operator[] ( size_t  index) const
inline

Get the i-th element.

Definition at line 500 of file ExprNodeSet.h.

References castItsElem.

◆ setFindFunc()

void casacore::TableExprNodeSet::setFindFunc ( Bool  isLeftClosed,
Bool  isRightClosed 
)
private

◆ setOrArray()

TENShPtr casacore::TableExprNodeSet::setOrArray ( ) const

Try to convert the set to an array.

If not possible, a copy of the set is returned.

◆ show()

void casacore::TableExprNodeSet::show ( ostream &  os,
uInt  indent 
) const
virtual

Show the node.

Reimplemented from casacore::TableExprNodeRep.

◆ size()

size_t casacore::TableExprNodeSet::size ( ) const
inline

Get the number of elements.

Definition at line 495 of file ExprNodeSet.h.

References itsElems.

Referenced by nelements(), and toArray().

◆ toArray()

template<typename T >
MArray< T > casacore::TableExprNodeSet::toArray ( const TableExprId id) const

◆ toConstArray()

TENShPtr casacore::TableExprNodeSet::toConstArray ( ) const
private

Convert the const set to an array.

Member Data Documentation

◆ itsAllIntervals

Bool casacore::TableExprNodeSet::itsAllIntervals
private

Definition at line 476 of file ExprNodeSet.h.

◆ itsBounded

Bool casacore::TableExprNodeSet::itsBounded
private

Definition at line 474 of file ExprNodeSet.h.

Referenced by isBounded(), and toArray().

◆ itsCheckTypes

Bool casacore::TableExprNodeSet::itsCheckTypes
private

Definition at line 475 of file ExprNodeSet.h.

◆ itsDiscrete

Bool casacore::TableExprNodeSet::itsDiscrete
private

Definition at line 473 of file ExprNodeSet.h.

Referenced by isDiscrete().

◆ itsElems

std::vector<TENShPtr> casacore::TableExprNodeSet::itsElems
private

Definition at line 471 of file ExprNodeSet.h.

Referenced by size().

◆ itsEnd

Block<Double> casacore::TableExprNodeSet::itsEnd
private

Definition at line 478 of file ExprNodeSet.h.

◆ itsFindFunc

FindFuncPtr casacore::TableExprNodeSet::itsFindFunc
private

Definition at line 479 of file ExprNodeSet.h.

◆ itsSingle

Bool casacore::TableExprNodeSet::itsSingle
private

Definition at line 472 of file ExprNodeSet.h.

Referenced by isSingle().

◆ itsStart

Block<Double> casacore::TableExprNodeSet::itsStart
private

Definition at line 477 of file ExprNodeSet.h.


The documentation for this class was generated from the following file: