casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
casa::TableExprConeNode Class Reference

Class representing a cone search in table select expression. More...

#include <ExprConeNode.h>

Inheritance diagram for casa::TableExprConeNode:
casa::TableExprFuncNode casa::TableExprNodeMulti casa::TableExprNodeRep

List of all members.

Public Member Functions

 TableExprConeNode (FunctionType, NodeDataType, ValueType, const TableExprNodeSet &source, uInt origin)
 Constructor.
 ~TableExprConeNode ()
 Destructor.
Bool getBool (const TableExprId &id)
 'get' Functions to get the desired result of a function.
Int64 getInt (const TableExprId &id)
Array< BoolgetArrayBool (const TableExprId &id)
 Get an array value for this node in the given row.
Array< Int64getArrayInt (const TableExprId &id)

Static Public Member Functions

static NodeDataType checkOperands (Block< Int > &dtypeOper, ValueType &resVT, Block< Int > &vtypeOper, FunctionType, PtrBlock< TableExprNodeRep * > &)
 Check the data and value types of the operands.
static TableExprNodeRepfillNode (TableExprConeNode *thisNode, PtrBlock< TableExprNodeRep * > &nodes, const Block< Int > &dtypeOper)
 Link the children to the node and convert the children to constants if possible.
static void fillChildNodes (TableExprConeNode *thisNode, PtrBlock< TableExprNodeRep * > &nodes, const Block< Int > &dtypeOper)
 Link the children to the node and convert the children to constants if possible.

Private Member Functions

void tryToConst ()
 Try if the function gives a constant result.

Static Private Member Functions

static Int findNelem (const TableExprNodeRep *node)
 Find the number of elements in an argument.

Private Attributes

uInt origin_p

Detailed Description

Class representing a cone search in table select expression.

Intended use:

Internal

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25

Prerequisite

Synopsis

The class represents a cone search. It is a specialization of the TableExprFuncNode class. Currently the implementation is straightforward, but in the future it can do smarter things. For instance:

Definition at line 66 of file ExprConeNode.h.


Constructor & Destructor Documentation

Constructor.

Destructor.


Member Function Documentation

static NodeDataType casa::TableExprConeNode::checkOperands ( Block< Int > &  dtypeOper,
ValueType resVT,
Block< Int > &  vtypeOper,
FunctionType  ,
PtrBlock< TableExprNodeRep * > &   
) [static]

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.

Reimplemented from casa::TableExprFuncNode.

static void casa::TableExprConeNode::fillChildNodes ( TableExprConeNode thisNode,
PtrBlock< TableExprNodeRep * > &  nodes,
const Block< Int > &  dtypeOper 
) [static]

Link the children to the node and convert the children to constants if possible.

static TableExprNodeRep* casa::TableExprConeNode::fillNode ( TableExprConeNode thisNode,
PtrBlock< TableExprNodeRep * > &  nodes,
const Block< Int > &  dtypeOper 
) [static]

Link the children to the node and convert the children to constants if possible.

Also convert the node to constant if possible.

static Int casa::TableExprConeNode::findNelem ( const TableExprNodeRep node) [static, private]

Find the number of elements in an argument.

It returns -1 if unknown.

Get an array value for this node in the given row.

The appropriate functions are implemented in the derived classes and will usually invoke the get in their children and apply the operator on the resulting values.

Reimplemented from casa::TableExprNodeRep.

Reimplemented from casa::TableExprNodeRep.

'get' Functions to get the desired result of a function.

Reimplemented from casa::TableExprFuncNode.

Reimplemented from casa::TableExprFuncNode.

Try if the function gives a constant result.

If so, set the expression type to Constant.

Reimplemented from casa::TableExprFuncNode.


Member Data Documentation

Definition at line 117 of file ExprConeNode.h.


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