casacore
|
Int modulo in table select expression tree. More...
#include <ExprMathNode.h>
Public Member Functions | |
TableExprNodeModuloInt (const TableExprNodeRep &) | |
~TableExprNodeModuloInt () | |
Int64 | getInt (const TableExprId &id) |
Double | getDouble (const TableExprId &id) |
DComplex | getDComplex (const TableExprId &id) |
![]() | |
TableExprNodeModulo (NodeDataType, const TableExprNodeRep &) | |
~TableExprNodeModulo () | |
virtual void | handleUnits () |
Handle the units of the children and possibly set the parent's unit. More... | |
![]() | |
TableExprNodeBinary (NodeDataType, ValueType, OperType, const Table &) | |
Constructor. More... | |
TableExprNodeBinary (NodeDataType, const TableExprNodeRep &, OperType) | |
virtual | ~TableExprNodeBinary () |
Destructor. More... | |
virtual void | show (ostream &, uInt indent) const |
Show the expression tree. More... | |
virtual void | getAggrNodes (vector< TableExprNodeRep * > &aggr) |
Get the nodes representing an aggregate function. More... | |
virtual void | getColumnNodes (vector< TableExprNodeRep * > &cols) |
Get the nodes representing a table column. More... | |
void | convertConstChild () |
When one of the children is a constant, convert its data type to that of the other operand. More... | |
const TableExprNodeRep * | getLeftChild () const |
Get the child nodes. More... | |
const TableExprNodeRep * | getRightChild () const |
![]() | |
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... | |
TableExprNodeRep * | link () |
Link to this object, i.e. More... | |
virtual void | disableApplySelection () |
Do not apply the selection. More... | |
virtual void | applySelection (const Vector< uInt > &rownrs) |
Re-create the column object for a selection of rows. More... | |
virtual Double | getUnitFactor () const |
Get the unit conversion factor. More... | |
virtual CountedPtr< TableExprGroupFuncBase > | makeGroupAggrFunc () |
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 String | getString (const TableExprId &id) |
virtual TaqlRegex | getRegex (const TableExprId &id) |
virtual MVTime | getDate (const TableExprId &id) |
virtual Array< Bool > | getArrayBool (const TableExprId &id) |
Get an array value for this node in the given row. More... | |
virtual Array< Int64 > | getArrayInt (const TableExprId &id) |
virtual Array< Double > | getArrayDouble (const TableExprId &id) |
virtual Array< DComplex > | getArrayDComplex (const TableExprId &id) |
virtual Array< String > | getArrayString (const TableExprId &id) |
virtual Array< MVTime > | getArrayDate (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, Array< Bool > &value) |
void | get (const TableExprId &id, Array< Int64 > &value) |
void | get (const TableExprId &id, Array< Double > &value) |
void | get (const TableExprId &id, Array< DComplex > &value) |
void | get (const TableExprId &id, Array< MVTime > &value) |
void | get (const TableExprId &id, Array< String > &value) |
Array< Bool > | getBoolAS (const TableExprId &id) |
Get a value as an array, even it it is a scalar. More... | |
Array< Int64 > | getIntAS (const TableExprId &id) |
Array< Double > | getDoubleAS (const TableExprId &id) |
Array< DComplex > | getDComplexAS (const TableExprId &id) |
Array< String > | getStringAS (const TableExprId &id) |
Array< MVTime > | getDateAS (const TableExprId &id) |
virtual Bool | hasBool (const TableExprId &id, Bool value) |
Does a value occur in an array or set? The default implementation tests if it is in an array. 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 Array< Bool > | hasArrayBool (const TableExprId &id, const Array< Bool > &value) |
virtual Array< Bool > | hasArrayInt (const TableExprId &id, const Array< Int64 > &value) |
virtual Array< Bool > | hasArrayDouble (const TableExprId &id, const Array< Double > &value) |
virtual Array< Bool > | hasArrayDComplex (const TableExprId &id, const Array< DComplex > &value) |
virtual Array< Bool > | hasArrayString (const TableExprId &id, const Array< String > &value) |
virtual Array< Bool > | hasArrayDate (const TableExprId &id, const Array< MVTime > &value) |
uInt | 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< Bool > | getColumnBool (const Vector< uInt > &rownrs) |
Get the value of the expression evaluated for the entire column. More... | |
virtual Array< uChar > | getColumnuChar (const Vector< uInt > &rownrs) |
virtual Array< Short > | getColumnShort (const Vector< uInt > &rownrs) |
virtual Array< uShort > | getColumnuShort (const Vector< uInt > &rownrs) |
virtual Array< Int > | getColumnInt (const Vector< uInt > &rownrs) |
virtual Array< uInt > | getColumnuInt (const Vector< uInt > &rownrs) |
virtual Array< Float > | getColumnFloat (const Vector< uInt > &rownrs) |
virtual Array< Double > | getColumnDouble (const Vector< uInt > &rownrs) |
virtual Array< Complex > | getColumnComplex (const Vector< uInt > &rownrs) |
virtual Array< DComplex > | getColumnDComplex (const Vector< uInt > &rownrs) |
virtual Array< String > | getColumnString (const Vector< uInt > &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... | |
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 Unit & | unit () const |
Get the unit. More... | |
void | setUnit (const Unit &unit) |
Set the unit. More... | |
Int | ndim () const |
Get the fixed dimensionality (same for all rows). More... | |
const IPosition & | shape () const |
Get the fixed shape (same for all rows). More... | |
const IPosition & | shape (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... | |
Table & | table () |
Get table. More... | |
const Table & | table () const |
virtual void | adaptSetUnits (const Unit &) |
Let a set node convert itself to the given unit. More... | |
Additional Inherited Members | |
![]() | |
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 NodeDataType | getDT (NodeDataType leftDtype, NodeDataType rightDype, OperType operType) |
Check the data types and get the common one. More... | |
static TableExprNodeRep | getTypes (const TableExprNodeRep &left, const TableExprNodeRep &right, OperType operType) |
Check the data and value types and get the common one. More... | |
static TableExprNodeRep * | fillNode (TableExprNodeBinary *thisNode, TableExprNodeRep *left, TableExprNodeRep *right, Bool convertConstType, Bool adaptDataType=True) |
Link the children to the node and convert the children to constants if needed and possible. More... | |
![]() | |
static void | unlink (TableExprNodeRep *) |
Unlink from the given object. More... | |
static void | checkAggrFuncs (const TableExprNodeRep *node) |
Throw an exception if an aggregate function is used in the expression node. 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... | |
![]() | |
virtual const IPosition & | getShape (const TableExprId &id) |
Get the shape for the given row. More... | |
void | checkTablePtr (const TableExprNodeRep *node) |
Check if this node uses the same table pointer. More... | |
void | fillExprType (const TableExprNodeRep *node) |
Set expression type to Variable if node is Variable. More... | |
![]() | |
static const Unit & | makeEqualUnits (TableExprNodeRep *left, TableExprNodeRep *&right) |
Make the units equal. More... | |
![]() | |
static TableExprNodeRep * | getRep (TableExprNode &) |
Get pointer to REPresentation object. More... | |
static void | checkTablePtr (Table &table, const TableExprNodeRep *node) |
static void | fillExprType (ExprType &, const TableExprNodeRep *node) |
static TableExprNodeRep * | convertNode (TableExprNodeRep *thisNode, Bool convertConstType) |
When the node is constant, it is evaluated and replaced by the appropriate TableExprNodeConst object. More... | |
![]() | |
TableExprNodeRep * | lnode_p |
TableExprNodeRep * | rnode_p |
![]() | |
uInt | count_p |
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 |
Int modulo in table select expression tree.
Internal
This class represents a modulo operation in a table select expression tree. It is only possible for datatype Int.
Definition at line 651 of file ExprMathNode.h.
casacore::TableExprNodeModuloInt::TableExprNodeModuloInt | ( | const TableExprNodeRep & | ) |
casacore::TableExprNodeModuloInt::~TableExprNodeModuloInt | ( | ) |
|
virtual |
Reimplemented from casacore::TableExprNodeRep.
|
virtual |
Reimplemented from casacore::TableExprNodeRep.
|
virtual |
Reimplemented from casacore::TableExprNodeRep.