casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
casacore::MSArrayParse Class Reference

Class to hold values from array grammar parser. More...

#include <MSArrayParse.h>

Inheritance diagram for casacore::MSArrayParse:

Public Member Functions

 MSArrayParse ()
 Default constructor. More...
 MSArrayParse (const MeasurementSet *ms)
 Associate the ms and the shorthand. More...
const TableExprNodeselectRangeGTAndLT (const Int &n0, const Int &n1)
 ~MSArrayParse() {if (node_p) delete node_p;node_p=0x0;} More...
const TableExprNodeselectRangeGEAndLE (const Int &n0, const Int &n1)
const TableExprNodeselectArrayIds (const Vector< Int > &arrayids)
const TableExprNodeselectArrayIds ()
const TableExprNodeselectArrayIdsGT (const Vector< Int > &arrayids)
const TableExprNodeselectArrayIdsLT (const Vector< Int > &arrayids)
const TableExprNodeselectArrayIdsGTEQ (const Vector< Int > &arrayids)
const TableExprNodeselectArrayIdsLTEQ (const Vector< Int > &arrayids)
std::vector< Int > & accumulateIDs (const Int id0, const Int id1=-1)
const TableExprNode node ()
 Get table expression node object. More...
Vector< IntselectedIDs ()
void reset ()
void cleanup ()
void setMaxArray (const Int &n)
- Public Member Functions inherited from casacore::MSParse
 MSParse ()
 Default constructor for List container class. More...
 MSParse (const MSParse &)
 Copy constructor (copy semantics). More...
 ~MSParse ()
MSParseoperator= (const MSParse &)
 Assignment (copy semantics). More...
 MSParse (const MeasurementSet *ms, const String &shorthand)
 Associate the ms and the shorthand. More...
 MSParse (const MSSelectableTable *ms, const String &shorthand)
 Associate the ms and the shorthand. More...
Bool test (const String &shortHand) const
 Test if shorthand matches. More...
Stringshorthand ()
 Get the shorthand. More...
MeasurementSetms ()
 Get ms object. More...
MSSelectableTablemsInterface ()
 Get ms object. More...
void setMS (MeasurementSet *ms)
void setMSInterface (MSSelectableTable *msI)
void addCondition (TableExprNode &target, TableExprNode &source)

Static Public Attributes

static MSArrayParsethisMSAParser
- Static Public Attributes inherited from casacore::MSParse
static MeasurementSetms_p
static MSSelectableTablemsInterface_p

Private Member Functions

void appendToIDList (const Vector< Int > &v)

Private Attributes

TableExprNode node_p
Vector< IntidList
std::vector< IntparsedIDList_p
const String colName
Int maxArrays_p

Detailed Description

Class to hold values from array grammar parser.

Intended use:



MSArrayParse is the class used to parse a array command.


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

Global functions are used to operate on the information. The main function is the global function msArrayCommand. 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 87 of file MSArrayParse.h.

Constructor & Destructor Documentation

casacore::MSArrayParse::MSArrayParse ( )

Default constructor.

casacore::MSArrayParse::MSArrayParse ( const MeasurementSet ms)

Associate the ms and the shorthand.

Member Function Documentation

std::vector<Int>& casacore::MSArrayParse::accumulateIDs ( const Int  id0,
const Int  id1 = -1 
void casacore::MSArrayParse::appendToIDList ( const Vector< Int > &  v)
void casacore::MSArrayParse::cleanup ( )

Definition at line 114 of file MSArrayParse.h.

const TableExprNode casacore::MSArrayParse::node ( )

Get table expression node object.

void casacore::MSArrayParse::reset ( )

Definition at line 113 of file MSArrayParse.h.

References idList, parsedIDList_p, and casacore::Vector< T >::resize().

const TableExprNode* casacore::MSArrayParse::selectArrayIds ( const Vector< Int > &  arrayids)
const TableExprNode* casacore::MSArrayParse::selectArrayIds ( )

Definition at line 102 of file MSArrayParse.h.

References parsedIDList_p, and selectArrayIds().

Referenced by selectArrayIds().

const TableExprNode* casacore::MSArrayParse::selectArrayIdsGT ( const Vector< Int > &  arrayids)
const TableExprNode* casacore::MSArrayParse::selectArrayIdsGTEQ ( const Vector< Int > &  arrayids)
const TableExprNode* casacore::MSArrayParse::selectArrayIdsLT ( const Vector< Int > &  arrayids)
const TableExprNode* casacore::MSArrayParse::selectArrayIdsLTEQ ( const Vector< Int > &  arrayids)
Vector<Int> casacore::MSArrayParse::selectedIDs ( )

Definition at line 112 of file MSArrayParse.h.

References idList.

const TableExprNode* casacore::MSArrayParse::selectRangeGEAndLE ( const Int n0,
const Int n1 
const TableExprNode* casacore::MSArrayParse::selectRangeGTAndLT ( const Int n0,
const Int n1 

~MSArrayParse() {if (node_p) delete node_p;node_p=0x0;}

void casacore::MSArrayParse::setMaxArray ( const Int n)

Definition at line 116 of file MSArrayParse.h.

References maxArrays_p.

Member Data Documentation

const String casacore::MSArrayParse::colName

Definition at line 124 of file MSArrayParse.h.

Vector<Int> casacore::MSArrayParse::idList

Definition at line 122 of file MSArrayParse.h.

Referenced by reset(), and selectedIDs().

Int casacore::MSArrayParse::maxArrays_p

Definition at line 126 of file MSArrayParse.h.

Referenced by setMaxArray().

TableExprNode casacore::MSArrayParse::node_p

Definition at line 121 of file MSArrayParse.h.

std::vector<Int> casacore::MSArrayParse::parsedIDList_p

Definition at line 123 of file MSArrayParse.h.

Referenced by reset(), and selectArrayIds().

MSArrayParse* casacore::MSArrayParse::thisMSAParser

Definition at line 118 of file MSArrayParse.h.

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