Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

CExpression Class Reference

#include <Expression.h>

Inheritance diagram for CExpression:

CConstExpr CIdentifierExpr CIfExpr COperator1Expr COperator2Expr List of all members.

Public Types

enum  {
  COPERATOR1EXPRESSIONID = 1, COPERATOR2EXPRESSIONID = 2, CCONSTEXPRESSIONID = 3, CIFEXPRESSIONID = 4,
  COPERATORVAREXPRESSIONID = 5, CIDENTIFIEREXPRESSIONID = 6
}

Public Methods

virtual bool MergeExpression (CExpression* otherexpr) = 0
 CExpression ()
virtual CValueCalculate () = 0
virtual unsigned char GetExpressionID () = 0
virtual bool NeedsRecalculated () = 0
virtual CExpression* CheckLink (std::vector<CBrokenLinkInfo*>& brokenlinks) = 0
virtual void ClearModified () = 0
virtual void BroadcastOperators (VALUE_OPERATOR op) = 0
virtual CExpression* AddRef ()
virtual CExpression* Release (CExpression* complicatedtrick=NULL)

Protected Methods

virtual ~CExpression () = 0

Protected Attributes

int m_refcount

Member Enumeration Documentation

anonymous enum
 

Enumeration values:
COPERATOR1EXPRESSIONID  
COPERATOR2EXPRESSIONID  
CCONSTEXPRESSIONID  
CIFEXPRESSIONID  
COPERATORVAREXPRESSIONID  
CIDENTIFIEREXPRESSIONID  

Definition at line 79 of file Expression.h.


Constructor & Destructor Documentation

CExpression::~CExpression ( ) [protected, pure virtual]
 

Definition at line 33 of file Expression.cpp.

CExpression::CExpression ( )
 

Definition at line 25 of file Expression.cpp.


Member Function Documentation

CExpression * CExpression::AddRef ( ) [inline, virtual]
 

Definition at line 105 of file Expression.h.

Referenced by CBrokenLinkInfo::BreakLink(), COperator1Expr::CheckLink(), CConstExpr::CheckLink(), COperator2Expr::MergeExpression(), and SCA_PropertyActuator::Update().

virtual void CExpression::BroadcastOperators ( VALUE_OPERATOR op ) [pure virtual]
 

Reimplemented in CConstExpr, CIdentifierExpr, CIfExpr, COperator1Expr, and COperator2Expr.

Referenced by COperator2Expr::BroadcastOperators(), and COperator1Expr::BroadcastOperators().

virtual CValue* CExpression::Calculate ( ) [pure virtual]
 

Reimplemented in CConstExpr, CIdentifierExpr, CIfExpr, COperator1Expr, and COperator2Expr.

Referenced by EXP_ParseInput(), CParser::GetFloat(), CParser::GetValue(), SCA_ExpressionController::Trigger(), SCA_PropertyActuator::Update(), and main().

virtual CExpression* CExpression::CheckLink ( std::vector< CBrokenLinkInfo *>& brokenlinks ) [pure virtual]
 

Reimplemented in CConstExpr, CIdentifierExpr, CIfExpr, COperator1Expr, and COperator2Expr.

Referenced by COperator1Expr::CheckLink().

virtual void CExpression::ClearModified ( ) [pure virtual]
 

Reimplemented in CConstExpr, CIdentifierExpr, CIfExpr, COperator1Expr, and COperator2Expr.

Referenced by COperator2Expr::ClearModified(), and COperator1Expr::ClearModified().

virtual unsigned char CExpression::GetExpressionID ( ) [pure virtual]
 

Reimplemented in CConstExpr, CIdentifierExpr, CIfExpr, COperator1Expr, and COperator2Expr.

Referenced by COperator2Expr::MergeExpression().

virtual bool CExpression::MergeExpression ( CExpression * otherexpr ) [pure virtual]
 

Reimplemented in CConstExpr, CIdentifierExpr, CIfExpr, COperator1Expr, and COperator2Expr.

Referenced by COperator1Expr::MergeExpression().

virtual bool CExpression::NeedsRecalculated ( ) [pure virtual]
 

Reimplemented in CConstExpr, CIdentifierExpr, CIfExpr, COperator1Expr, and COperator2Expr.

Referenced by COperator2Expr::NeedsRecalculated(), COperator1Expr::NeedsRecalculated(), and CIfExpr::NeedsRecalculated().

CExpression * CExpression::Release ( CExpression * complicatedtrick = NULL ) [inline, virtual]
 

Definition at line 114 of file Expression.h.

Referenced by COperator2Expr::CheckLink(), COperator1Expr::CheckLink(), CConstExpr::CheckLink(), EXP_ParseInput(), CParser::GetFloat(), CParser::GetValue(), COperator2Expr::MergeExpression(), CBrokenLinkInfo::RestoreLink(), SCA_ExpressionController::Trigger(), SCA_PropertyActuator::Update(), main(), and CBrokenLinkInfo::~CBrokenLinkInfo().


Member Data Documentation

int CExpression::m_refcount [protected]
 

Definition at line 129 of file Expression.h.


The documentation for this class was generated from the following files:
Generated at Thu Feb 1 13:03:33 2001 for Ketsji Game Engine by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000