MSAntennaParse.h

Classes

MSAntennaParse -- Class to hold values from antenna grammar parser (full description)

class MSAntennaParse : public MSParse

Interface

Public Members
MSAntennaParse ()
MSAntennaParse (const MeasurementSet* ms)
const TableExprNode* selectAntennaIds(const Vector<Int>& antennaIds)
const TableExprNode* selectAntennaIds(const Vector<Int>& antennaIds1, const Vector<Int>& antennaIds2)
const TableExprNode* selectNameOrStation(const Vector<String>& antenna)
const TableExprNode* selectNameOrStation(const Vector<String>& antenna1, const Vector<String>& antenna2)
const TableExprNode* selectNameOrStation(const String& antenna1, const String& antenna2)
const TableExprNode* selectFromIdsAndCPs(const Int index, const String& cp)
const TableExprNode* selectFromIdsAndCPs(const Int firstIndex, const String& firstcp, const Int secondIndex, const String& secondcp)
static const TableExprNode* node()
Private Members
void setTEN(TableExprNode&)

Description

Prerequisite

Etymology

MSAntennaParse is the class used to parse a antenna command.

Synopsis

MSAntennaParse is used by the parser of antenna sub-expression statements. The parser is written in Bison and Flex in files MSAntennaGram.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 MSAntennaParse only contains information about a table used in the table command. Global variables (like a list and a vector) are used in MSAntennaParse.cc to hold further information.

Global functions are used to operate on the information. The main function is the global function msAntennaCommand. It executes the given STaQL command and returns the resulting ms. This is, in fact, the only function to be used by a user.

Motivation

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.

Member Description

MSAntennaParse ()

Default constructor

MSAntennaParse (const MeasurementSet* ms)

Associate the ms and the shorthand.

const TableExprNode* selectAntennaIds(const Vector<Int>& antennaIds)

const TableExprNode* selectAntennaIds(const Vector<Int>& antennaIds1, const Vector<Int>& antennaIds2)

const TableExprNode* selectNameOrStation(const Vector<String>& antenna)

const TableExprNode* selectNameOrStation(const Vector<String>& antenna1, const Vector<String>& antenna2)

const TableExprNode* selectNameOrStation(const String& antenna1, const String& antenna2)

const TableExprNode* selectFromIdsAndCPs(const Int index, const String& cp)

selection from antenna and CP

const TableExprNode* selectFromIdsAndCPs(const Int firstIndex, const String& firstcp, const Int secondIndex, const String& secondcp)

static const TableExprNode* node()

Get table expression node object.

void setTEN(TableExprNode&)