casa
$Rev:20696$
|
Class to hold values from time grammar parser. More...
#include <MSTimeParse.h>
Public Member Functions | |
MSTimeParse () | |
Default constructor. | |
MSTimeParse (const MeasurementSet *ms, const TableExprNode &otherTens, const Bool honourRowFlags=True) | |
Associate the ms and the shorthand. | |
MSTimeParse (const MeasurementSet *ms, const TableExprNode &colAsTEN, MSSelectableMainColumn &msMainColInterface, const TableExprNode &otherTEN, const Bool honourRowFlags=True) | |
~MSTimeParse () | |
const TableExprNode * | selectTime (const MEpoch &time, bool daytime=false) |
~MSTimeParse() { if (node_p) delete node_p;node_p=0x0; if (otherTens_p) delete otherTens_p;otherTens_p=0x0; }; | |
const TableExprNode * | selectTimeGT (const MEpoch &lowboundTime, bool daytime=false) |
const TableExprNode * | selectTimeLT (const MEpoch &upboundTime, bool daytime=false) |
const TableExprNode * | selectTimeRange (const MEpoch &lowboundTime, const MEpoch &upboundTime, bool daytime=false) |
Matrix< Double > | selectedTimes () |
const TableExprNode * | addCondition (TableExprNode &condition) |
void | getDefaults () |
Int | year0 () |
Int | month0 () |
Int | day0 () |
Int | hour0 () |
Int | minute0 () |
Int | second0 () |
Int | fractionalsec0 () |
Double | defaultInteg () |
void | accumulateTimeList (const Double t0, const Double t1) |
Static Public Member Functions | |
static void | setDefaults (TimeFields &tf, Bool dataOrigin=True) |
static void | copyDefaults (TimeFields &target, TimeFields &source) |
static const MEpoch * | yearTimeConvert (Int year=-1, Int month=-1, Int day=-1, Int hour=-1, Int minute=-1, Int second=-1, Int millisec=-1) |
static const MEpoch * | yearTimeConvert (const TimeFields &tf) |
static const TableExprNode * | node () |
Get table expression node object. | |
static void | validate (const TimeFields &tf) |
static void | reset () |
static void | cleanup () |
static Double | toTAIInSec (const MEpoch &time) |
Public Attributes | |
MVTime | firstRowTime |
Int | defaultYear |
Int | defaultMonth |
Int | defaultDay |
Int | defaultHour |
Int | defaultMinute |
Int | defaultSeconds |
Int | defaultFractionalSec |
Double | defaultExposure |
const String | colName |
Bool | honourRowFlags_p |
Static Public Attributes | |
static TableExprNode * | node_p |
static TableExprNode * | otherTens_p |
private: | |
static Bool | defaultTimeComputed |
static MeasurementSet * | ms_p |
static MEpoch * | yeartime |
static MEpoch * | daytime |
static Matrix< Double > | timeList |
static MSTimeParse * | thisMSTParser |
static TableExprNode | columnAsTEN_p |
static MSSelectableMainColumn * | mainColumn_p |
Class to hold values from time grammar parser.
Internal
MSTimeParse is the class used to parse a time command.
MSTimeParse is used by the parser of time sub-expression statements. The parser is written in Bison and Flex in files MSTimeGram.y and .l. The statements in there use the routines in this file to act upon a reduced rule. Since multiple tables can be given (with a shorthand), the table names are stored in a list. The variable names can be qualified by the table name and will be looked up in the appropriate table.
The class MSTimeParse only contains information about a table used in the table command. Global variables (like a list and a vector) are used in MSTimeParse.cc to hold further information.
Global functions are used to operate on the information. The main function is the global function msTimeCommand. It executes the given STaQL command and returns the resulting ms. This is, in fact, the only function to be used by a user.
It is necessary to be able to give a ms command in ASCII. This can be used in a CLI or in the table browser to get a subset of a table or to sort a table.
Definition at line 89 of file MSTimeParse.h.
Default constructor.
casa::MSTimeParse::MSTimeParse | ( | const MeasurementSet * | ms, |
const TableExprNode & | otherTens, | ||
const Bool | honourRowFlags = True |
||
) |
Associate the ms and the shorthand.
casa::MSTimeParse::MSTimeParse | ( | const MeasurementSet * | ms, |
const TableExprNode & | colAsTEN, | ||
MSSelectableMainColumn & | msMainColInterface, | ||
const TableExprNode & | otherTEN, | ||
const Bool | honourRowFlags = True |
||
) |
casa::MSTimeParse::~MSTimeParse | ( | ) | [inline] |
Definition at line 102 of file MSTimeParse.h.
References columnAsTEN_p.
void casa::MSTimeParse::accumulateTimeList | ( | const Double | t0, |
const Double | t1 | ||
) |
const TableExprNode* casa::MSTimeParse::addCondition | ( | TableExprNode & | condition | ) |
static void casa::MSTimeParse::cleanup | ( | ) | [inline, static] |
Definition at line 150 of file MSTimeParse.h.
static void casa::MSTimeParse::copyDefaults | ( | TimeFields & | target, |
TimeFields & | source | ||
) | [static] |
Int casa::MSTimeParse::day0 | ( | ) | [inline] |
Definition at line 141 of file MSTimeParse.h.
References defaultDay.
Double casa::MSTimeParse::defaultInteg | ( | ) | [inline] |
Definition at line 146 of file MSTimeParse.h.
References defaultExposure.
Int casa::MSTimeParse::fractionalsec0 | ( | ) | [inline] |
Definition at line 145 of file MSTimeParse.h.
References defaultFractionalSec.
void casa::MSTimeParse::getDefaults | ( | ) |
Int casa::MSTimeParse::hour0 | ( | ) | [inline] |
Definition at line 142 of file MSTimeParse.h.
References defaultHour.
Int casa::MSTimeParse::minute0 | ( | ) | [inline] |
Definition at line 143 of file MSTimeParse.h.
References defaultMinute.
Int casa::MSTimeParse::month0 | ( | ) | [inline] |
Definition at line 140 of file MSTimeParse.h.
References defaultMonth.
static const TableExprNode* casa::MSTimeParse::node | ( | ) | [static] |
Get table expression node object.
static void casa::MSTimeParse::reset | ( | ) | [inline, static] |
Definition at line 149 of file MSTimeParse.h.
References casa::Matrix< T >::resize(), and timeList.
Int casa::MSTimeParse::second0 | ( | ) | [inline] |
Definition at line 144 of file MSTimeParse.h.
References defaultSeconds.
Matrix<Double> casa::MSTimeParse::selectedTimes | ( | ) | [inline] |
Definition at line 119 of file MSTimeParse.h.
References timeList.
const TableExprNode* casa::MSTimeParse::selectTime | ( | const MEpoch & | time, |
bool | daytime = false |
||
) |
~MSTimeParse() { if (node_p) delete node_p;node_p=0x0; if (otherTens_p) delete otherTens_p;otherTens_p=0x0; };
const TableExprNode* casa::MSTimeParse::selectTimeGT | ( | const MEpoch & | lowboundTime, |
bool | daytime = false |
||
) |
const TableExprNode* casa::MSTimeParse::selectTimeLT | ( | const MEpoch & | upboundTime, |
bool | daytime = false |
||
) |
const TableExprNode* casa::MSTimeParse::selectTimeRange | ( | const MEpoch & | lowboundTime, |
const MEpoch & | upboundTime, | ||
bool | daytime = false |
||
) |
static void casa::MSTimeParse::setDefaults | ( | TimeFields & | tf, |
Bool | dataOrigin = True |
||
) | [static] |
static Double casa::MSTimeParse::toTAIInSec | ( | const MEpoch & | time | ) | [static] |
static void casa::MSTimeParse::validate | ( | const TimeFields & | tf | ) | [static] |
Int casa::MSTimeParse::year0 | ( | ) | [inline] |
Definition at line 139 of file MSTimeParse.h.
References defaultYear.
static const MEpoch* casa::MSTimeParse::yearTimeConvert | ( | Int | year = -1 , |
Int | month = -1 , |
||
Int | day = -1 , |
||
Int | hour = -1 , |
||
Int | minute = -1 , |
||
Int | second = -1 , |
||
Int | millisec = -1 |
||
) | [static] |
static const MEpoch* casa::MSTimeParse::yearTimeConvert | ( | const TimeFields & | tf | ) | [static] |
Definition at line 165 of file MSTimeParse.h.
Definition at line 170 of file MSTimeParse.h.
Referenced by ~MSTimeParse().
MEpoch* casa::MSTimeParse::daytime [static] |
Definition at line 161 of file MSTimeParse.h.
Definition at line 162 of file MSTimeParse.h.
Referenced by day0().
Definition at line 164 of file MSTimeParse.h.
Referenced by defaultInteg().
Definition at line 162 of file MSTimeParse.h.
Referenced by fractionalsec0().
Definition at line 162 of file MSTimeParse.h.
Referenced by hour0().
Definition at line 162 of file MSTimeParse.h.
Referenced by minute0().
Definition at line 162 of file MSTimeParse.h.
Referenced by month0().
Definition at line 162 of file MSTimeParse.h.
Referenced by second0().
Definition at line 156 of file MSTimeParse.h.
Definition at line 162 of file MSTimeParse.h.
Referenced by year0().
Definition at line 157 of file MSTimeParse.h.
Definition at line 166 of file MSTimeParse.h.
Definition at line 171 of file MSTimeParse.h.
MeasurementSet* casa::MSTimeParse::ms_p [static] |
Reimplemented from casa::MSParse.
Definition at line 158 of file MSTimeParse.h.
TableExprNode* casa::MSTimeParse::node_p [static] |
Definition at line 150 of file MSTimeParse.h.
TableExprNode* casa::MSTimeParse::otherTens_p [static] |
private:
Definition at line 155 of file MSTimeParse.h.
MSTimeParse* casa::MSTimeParse::thisMSTParser [static] |
Definition at line 169 of file MSTimeParse.h.
Matrix<Double> casa::MSTimeParse::timeList [static] |
Definition at line 167 of file MSTimeParse.h.
Referenced by reset(), and selectedTimes().
MEpoch* casa::MSTimeParse::yeartime [static] |
Definition at line 160 of file MSTimeParse.h.