Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://www.atnf.csiro.au/computing/software/casacore/casacore-1.2.0/doc/html/classcasa_1_1TableExprNodeBinary.html
Дата изменения: Unknown Дата индексирования: Mon Feb 14 23:17:11 2011 Кодировка: Поисковые слова: п п п п п п п п п п п п п п п п п п |
Abstract base class for a node having 0, 1, or 2 child nodes. More...
#include <ExprNodeRep.h>
Public Member Functions | |
TableExprNodeBinary (NodeDataType, ValueType, OperType, const Table &) | |
Constructor. | |
TableExprNodeBinary (NodeDataType, const TableExprNodeRep &, OperType) | |
virtual | ~TableExprNodeBinary () |
Destructor. | |
virtual void | show (ostream &, uInt indent) const |
Show the expression tree. | |
virtual Bool | isSingleValue () const |
Does the node result in a single value (for e.g. | |
virtual void | handleUnits () |
Handle the units of the children and possibly set the parent's unit. | |
void | convertConstChild () |
When one of the children is a constant, convert its data type to that of the other operand. | |
virtual void | replaceTablePtr (const Table &) |
Replace the Table in this node and all its children. | |
const TableExprNodeRep * | getLeftChild () const |
Get the child nodes. | |
const TableExprNodeRep * | getRightChild () const |
Static Public Member Functions | |
static NodeDataType | getDT (NodeDataType leftDtype, NodeDataType rightDype, OperType operType) |
Check the data types and get the common one. | |
static TableExprNodeRep | getTypes (const TableExprNodeRep &left, const TableExprNodeRep &right, OperType operType) |
Check the data and value types and get the common one. | |
static TableExprNodeRep * | fillNode (TableExprNodeBinary *thisNode, TableExprNodeRep *left, TableExprNodeRep *right, Bool convertConstType) |
Link the children to the node and convert the children to constants if needed and possible. | |
Static Protected Member Functions | |
static const Unit & | makeEqualUnits (TableExprNodeRep *left, TableExprNodeRep *&right) |
Make the units equal. | |
Protected Attributes | |
TableExprNodeRep * | lnode_p |
TableExprNodeRep * | rnode_p |
Abstract base class for a node having 0, 1, or 2 child nodes.
Internal
TableExprNodeBinary is a node in the table expression tree representing a binary node (i.e. having 2 operands).
TableExprNodeBinary is the abstract base class for all nodes in a table expression tree using up to 2 operands. It is used as the base class for the node classes representing operator +, -, etc.\.
This class contains the common functionality for the classes representing a binary (or unary) operator.
Definition at line 484 of file ExprNodeRep.h.
casa::TableExprNodeBinary::TableExprNodeBinary | ( | NodeDataType | , | |
ValueType | , | |||
OperType | , | |||
const Table & | ||||
) |
Constructor.
casa::TableExprNodeBinary::TableExprNodeBinary | ( | NodeDataType | , | |
const TableExprNodeRep & | , | |||
OperType | ||||
) |
virtual casa::TableExprNodeBinary::~TableExprNodeBinary | ( | ) | [virtual] |
Destructor.
void casa::TableExprNodeBinary::convertConstChild | ( | ) | [virtual] |
When one of the children is a constant, convert its data type to that of the other operand.
This avoids that conversions are done for each get.
Reimplemented from casa::TableExprNodeRep.
static TableExprNodeRep* casa::TableExprNodeBinary::fillNode | ( | TableExprNodeBinary * | thisNode, | |
TableExprNodeRep * | left, | |||
TableExprNodeRep * | right, | |||
Bool | convertConstType | |||
) | [static] |
Link the children to the node and convert the children to constants if needed and possible.
Also convert the node to constant if possible.
static NodeDataType casa::TableExprNodeBinary::getDT | ( | NodeDataType | leftDtype, | |
NodeDataType | rightDype, | |||
OperType | operType | |||
) | [static] |
Check the data types and get the common one.
const TableExprNodeRep* casa::TableExprNodeBinary::getLeftChild | ( | ) | const [inline] |
const TableExprNod |