Loading...
Searching...
No Matches
ExprFuncNode.h
Go to the documentation of this file.
//# ExprFuncNode.h: Class representing a function in table select expression
//# Copyright (C) 1994,1995,1996,1997,1998,2000,2001,2003
//# Associated Universities, Inc. Washington DC, USA.
//#
//# This library is free software; you can redistribute it and/or modify it
//# under the terms of the GNU Library General Public License as published by
//# the Free Software Foundation; either version 2 of the License, or (at your
//# option) any later version.
//#
//# This library is distributed in the hope that it will be useful, but WITHOUT
//# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
//# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
//# License for more details.
//#
//# You should have received a copy of the GNU Library General Public License
//# along with this library; if not, write to the Free Software Foundation,
//# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
//#
//# Correspondence concerning AIPS++ should be addressed as follows:
//# Internet email: casa-feedback@nrao.edu.
//# Postal address: AIPS++ Project Office
//# National Radio Astronomy Observatory
//# 520 Edgemont Road
//# Charlottesville, VA 22903-2475 USA
#ifndef TABLES_EXPRFUNCNODE_H
#define TABLES_EXPRFUNCNODE_H
//# Includes
#include <casacore/casa/aips.h>
#include <casacore/tables/TaQL/ExprNodeRep.h>
#include <casacore/casa/Quanta/MVAngle.h>
#include <casacore/casa/BasicMath/Math.h>
namespace casacore { //# NAMESPACE CASACORE - BEGIN
//# Forward Declarations
class TableExprNodeSet;
// <summary>
// Class representing a function in table select expression
// </summary>
// <use visibility=local>
// <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
// </reviewed>
// <prerequisite>
//# Classes you should understand before using this one.
// <li> <linkto class=TableExprNodeMulti>TableExprNodeMulti</linkto>
// </prerequisite>
// <synopsis>
// This class represents a function in a table select tree.
// The <src>rownumber</src> function is represented by class
// <linkto class=TableExprNodeRownr>TableExprNodeRownr</linkto>.
// The <src>rowid</src> function is represented by class
// <linkto class=TableExprNodeRowid>TableExprNodeRowid</linkto>.
// The <src>rand</src> function is represented by class
// <linkto class=TableExprNodeRandom>TableExprNodeRandom</linkto>.
// <p>
// When one wants to add a function to the table selection grammar,
// the following has to be done:
// <ul>
// <li> Add the function to the enum below.
// <li> Implement the function in the get functions in ExprFuncNode(Array).cc.
// <li> Implement the function in the checkOperands in ExprFuncNode.cc.
// <li> Declare and define the function in ExprNode.h (for C++ binding).
// <li> Add the function to findFunc in TableParse.cc (for TaQL).
// </ul>
// </synopsis>
class TableExprFuncNode : public TableExprNodeMulti
{
public:
//# Define the function types.
enum FunctionType {
piFUNC, //# 0
eFUNC, //# 1
cFUNC, //# 2
// for Int, or Double or Complex returning Bool
// (2 is with default tolerance)
near2FUNC, //# 3
near3FUNC, //# 4
nearabs2FUNC, //# 5
nearabs3FUNC, //# 6
// for Int, Double or DComplex returning Double or Complex
sinFUNC, //# 7
sinhFUNC, //# 8
cosFUNC, //# 9
coshFUNC, //# 10
expFUNC, //# 11
logFUNC, //# 12
log10FUNC, //# 13
sqrtFUNC, //# 14
powFUNC, //# 15
conjFUNC, //# 16
// for Int, Double or DComplex returning Int, Double or Complex
squareFUNC, //# 17
cubeFUNC, //# 18
minFUNC, //# 19
maxFUNC, //# 20
// for Int, Double or DComplex returning Int or Double
normFUNC, //# 21
absFUNC, //# 22
// for Int, Double or DComplex returning Double
argFUNC, //# 23
// for Int, Double, DComplex, Bool or String returning Double
realFUNC, //# 24
// for Double or DComplex returning Double
imagFUNC, //# 25
// for Int, Double, Bool or String returning Int (using floor)
intFUNC, //# 26
// for Int, Double or Complex returning Double or Complex
asinFUNC, //# 27
acosFUNC, //# 28
atanFUNC, //# 29
atan2FUNC, //# 30
tanFUNC, //# 31
tanhFUNC, //# 32
// for Int or Double returning Int or Double
signFUNC, //# 33
roundFUNC, //# 34
floorFUNC, //# 35
ceilFUNC, //# 36
fmodFUNC, //# 37
// for DComplex or String returning DComplex
complexFUNC, //# 38
// for Int, Double or Complex array returning the same
arrsumFUNC, //# 39
arrsumsFUNC, //# 40
runsumFUNC, //# 41
boxsumFUNC, //# 42
arrproductFUNC, //# 43
arrproductsFUNC, //# 44
runproductFUNC, //# 45
boxproductFUNC, //# 46
arrsumsqrFUNC, //# 47
arrsumsqrsFUNC, //# 48
runsumsqrFUNC, //# 49
boxsumsqrFUNC, //# 50
// for Int or Double array returning Int or Double
arrminFUNC, //# 51
arrminsFUNC, //# 52
runminFUNC, //# 53
boxminFUNC, //# 54
arrmaxFUNC, //# 55
arrmaxsFUNC, //# 56
runmaxFUNC, //# 57
boxmaxFUNC, //# 58
// for Int or Double array returning Double
arrmeanFUNC, //# 59
arrmeansFUNC, //# 60
runmeanFUNC, //# 61
boxmeanFUNC, //# 62
arrvariance0FUNC, //# 63
arrvariances0FUNC,//# 64
runvariance0FUNC, //# 65
boxvariance0FUNC, //# 66
arrvariance1FUNC, //# 67
arrvariances1FUNC,//# 68
runvariance1FUNC, //# 69
boxvariance1FUNC, //# 70
arrstddev0FUNC, //# 71
arrstddevs0FUNC, //# 72
runstddev0FUNC, //# 73
boxstddev0FUNC, //# 74
arrstddev1FUNC, //# 75
arrstddevs1FUNC, //# 76
runstddev1FUNC, //# 77
boxstddev1FUNC, //# 78
arravdevFUNC, //# 79
arravdevsFUNC, //# 80
runavdevFUNC, //# 81
boxavdevFUNC, //# 82
arrrmsFUNC, //# 83
arrrmssFUNC, //# 84
runrmsFUNC, //# 85
boxrmsFUNC, //# 86
arrmedianFUNC, //# 87
arrmediansFUNC, //# 88
runmedianFUNC, //# 89
boxmedianFUNC, //# 90
arrfractileFUNC, //# 91
arrfractilesFUNC, //# 92
runfractileFUNC, //# 93
boxfractileFUNC, //# 94
// for Bool array returning Bool
arranyFUNC, //# 95
arranysFUNC, //# 96
runanyFUNC, //# 97
boxanyFUNC, //# 98
arrallFUNC, //# 99
arrallsFUNC, //# 100
runallFUNC, //# 101
boxallFUNC, //# 102
// for Bool array returning Int scalar
arrntrueFUNC, //# 103
arrntruesFUNC, //# 104
runntrueFUNC, //# 105
boxntrueFUNC, //# 106
arrnfalseFUNC, //# 107
arrnfalsesFUNC, //# 108
runnfalseFUNC, //# 109
boxnfalseFUNC, //# 110
// for any type returning array of that type
arrayFUNC, //# 111
transposeFUNC, //# 112
areverseFUNC, //# 113
resizeFUNC, //# 114
diagonalFUNC, //# 115
// for Int, Double or DComplex array returning Bool
isnanFUNC, //# 116
isinfFUNC, //# 117
isfiniteFUNC, //# 118
// for any array returning Bool scalar
isdefFUNC, //# 119
isnullFUNC, //# 120
iscolFUNC, //# 121
iskeyFUNC, //# 122
// for any array returning Int scalar
ndimFUNC, //# 123
nelemFUNC, //# 124
// for any array returning Int array
shapeFUNC, //# 125
// for String
strlengthFUNC, //# 126 returning Int
upcaseFUNC, //# 127 returning String
downcaseFUNC, //# 128 returning String
capitalizeFUNC, //# 129 returning String
sreverseFUNC, //# 130
trimFUNC, //# 131 returning String
ltrimFUNC, //# 132 returning String
rtrimFUNC, //# 133 returning String
substrFUNC, //# 134 returning String
replaceFUNC, //# 135 returning String
regexFUNC, //# 136 returning TaqlRegex
patternFUNC, //# 137 returning TaqlRegex
sqlpatternFUNC, //# 138 returning TaqlRegex
// for Date
datetimeFUNC, //# 139 returning Date
mjdtodateFUNC, //# 140 returning Date
mjdFUNC, //# 141 returning Double
dateFUNC, //# 142 returning Date
timeFUNC, //# 143 returning Double (in radians)
yearFUNC, //# 144 returning Int
monthFUNC, //# 145 returning Int
dayFUNC, //# 146 returning Int
cmonthFUNC, //# 147 returning String
weekdayFUNC, //# 148 returning Int
cdowFUNC, //# 149 returning String
weekFUNC, //# 150 returning Int
ctodFUNC, //# 151 returning String
cdateFUNC, //# 152 returning String
ctimeFUNC, //# 153 returning String
// return values as strings
stringFUNC, //# 154
// return angles as hms strings
hmsFUNC, //# 155
// return angles as dms strings
dmsFUNC, //# 156
// return angles as hms/dms strings
hdmsFUNC, //# 157
// special function returning a random Double number
randFUNC, //# 158
// special function returning Int row number
rownrFUNC, //# 159
// special function returning Int row id (meant for GIVING)
rowidFUNC, //# 160
// special function resembling if statement
iifFUNC, //# 161
// angular distance returning radians
angdistFUNC, //# 162
angdistxFUNC, //# 163
// cone search functions, implemented in derived class
conesFUNC, //# 164
cones3FUNC, //# 165
anyconeFUNC, //# 166
anycone3FUNC, //# 167
findconeFUNC, //# 168
findcone3FUNC, //# 169
// normalize angle between -pi and pi
normangleFUNC, //# 170
// for Int, Double, Complex or String returning Bool
boolFUNC, //# 171
// masked array functions
nullarrayFUNC, //# 172
marrayFUNC, //# 173
arrdataFUNC, //# 174
arrmaskFUNC, //# 175
negatemaskFUNC, //# 176
replmaskedFUNC, //# 177
replunmaskedFUNC, //# 178
arrflatFUNC, //# 179
//# AGGREGATE functions must be the last ones.
FirstAggrFunc, //# 180
countallFUNC = FirstAggrFunc,
gcountFUNC,
gfirstFUNC,
glastFUNC,
//# Grouping doing aggregation on the fly; reducing to a scalar per group
gminFUNC, //# 184
gmaxFUNC,
gsumFUNC,
gproductFUNC,
gsumsqrFUNC,
gmeanFUNC,
gvariance0FUNC,
gvariance1FUNC,
gstddev0FUNC,
gstddev1FUNC,
grmsFUNC,
ganyFUNC,
gallFUNC,
gntrueFUNC,
gnfalseFUNC,
//# Grouping doing aggregation on the fly; reducing to an array per group
FirstAggrArrayFunc,//# 199
gminsFUNC = FirstAggrArrayFunc,
gmaxsFUNC,
gsumsFUNC,
gproductsFUNC,
gsumsqrsFUNC,
gmeansFUNC,
gvariances0FUNC,
gvariances1FUNC,
gstddevs0FUNC,
gstddevs1FUNC,
grmssFUNC,
ganysFUNC,
gallsFUNC,
gntruesFUNC,
gnfalsesFUNC,
LastAggrArrayFunc, //# 214
ghistFUNC = LastAggrArrayFunc,
//# Grouping requiring aggregation of rows when getting result
gaggrFUNC, //# 215
growidFUNC,
gmedianFUNC,
gfractileFUNC,
gexpridFUNC, //# special function (can be inserted by TableParse)
NRFUNC //# 220 should be last
};
// Constructor
TableExprFuncNode (FunctionType, NodeDataType, ValueType,
const TableExprNodeSet& source,
const vector<TENShPtr>& nodes,
const Block<Int>& dtypeOper,
const TableExprInfo& = TableExprInfo());
// Destructor
~TableExprFuncNode ();
// 'get' Functions to get the desired result of a function
// <group>
Bool getBool (const TableExprId& id);
Int64 getInt (const TableExprId& id);
Double getDouble (const TableExprId& id);
DComplex getDComplex (const TableExprId& id);
String getString (const TableExprId& id);
TaqlRegex getRegex (const TableExprId& id);
MVTime getDate (const TableExprId& id);
// </group>
// Check the data and value types of the operands.
// It sets the exptected data and value types of the operands.
// Set the value type of the function result and returns
// the data type of the function result.
static NodeDataType checkOperands (Block<Int>& dtypeOper,
ValueType& resVT,
Block<Int>& vtypeOper,
FunctionType,
std::vector<TENShPtr>&);
// Fill the result unit in the node.
// Adapt the children nodes if their units need to be converted.
// It returns a possible scale factor in case result unit is SI (for sqrt).
void fillUnits();
// Link the children to the node and convert the children
// to constants if possible.
void fillChildNodes (const vector<TENShPtr>& nodes,
const Block<Int>& dtypeOper);
// Get possible unit scale factor (needed for sqrt).
Double getScale() const
{ return scale_p; }
// Some functions to be used by TableExprNodeFuncArray.
// <group>
const std::vector<TENShPtr>& operands() const
{ return operands_p; }
std::vector<TENShPtr>& rwOperands()
{ return operands_p; }
FunctionType funcType() const
{ return funcType_p; }
NodeDataType argDataType() const
{ return argDataType_p; }
// </group>
// Get the possible print format, width, and/or precision.
static void getPrintFormat (String& fmt, Int& width, Int& prec,
const std::vector<TENShPtr>& operands,
const TableExprId& id);
// Convert the date and/or time to a string.
// <group>
static String stringDT (const MVTime& dt, Int prec, MVTime::formatTypes);
static String stringDateTime (const MVTime& dt, Int prec);
static String stringDate (const MVTime& dt);
static String stringTime (const MVTime& dt, Int prec);
// </group>
// Convert a value to a string.
// If <src>fmt</src> is empty, ostringstream is used.
// Otherwise the printf-like format is used.
// If possible, a double value is converted to radians if formatted as angle.
// <group>
static String stringValue (Bool val, const String& fmt, Int width);
static String stringValue (Int64 val, const String& fmt, Int width);
static String stringValue (Double val, const String& fmt,
Int width, Int prec,
const std::pair<int,int>& mvFormat,
const Unit& unit);
static String stringValue (const DComplex& val, const String& fmt,
Int width, Int prec);
static String stringValue (const String& val, const String& fmt,
Int width);
static String stringValue (const MVTime& val, const String& fmt,
Int width,
const std::pair<int,int>& mvFormat);
// Convert angle to a string (hms or dms).
// <group>
static String stringAngle (double val, Int prec,
MVAngle::formatTypes type);
static String stringHMS (double val, Int prec);
static String stringDMS (double val, Int prec);
// </group>
// Get the MVTime/Angle format and optional precision.
// 0,0 is returned if empty or unknown format.
static std::pair<int,int> getMVFormat (const String& fmt);
// Get the angular distance between two positions on a sphere.
static double angdist (double ra1, double dec1, double ra2, double dec2)
{ return acos (sin(dec1)*sin(dec2) + cos(dec1)*cos(dec2)*cos(ra1-ra2)); }
// Read a string as an integer, double, complex or bool.
static Int64 string2Int (const String&);
static Double string2Real (const String&);
static DComplex string2Complex (const String&);
static Bool string2Bool (const String&);
private:
// Try if the function gives a constant result.
// If so, set the expression type to Constant.
void tryToConst();
// Make the units of nodes from <src>starg</src> till <src>endarg</src>
// equal. Return the unit found.
static const Unit& makeEqualUnits (std::vector<TENShPtr>& nodes,
uInt starg, uInt endarg);
//# Data members.
FunctionType funcType_p; // which function
NodeDataType argDataType_p; // common argument data type
Double scale_p; // possible scaling for unit conversion
// (needed for sqrt)
Table table_p; // table (for iscolumn and iskeyword)
};
} //# NAMESPACE CASACORE - END
#endif
casacore::type
casacore::Block
Definition Block.h:140
casacore::MVAngle::formatTypes
formatTypes
Format types.
Definition MVAngle.h:249
casacore::MVTime
Definition MVTime.h:268
casacore::MVTime::formatTypes
formatTypes
Format types.
Definition MVTime.h:274
casacore::String
String: the storage and methods of handling collections of characters.
Definition String.h:223
casacore::TableExprFuncNode::string2Real
static Double string2Real(const String &)
casacore::TableExprFuncNode::getDouble
Double getDouble(const TableExprId &id)
casacore::TableExprFuncNode::getScale
Double getScale() const
Get possible unit scale factor (needed for sqrt).
Definition ExprFuncNode.h:389
casacore::TableExprFuncNode::angdist
static double angdist(double ra1, double dec1, double ra2, double dec2)
Get the angular distance between two positions on a sphere.
Definition ExprFuncNode.h:449
casacore::TableExprFuncNode::getString
String getString(const TableExprId &id)
casacore::TableExprFuncNode::fillUnits
void fillUnits()
Fill the result unit in the node.
casacore::TableExprFuncNode::stringValue
static String stringValue(const String &val, const String &fmt, Int width)
casacore::TableExprFuncNode::getRegex
TaqlRegex getRegex(const TableExprId &id)
casacore::TableExprFuncNode::stringDateTime
static String stringDateTime(const MVTime &dt, Int prec)
casacore::TableExprFuncNode::argDataType
NodeDataType argDataType() const
Definition ExprFuncNode.h:400
casacore::TableExprFuncNode::stringValue
static String stringValue(const MVTime &val, const String &fmt, Int width, const std::pair< int, int > &mvFormat)
casacore::TableExprFuncNode::FunctionType
FunctionType
Definition ExprFuncNode.h:79
casacore::TableExprFuncNode::arrvariances1FUNC
@ arrvariances1FUNC
Definition ExprFuncNode.h:163
casacore::TableExprFuncNode::boxavdevFUNC
@ boxavdevFUNC
Definition ExprFuncNode.h:177
casacore::TableExprFuncNode::runntrueFUNC
@ runntrueFUNC
Definition ExprFuncNode.h:202
casacore::TableExprFuncNode::regexFUNC
@ regexFUNC
Definition ExprFuncNode.h:239
casacore::TableExprFuncNode::gaggrFUNC
@ gaggrFUNC
Definition ExprFuncNode.h:339
casacore::TableExprFuncNode::arranysFUNC
@ arranysFUNC
Definition ExprFuncNode.h:192
casacore::TableExprFuncNode::gmedianFUNC
@ gmedianFUNC
Definition ExprFuncNode.h:341
casacore::TableExprFuncNode::boxproductFUNC
@ boxproductFUNC
Definition ExprFuncNode.h:139
casacore::TableExprFuncNode::log10FUNC
@ log10FUNC
Definition ExprFuncNode.h:96
casacore::TableExprFuncNode::runvariance1FUNC
@ runvariance1FUNC
Definition ExprFuncNode.h:164
casacore::TableExprFuncNode::LastAggrArrayFunc
@ LastAggrArrayFunc
Definition ExprFuncNode.h:336
casacore::TableExprFuncNode::absFUNC
@ absFUNC
Definition ExprFuncNode.h:107
casacore::TableExprFuncNode::isinfFUNC
@ isinfFUNC
Definition ExprFuncNode.h:216
casacore::TableExprFuncNode::sinFUNC
@ sinFUNC
for Int, Double or DComplex returning Double or Complex
Definition ExprFuncNode.h:90
casacore::TableExprFuncNode::complexFUNC
@ complexFUNC
for DComplex or String returning DComplex
Definition ExprFuncNode.h:130
casacore::TableExprFuncNode::acosFUNC
@ acosFUNC
Definition ExprFuncNode.h:118
casacore::TableExprFuncNode::isdefFUNC
@ isdefFUNC
for any array returning Bool scalar
Definition ExprFuncNode.h:219
casacore::TableExprFuncNode::runstddev1FUNC
@ runstddev1FUNC
Definition ExprFuncNode.h:172
casacore::TableExprFuncNode::floorFUNC
@ floorFUNC
Definition ExprFuncNode.h:126
casacore::TableExprFuncNode::gmeanFUNC
@ gmeanFUNC
Definition ExprFuncNode.h:309
casacore::TableExprFuncNode::gmaxFUNC
@ gmaxFUNC
Definition ExprFuncNode.h:305
casacore::TableExprFuncNode::boxmaxFUNC
@ boxmaxFUNC
Definition ExprFuncNode.h:152
casacore::TableExprFuncNode::grmssFUNC
@ grmssFUNC
Definition ExprFuncNode.h:331
casacore::TableExprFuncNode::arrmaxsFUNC
@ arrmaxsFUNC
Definition ExprFuncNode.h:150
casacore::TableExprFuncNode::replaceFUNC
@ replaceFUNC
Definition ExprFuncNode.h:238
casacore::TableExprFuncNode::arrproductFUNC
@ arrproductFUNC
Definition ExprFuncNode.h:136
casacore::TableExprFuncNode::boxsumsqrFUNC
@ boxsumsqrFUNC
Definition ExprFuncNode.h:143
casacore::TableExprFuncNode::isnullFUNC
@ isnullFUNC
Definition ExprFuncNode.h:220
casacore::TableExprFuncNode::expFUNC
@ expFUNC
Definition ExprFuncNode.h:94
casacore::TableExprFuncNode::arrrmssFUNC
@ arrrmssFUNC
Definition ExprFuncNode.h:179
casacore::TableExprFuncNode::gfractileFUNC
@ gfractileFUNC
Definition ExprFuncNode.h:342
casacore::TableExprFuncNode::arrvariance0FUNC
@ arrvariance0FUNC
Definition ExprFuncNode.h:158
casacore::TableExprFuncNode::arrmedianFUNC
@ arrmedianFUNC
Definition ExprFuncNode.h:182
casacore::TableExprFuncNode::boxsumFUNC
@ boxsumFUNC
Definition ExprFuncNode.h:135
casacore::TableExprFuncNode::arrstddev0FUNC
@ arrstddev0FUNC
Definition ExprFuncNode.h:166
casacore::TableExprFuncNode::patternFUNC
@ patternFUNC
Definition ExprFuncNode.h:240
casacore::TableExprFuncNode::gallsFUNC
@ gallsFUNC
Definition ExprFuncNode.h:333
casacore::TableExprFuncNode::arrmaskFUNC
@ arrmaskFUNC
Definition ExprFuncNode.h:292
casacore::TableExprFuncNode::sreverseFUNC
@ sreverseFUNC
Definition ExprFuncNode.h:233
casacore::TableExprFuncNode::boxmeanFUNC
@ boxmeanFUNC
Definition ExprFuncNode.h:157
casacore::TableExprFuncNode::ctimeFUNC
@ ctimeFUNC
Definition ExprFuncNode.h:257
casacore::TableExprFuncNode::arrallsFUNC
@ arrallsFUNC
Definition ExprFuncNode.h:196
casacore::TableExprFuncNode::boxstddev1FUNC
@ boxstddev1FUNC
Definition ExprFuncNode.h:173
casacore::TableExprFuncNode::boxvariance1FUNC
@ boxvariance1FUNC
Definition ExprFuncNode.h:165
casacore::TableExprFuncNode::stringFUNC
@ stringFUNC
return values as strings
Definition ExprFuncNode.h:259
casacore::TableExprFuncNode::glastFUNC
@ glastFUNC
Definition ExprFuncNode.h:302
casacore::TableExprFuncNode::runanyFUNC
@ runanyFUNC
Definition ExprFuncNode.h:193
casacore::TableExprFuncNode::gminFUNC
@ gminFUNC
Definition ExprFuncNode.h:304
casacore::TableExprFuncNode::arrproductsFUNC
@ arrproductsFUNC
Definition ExprFuncNode.h:137
casacore::TableExprFuncNode::countallFUNC
@ countallFUNC
Definition ExprFuncNode.h:299
casacore::TableExprFuncNode::boolFUNC
@ boolFUNC
for Int, Double, Complex or String returning Bool
Definition ExprFuncNode.h:287
casacore::TableExprFuncNode::angdistFUNC
@ angdistFUNC
angular distance returning radians
Definition ExprFuncNode.h:275
casacore::TableExprFuncNode::gntruesFUNC
@ gntruesFUNC
Definition ExprFuncNode.h:334
casacore::TableExprFuncNode::cdowFUNC
@ cdowFUNC
Definition ExprFuncNode.h:253
casacore::TableExprFuncNode::iifFUNC
@ iifFUNC
special function resembling if statement
Definition ExprFuncNode.h:273
casacore::TableExprFuncNode::arrrmsFUNC
@ arrrmsFUNC
Definition ExprFuncNode.h:178
casacore::TableExprFuncNode::runfractileFUNC
@ runfractileFUNC
Definition ExprFuncNode.h:188
casacore::TableExprFuncNode::atan2FUNC
@ atan2FUNC
Definition ExprFuncNode.h:120
casacore::TableExprFuncNode::gmeansFUNC
@ gmeansFUNC
Definition ExprFuncNode.h:326
casacore::TableExprFuncNode::gsumsqrsFUNC
@ gsumsqrsFUNC
Definition ExprFuncNode.h:325
casacore::TableExprFuncNode::gproductFUNC
@ gproductFUNC
Definition ExprFuncNode.h:307
casacore::TableExprFuncNode::gvariance0FUNC
@ gvariance0FUNC
Definition ExprFuncNode.h:310
casacore::TableExprFuncNode::gvariances1FUNC
@ gvariances1FUNC
Definition ExprFuncNode.h:328
casacore::TableExprFuncNode::iskeyFUNC
@ iskeyFUNC
Definition ExprFuncNode.h:222
casacore::TableExprFuncNode::realFUNC
@ realFUNC
for Int, Double, DComplex, Bool or String returning Double
Definition ExprFuncNode.h:111
casacore::TableExprFuncNode::sqrtFUNC
@ sqrtFUNC
Definition ExprFuncNode.h:97
casacore::TableExprFuncNode::runproductFUNC
@ runproductFUNC
Definition ExprFuncNode.h:138
casacore::TableExprFuncNode::weekdayFUNC
@ weekdayFUNC
Definition ExprFuncNode.h:252
casacore::TableExprFuncNode::hmsFUNC
@ hmsFUNC
return angles as hms strings
Definition ExprFuncNode.h:261
casacore::TableExprFuncNode::growidFUNC
@ growidFUNC
Definition ExprFuncNode.h:340
casacore::TableExprFuncNode::ctodFUNC
@ ctodFUNC
Definition ExprFuncNode.h:255
casacore::TableExprFuncNode::piFUNC
@ piFUNC
Definition ExprFuncNode.h:80
casacore::TableExprFuncNode::arrsumFUNC
@ arrsumFUNC
for Int, Double or Complex array returning the same
Definition ExprFuncNode.h:132
casacore::TableExprFuncNode::isfiniteFUNC
@ isfiniteFUNC
Definition ExprFuncNode.h:217
casacore::TableExprFuncNode::arrnfalseFUNC
@ arrnfalseFUNC
Definition ExprFuncNode.h:204
casacore::TableExprFuncNode::negatemaskFUNC
@ negatemaskFUNC
Definition ExprFuncNode.h:293
casacore::TableExprFuncNode::gsumsqrFUNC
@ gsumsqrFUNC
Definition ExprFuncNode.h:308
casacore::TableExprFuncNode::atanFUNC
@ atanFUNC
Definition ExprFuncNode.h:119
casacore::TableExprFuncNode::arrmediansFUNC
@ arrmediansFUNC
Definition ExprFuncNode.h:183
casacore::TableExprFuncNode::arrvariance1FUNC
@ arrvariance1FUNC
Definition ExprFuncNode.h:162
casacore::TableExprFuncNode::asinFUNC
@ asinFUNC
for Int, Double or Complex returning Double or Complex
Definition ExprFuncNode.h:117
casacore::TableExprFuncNode::gnfalsesFUNC
@ gnfalsesFUNC
Definition ExprFuncNode.h:335
casacore::TableExprFuncNode::mjdFUNC
@ mjdFUNC
Definition ExprFuncNode.h:245
casacore::TableExprFuncNode::monthFUNC
@ monthFUNC
Definition ExprFuncNode.h:249
casacore::TableExprFuncNode::arranyFUNC
@ arranyFUNC
for Bool array returning Bool
Definition ExprFuncNode.h:191
casacore::TableExprFuncNode::ganysFUNC
@ ganysFUNC
Definition ExprFuncNode.h:332
casacore::TableExprFuncNode::arrmeanFUNC
@ arrmeanFUNC
for Int or Double array returning Double
Definition ExprFuncNode.h:154
casacore::TableExprFuncNode::runavdevFUNC
@ runavdevFUNC
Definition ExprFuncNode.h:176
casacore::TableExprFuncNode::rowidFUNC
@ rowidFUNC
special function returning Int row id (meant for GIVING)
Definition ExprFuncNode.h:271
casacore::TableExprFuncNode::arrayFUNC
@ arrayFUNC
for any type returning array of that type
Definition ExprFuncNode.h:209
casacore::TableExprFuncNode::runmedianFUNC
@ runmedianFUNC
Definition ExprFuncNode.h:184
casacore::TableExprFuncNode::NRFUNC
@ NRFUNC
Definition ExprFuncNode.h:344
casacore::TableExprFuncNode::boxfractileFUNC
@ boxfractileFUNC
Definition ExprFuncNode.h:189
casacore::TableExprFuncNode::logFUNC
@ logFUNC
Definition ExprFuncNode.h:95
casacore::TableExprFuncNode::near3FUNC
@ near3FUNC
Definition ExprFuncNode.h:86
casacore::TableExprFuncNode::conjFUNC
@ conjFUNC
Definition ExprFuncNode.h:99
casacore::TableExprFuncNode::gminsFUNC
@ gminsFUNC
Definition ExprFuncNode.h:321
casacore::TableExprFuncNode::sqlpatternFUNC
@ sqlpatternFUNC
Definition ExprFuncNode.h:241
casacore::TableExprFuncNode::boxrmsFUNC
@ boxrmsFUNC
Definition ExprFuncNode.h:181
casacore::TableExprFuncNode::gsumFUNC
@ gsumFUNC
Definition ExprFuncNode.h:306
casacore::TableExprFuncNode::runsumsqrFUNC
@ runsumsqrFUNC
Definition ExprFuncNode.h:142
casacore::TableExprFuncNode::arrmeansFUNC
@ arrmeansFUNC
Definition ExprFuncNode.h:155
casacore::TableExprFuncNode::runsumFUNC
@ runsumFUNC
Definition ExprFuncNode.h:134
casacore::TableExprFuncNode::boxanyFUNC
@ boxanyFUNC
Definition ExprFuncNode.h:194
casacore::TableExprFuncNode::arrsumsqrFUNC
@ arrsumsqrFUNC
Definition ExprFuncNode.h:140
casacore::TableExprFuncNode::cubeFUNC
@ cubeFUNC
Definition ExprFuncNode.h:102
casacore::TableExprFuncNode::transposeFUNC
@ transposeFUNC
Definition ExprFuncNode.h:210
casacore::TableExprFuncNode::runmaxFUNC
@ runmaxFUNC
Definition ExprFuncNode.h:151
casacore::TableExprFuncNode::shapeFUNC
@ shapeFUNC
for any array returning Int array
Definition ExprFuncNode.h:227
casacore::TableExprFuncNode::near2FUNC
@ near2FUNC
for Int, or Double or Complex returning Bool (2 is with default tolerance)
Definition ExprFuncNode.h:85
casacore::TableExprFuncNode::conesFUNC
@ conesFUNC
cone search functions, implemented in derived class
Definition ExprFuncNode.h:278
casacore::TableExprFuncNode::dateFUNC
@ dateFUNC
Definition ExprFuncNode.h:246
casacore::TableExprFuncNode::gmaxsFUNC
@ gmaxsFUNC
Definition ExprFuncNode.h:322
casacore::TableExprFuncNode::runminFUNC
@ runminFUNC
Definition ExprFuncNode.h:147
casacore::TableExprFuncNode::nearabs2FUNC
@ nearabs2FUNC
Definition ExprFuncNode.h:87
casacore::TableExprFuncNode::timeFUNC
@ timeFUNC
Definition ExprFuncNode.h:247
casacore::TableExprFuncNode::powFUNC
@ powFUNC
Definition ExprFuncNode.h:98
casacore::TableExprFuncNode::arrminsFUNC
@ arrminsFUNC
Definition ExprFuncNode.h:146
casacore::TableExprFuncNode::arrstddevs0FUNC
@ arrstddevs0FUNC
Definition ExprFuncNode.h:167
casacore::TableExprFuncNode::runrmsFUNC
@ runrmsFUNC
Definition ExprFuncNode.h:180
casacore::TableExprFuncNode::minFUNC
@ minFUNC
Definition ExprFuncNode.h:103
casacore::TableExprFuncNode::arrfractileFUNC
@ arrfractileFUNC
Definition ExprFuncNode.h:186
casacore::TableExprFuncNode::gnfalseFUNC
@ gnfalseFUNC
Definition ExprFuncNode.h:318
casacore::TableExprFuncNode::arrdataFUNC
@ arrdataFUNC
Definition ExprFuncNode.h:291
casacore::TableExprFuncNode::yearFUNC
@ yearFUNC
Definition ExprFuncNode.h:248
casacore::TableExprFuncNode::capitalizeFUNC
@ capitalizeFUNC
Definition ExprFuncNode.h:232
casacore::TableExprFuncNode::ceilFUNC
@ ceilFUNC
Definition ExprFuncNode.h:127
casacore::TableExprFuncNode::trimFUNC
@ trimFUNC
Definition ExprFuncNode.h:234
casacore::TableExprFuncNode::roundFUNC
@ roundFUNC
Definition ExprFuncNode.h:125
casacore::TableExprFuncNode::replmaskedFUNC
@ replmaskedFUNC
Definition ExprFuncNode.h:294
casacore::TableExprFuncNode::arrvariances0FUNC
@ arrvariances0FUNC
Definition ExprFuncNode.h:159
casacore::TableExprFuncNode::isnanFUNC
@ isnanFUNC
for Int, Double or DComplex array returning Bool
Definition ExprFuncNode.h:215
casacore::TableExprFuncNode::cosFUNC
@ cosFUNC
Definition ExprFuncNode.h:92
casacore::TableExprFuncNode::resizeFUNC
@ resizeFUNC
Definition ExprFuncNode.h:212
casacore::TableExprFuncNode::intFUNC
@ intFUNC
for Int, Double, Bool or String returning Int (using floor)
Definition ExprFuncNode.h:115
casacore::TableExprFuncNode::datetimeFUNC
@ datetimeFUNC
for Date
Definition ExprFuncNode.h:243
casacore::TableExprFuncNode::gsumsFUNC
@ gsumsFUNC
Definition ExprFuncNode.h:323
casacore::TableExprFuncNode::FirstAggrFunc
@ FirstAggrFunc
Definition ExprFuncNode.h:298
casacore::TableExprFuncNode::gstddev0FUNC
@ gstddev0FUNC
Definition ExprFuncNode.h:312
casacore::TableExprFuncNode::cmonthFUNC
@ cmonthFUNC
Definition ExprFuncNode.h:251
casacore::TableExprFuncNode::areverseFUNC
@ areverseFUNC
Definition ExprFuncNode.h:211
casacore::TableExprFuncNode::gfirstFUNC
@ gfirstFUNC
Definition ExprFuncNode.h:301
casacore::TableExprFuncNode::arrsumsqrsFUNC
@ arrsumsqrsFUNC
Definition ExprFuncNode.h:141
casacore::TableExprFuncNode::diagonalFUNC
@ diagonalFUNC
Definition ExprFuncNode.h:213
casacore::TableExprFuncNode::runallFUNC
@ runallFUNC
Definition ExprFuncNode.h:197
casacore::TableExprFuncNode::ghistFUNC
@ ghistFUNC
Definition ExprFuncNode.h:337
casacore::TableExprFuncNode::tanFUNC
@ tanFUNC
Definition ExprFuncNode.h:121
casacore::TableExprFuncNode::cFUNC
@ cFUNC
Definition ExprFuncNode.h:82
casacore::TableExprFuncNode::gntrueFUNC
@ gntrueFUNC
Definition ExprFuncNode.h:317
casacore::TableExprFuncNode::anyconeFUNC
@ anyconeFUNC
Definition ExprFuncNode.h:280
casacore::TableExprFuncNode::arrfractilesFUNC
@ arrfractilesFUNC
Definition ExprFuncNode.h:187
casacore::TableExprFuncNode::normangleFUNC
@ normangleFUNC
normalize angle between -pi and pi
Definition ExprFuncNode.h:285
casacore::TableExprFuncNode::gproductsFUNC
@ gproductsFUNC
Definition ExprFuncNode.h:324
casacore::TableExprFuncNode::nearabs3FUNC
@ nearabs3FUNC
Definition ExprFuncNode.h:88
casacore::TableExprFuncNode::rownrFUNC
@ rownrFUNC
special function returning Int row number
Definition ExprFuncNode.h:269
casacore::TableExprFuncNode::argFUNC
@ argFUNC
for Int, Double or DComplex returning Double
Definition ExprFuncNode.h:109
casacore::TableExprFuncNode::upcaseFUNC
@ upcaseFUNC
Definition ExprFuncNode.h:230
casacore::TableExprFuncNode::grmsFUNC
@ grmsFUNC
Definition ExprFuncNode.h:314
casacore::TableExprFuncNode::arrminFUNC
@ arrminFUNC
for Int or Double array returning Int or Double
Definition ExprFuncNode.h:145
casacore::TableExprFuncNode::nullarrayFUNC
@ nullarrayFUNC
masked array functions
Definition ExprFuncNode.h:289
casacore::TableExprFuncNode::gvariances0FUNC
@ gvariances0FUNC
Definition ExprFuncNode.h:327
casacore::TableExprFuncNode::arrsumsFUNC
@ arrsumsFUNC
Definition ExprFuncNode.h:133
casacore::TableExprFuncNode::hdmsFUNC
@ hdmsFUNC
return angles as hms/dms strings
Definition ExprFuncNode.h:265
casacore::TableExprFuncNode::gstddevs0FUNC
@ gstddevs0FUNC
Definition ExprFuncNode.h:329
casacore::TableExprFuncNode::ltrimFUNC
@ ltrimFUNC
Definition ExprFuncNode.h:235
casacore::TableExprFuncNode::gvariance1FUNC
@ gvariance1FUNC
Definition ExprFuncNode.h:311
casacore::TableExprFuncNode::anycone3FUNC
@ anycone3FUNC
Definition ExprFuncNode.h:281
casacore::TableExprFuncNode::arrstddevs1FUNC
@ arrstddevs1FUNC
Definition ExprFuncNode.h:171
casacore::TableExprFuncNode::boxntrueFUNC
@ boxntrueFUNC
Definition ExprFuncNode.h:203
casacore::TableExprFuncNode::iscolFUNC
@ iscolFUNC
Definition ExprFuncNode.h:221
casacore::TableExprFuncNode::downcaseFUNC
@ downcaseFUNC
Definition ExprFuncNode.h:231
casacore::TableExprFuncNode::boxallFUNC
@ boxallFUNC
Definition ExprFuncNode.h:198
casacore::TableExprFuncNode::mjdtodateFUNC
@ mjdtodateFUNC
Definition ExprFuncNode.h:244
casacore::TableExprFuncNode::arrntrueFUNC
@ arrntrueFUNC
for Bool array returning Int scalar
Definition ExprFuncNode.h:200
casacore::TableExprFuncNode::cones3FUNC
@ cones3FUNC
Definition ExprFuncNode.h:279
casacore::TableExprFuncNode::maxFUNC
@ maxFUNC
Definition ExprFuncNode.h:104
casacore::TableExprFuncNode::boxvariance0FUNC
@ boxvariance0FUNC
Definition ExprFuncNode.h:161
casacore::TableExprFuncNode::runstddev0FUNC
@ runstddev0FUNC
Definition ExprFuncNode.h:168
casacore::TableExprFuncNode::imagFUNC
@ imagFUNC
for Double or DComplex returning Double
Definition ExprFuncNode.h:113
casacore::TableExprFuncNode::angdistxFUNC
@ angdistxFUNC
Definition ExprFuncNode.h:276
casacore::TableExprFuncNode::nelemFUNC
@ nelemFUNC
Definition ExprFuncNode.h:225
casacore::TableExprFuncNode::sinhFUNC
@ sinhFUNC
Definition ExprFuncNode.h:91
casacore::TableExprFuncNode::boxnfalseFUNC
@ boxnfalseFUNC
Definition ExprFuncNode.h:207
casacore::TableExprFuncNode::dayFUNC
@ dayFUNC
Definition ExprFuncNode.h:250
casacore::TableExprFuncNode::gstddevs1FUNC
@ gstddevs1FUNC
Definition ExprFuncNode.h:330
casacore::TableExprFuncNode::gcountFUNC
@ gcountFUNC
Definition ExprFuncNode.h:300
casacore::TableExprFuncNode::arrallFUNC
@ arrallFUNC
Definition ExprFuncNode.h:195
casacore::TableExprFuncNode::ndimFUNC
@ ndimFUNC
for any array returning Int scalar
Definition ExprFuncNode.h:224
casacore::TableExprFuncNode::tanhFUNC
@ tanhFUNC
Definition ExprFuncNode.h:122
casacore::TableExprFuncNode::runnfalseFUNC
@ runnfalseFUNC
Definition ExprFuncNode.h:206
casacore::TableExprFuncNode::gstddev1FUNC
@ gstddev1FUNC
Definition ExprFuncNode.h:313
casacore::TableExprFuncNode::weekFUNC
@ weekFUNC
Definition ExprFuncNode.h:254
casacore::TableExprFuncNode::arravdevFUNC
@ arravdevFUNC
Definition ExprFuncNode.h:174
casacore::TableExprFuncNode::arrmaxFUNC
@ arrmaxFUNC
Definition ExprFuncNode.h:149
casacore::TableExprFuncNode::randFUNC
@ randFUNC
special function returning a random Double number
Definition ExprFuncNode.h:267
casacore::TableExprFuncNode::boxminFUNC
@ boxminFUNC
Definition ExprFuncNode.h:148
casacore::TableExprFuncNode::boxmedianFUNC
@ boxmedianFUNC
Definition ExprFuncNode.h:185
casacore::TableExprFuncNode::normFUNC
@ normFUNC
for Int, Double or DComplex returning Int or Double
Definition ExprFuncNode.h:106
casacore::TableExprFuncNode::findconeFUNC
@ findconeFUNC
Definition ExprFuncNode.h:282
casacore::TableExprFuncNode::gexpridFUNC
@ gexpridFUNC
Definition ExprFuncNode.h:343
casacore::TableExprFuncNode::FirstAggrArrayFunc
@ FirstAggrArrayFunc
Definition ExprFuncNode.h:320
casacore::TableExprFuncNode::marrayFUNC
@ marrayFUNC
Definition ExprFuncNode.h:290
casacore::TableExprFuncNode::findcone3FUNC
@ findcone3FUNC
Definition ExprFuncNode.h:283
casacore::TableExprFuncNode::dmsFUNC
@ dmsFUNC
return angles as dms strings
Definition ExprFuncNode.h:263
casacore::TableExprFuncNode::fmodFUNC
@ fmodFUNC
Definition ExprFuncNode.h:128
casacore::TableExprFuncNode::gallFUNC
@ gallFUNC
Definition ExprFuncNode.h:316
casacore::TableExprFuncNode::arrnfalsesFUNC
@ arrnfalsesFUNC
Definition ExprFuncNode.h:205
casacore::TableExprFuncNode::runvariance0FUNC
@ runvariance0FUNC
Definition ExprFuncNode.h:160
casacore::TableExprFuncNode::strlengthFUNC
@ strlengthFUNC
for String
Definition ExprFuncNode.h:229
casacore::TableExprFuncNode::coshFUNC
@ coshFUNC
Definition ExprFuncNode.h:93
casacore::TableExprFuncNode::arrflatFUNC
@ arrflatFUNC
Definition ExprFuncNode.h:296
casacore::TableExprFuncNode::arrstddev1FUNC
@ arrstddev1FUNC
Definition ExprFuncNode.h:170
casacore::TableExprFuncNode::rtrimFUNC
@ rtrimFUNC
Definition ExprFuncNode.h:236
casacore::TableExprFuncNode::arrntruesFUNC
@ arrntruesFUNC
Definition ExprFuncNode.h:201
casacore::TableExprFuncNode::eFUNC
@ eFUNC
Definition ExprFuncNode.h:81
casacore::TableExprFuncNode::substrFUNC
@ substrFUNC
Definition ExprFuncNode.h:237
casacore::TableExprFuncNode::ganyFUNC
@ ganyFUNC
Definition ExprFuncNode.h:315
casacore::TableExprFuncNode::boxstddev0FUNC
@ boxstddev0FUNC
Definition ExprFuncNode.h:169
casacore::TableExprFuncNode::runmeanFUNC
@ runmeanFUNC
Definition ExprFuncNode.h:156
casacore::TableExprFuncNode::signFUNC
@ signFUNC
for Int or Double returning Int or Double
Definition ExprFuncNode.h:124
casacore::TableExprFuncNode::cdateFUNC
@ cdateFUNC
Definition ExprFuncNode.h:256
casacore::TableExprFuncNode::replunmaskedFUNC
@ replunmaskedFUNC
Definition ExprFuncNode.h:295
casacore::TableExprFuncNode::arravdevsFUNC
@ arravdevsFUNC
Definition ExprFuncNode.h:175
casacore::TableExprFuncNode::squareFUNC
@ squareFUNC
for Int, Double or DComplex returning Int, Double or Complex
Definition ExprFuncNode.h:101
casacore::TableExprFuncNode::stringValue
static String stringValue(Bool val, const String &fmt, Int width)
Convert a value to a string.
casacore::TableExprFuncNode::stringValue
static String stringValue(Int64 val, const String &fmt, Int width)
casacore::TableExprFuncNode::stringValue
static String stringValue(Double val, const String &fmt, Int width, Int prec, const std::pair< int, int > &mvFormat, const Unit &unit)
casacore::TableExprFuncNode::getDComplex
DComplex getDComplex(const TableExprId &id)
casacore::TableExprFuncNode::rwOperands
std::vector< TENShPtr > & rwOperands()
Definition ExprFuncNode.h:396
casacore::TableExprFuncNode::stringAngle
static String stringAngle(double val, Int prec, MVAngle::formatTypes type)
Convert angle to a string (hms or dms).
casacore::TableExprFuncNode::string2Int
static Int64 string2Int(const String &)
Read a string as an integer, double, complex or bool.
casacore::TableExprFuncNode::stringDT
static String stringDT(const MVTime &dt, Int prec, MVTime::formatTypes)
Convert the date and/or time to a string.
casacore::TableExprFuncNode::table_p
Table table_p
(needed for sqrt)
Definition ExprFuncNode.h:473
casacore::TableExprFuncNode::TableExprFuncNode
TableExprFuncNode(FunctionType, NodeDataType, ValueType, const TableExprNodeSet &source, const vector< TENShPtr > &nodes, const Block< Int > &dtypeOper, const TableExprInfo &=TableExprInfo())
Constructor.
casacore::TableExprFuncNode::stringValue
static String stringValue(const DComplex &val, const String &fmt, Int width, Int prec)
casacore::TableExprFuncNode::stringDate
static String stringDate(const MVTime &dt)
casacore::TableExprFuncNode::operands
const std::vector< TENShPtr > & operands() const
Some functions to be used by TableExprNodeFuncArray.
Definition ExprFuncNode.h:394
casacore::TableExprFuncNode::checkOperands
static NodeDataType checkOperands(Block< Int > &dtypeOper, ValueType &resVT, Block< Int > &vtypeOper, FunctionType, std::vector< TENShPtr > &)
Check the data and value types of the operands.
casacore::TableExprFuncNode::~TableExprFuncNode
~TableExprFuncNode()
Destructor.
casacore::TableExprFuncNode::string2Bool
static Bool string2Bool(const String &)
casacore::TableExprFuncNode::stringDMS
static String stringDMS(double val, Int prec)
casacore::TableExprFuncNode::scale_p
Double scale_p
Definition ExprFuncNode.h:471
casacore::TableExprFuncNode::fillChildNodes
void fillChildNodes(const vector< TENShPtr > &nodes, const Block< Int > &dtypeOper)
Link the children to the node and convert the children to constants if possible.
casacore::TableExprFuncNode::stringHMS
static String stringHMS(double val, Int prec)
casacore::TableExprFuncNode::funcType
FunctionType funcType() const
Definition ExprFuncNode.h:398
casacore::TableExprFuncNode::getPrintFormat
static void getPrintFormat(String &fmt, Int &width, Int &prec, const std::vector< TENShPtr > &operands, const TableExprId &id)
Get the possible print format, width, and/or precision.
casacore::TableExprFuncNode::string2Complex
static DComplex string2Complex(const String &)
casacore::TableExprFuncNode::tryToConst
void tryToConst()
Try if the function gives a constant result.
casacore::TableExprFuncNode::stringTime
static String stringTime(const MVTime &dt, Int prec)
casacore::TableExprFuncNode::makeEqualUnits
static const Unit & makeEqualUnits(std::vector< TENShPtr > &nodes, uInt starg, uInt endarg)
Make the units of nodes from starg till endarg equal.
casacore::TableExprFuncNode::funcType_p
FunctionType funcType_p
Definition ExprFuncNode.h:469
casacore::TableExprFuncNode::argDataType_p
NodeDataType argDataType_p
Definition ExprFuncNode.h:470
casacore::TableExprFuncNode::getDate
MVTime getDate(const TableExprId &id)
casacore::TableExprFuncNode::getBool
Bool getBool(const TableExprId &id)
'get' Functions to get the desired result of a function
casacore::TableExprFuncNode::getMVFormat
static std::pair< int, int > getMVFormat(const String &fmt)
Get the MVTime/Angle format and optional precision.
casacore::TableExprFuncNode::getInt
Int64 getInt(const TableExprId &id)
casacore::TableExprId
Definition TableExprId.h:95
casacore::TableExprInfo
Class to connect a Table and its alias name.
Definition ExprNodeRep.h:125
casacore::TableExprNodeMulti::TableExprNodeMulti
TableExprNodeMulti(NodeDataType, ValueType, OperType, const TableExprNodeRep &source)
Constructor.
casacore::TableExprNodeMulti::operands_p
std::vector< TENShPtr > operands_p
Definition ExprNodeRep.h:715
casacore::TableExprNodeRep::unit
const Unit & unit() const
Get the unit.
Definition ExprNodeRep.h:748
casacore::TableExprNodeRep::NodeDataType
NodeDataType
Define the data types of a node.
Definition ExprNodeRep.h:205
casacore::TableExprNodeRep::ValueType
ValueType
Define the value types.
Definition ExprNodeRep.h:220
casacore::TableExprNodeSet
Definition ExprNodeSet.h:87
casacore::Table
Definition Table.h:157
casacore::TaqlRegex
Definition ExprNodeRep.h:80
casacore::Unit
Definition Unit.h:187
casacore
this file contains all the compiler specific defines
Definition mainpage.dox:28
casacore::acos
LatticeExprNode acos(const LatticeExprNode &expr)
casacore::uInt
unsigned int uInt
Definition aipstype.h:49
casacore::sin
LatticeExprNode sin(const LatticeExprNode &expr)
Numerical 1-argument functions.
casacore::Int64
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size).
Definition aipsxtype.h:36
casacore::Int
int Int
Definition aipstype.h:48
casacore::Bool
bool Bool
Define the standard types used by Casacore.
Definition aipstype.h:40
casacore::cos
LatticeExprNode cos(const LatticeExprNode &expr)
casacore::Double
double Double
Definition aipstype.h:53