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

calculate.cpp

Go to the documentation of this file.
00001 #include <stdio.h>
00002 #include "StringValue.h"
00003 #include "InputParser.h"
00004 #include "IntValue.h"
00005 #include "BoolValue.h"
00006 
00007 int main(int argc, char **argv) {
00008         CValue* contextval = new CIntValue(10);
00009 
00010         
00011         CValue* healthprop = new CIntValue(20);
00012         CValue* deltahealth = new CIntValue(5);
00013 
00014         healthprop->SetProperty("deltahealth",deltahealth);
00015         contextval->SetProperty("health",healthprop);
00016 
00017         contextval->SetProperty("shield",new CIntValue(10));
00018 
00019 
00020     CCString blaat=CCString("(1+3)*2");
00021 
00022     CParser parser;
00023         parser.SetContext(contextval->AddRef());
00024 
00025     CExpression *expr = parser.ProcessText(blaat);
00026 
00027     if (expr) {
00028                 CValue *result = expr->Calculate();
00029                 if (result) {
00030                         CCString str = result->GetText();
00031                         const char *bla = (const char *)str;
00032                         printf("%s = %s\n",(const char*)blaat, (const char *)str);
00033                         result->Release();
00034                 }
00035                 expr->Release();
00036     }
00037         
00038         contextval->Release();
00039 
00040     return(0);
00041 }
00042  

Generated at Thu Feb 1 13:03:01 2001 for Ketsji Game Engine by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000