Main Page   Modules   Class Hierarchy   Compound List   File List   Compound Members  

UnitExpr.H

00001 #ifndef UnitExpr_H
00002 #define UnitExpr_H
00003 
00004 #include <stdio.h>
00005 #include <citrus/UnitInfo.H>
00006 
00009 class UnitExpr {
00010 protected:
00011   UnitExpr*             m_lf ;
00012   UnitExpr*             m_rt ;
00013 
00014   //friend class Quantity ;
00015 
00016   void p_copy( const UnitExpr& src ) ;
00017 public:
00018   UnitInfo*             m_i ;
00019 
00020   UnitExpr( const UnitExpr& ue ) ;
00021   UnitExpr( UnitUnitInfo* u, UnitExpr* lf=0, UnitExpr* rt=0 ) ;
00022   UnitExpr( UnitOperInfo* o, UnitExpr* lf=0, UnitExpr* rt=0 ) ;
00023   ~UnitExpr() ;
00024 
00025   UnitExpr& operator = ( const UnitExpr& ue ) ;
00026 
00027   UnitExpr* left() { return m_lf ; } ;
00028   UnitExpr* right() { return m_rt ; } ;
00029 
00030   void print( FILE* f=stdout) const ;
00031 } ;
00032 
00033 #endif // UnitExpr_H
00034 
Citrus C++ Reference Manual  20010520