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

skExecutable.h

00001 /*
00002   Copyright 1996-2001
00003   Simon Whiteside
00004 
00005 * $Id: skExecutable_h-source.html,v 1.8 2001/05/14 07:43:34 sdw Exp $
00006 */
00007 
00008 #ifndef skEXECUTABLE_H
00009 #define skEXECUTABLE_H
00010 
00011 #include "skString.h"
00012 
00013 class skRValueArray;
00014 class skRValue;
00015 
00016 
00017 
00018 /*
00019  * this constant is for undefined type primitive objects
00020  */
00021 const int UNDEFINED_TYPE=0;
00022 /*
00023  * this constant is should be used for the type of any user-defined primitive objects
00024  */
00025 const int START_USER_TYPES=10;
00026 
00030 class skExecutable
00031 { 
00032  public:
00036   skExecutable();
00040   virtual ~skExecutable();
00041   
00046   virtual int executableType() const;                   
00050   virtual int intValue() const;
00054   virtual bool boolValue() const;
00058   virtual char charValue() const;
00062   virtual skString strValue() const; 
00066   virtual float floatValue() const;
00074   virtual bool setValue(const skString& field_name,const skString& attribute,const skRValue& value); 
00082   virtual bool setValueAt(const skRValue& array_index,const skString& attribute,const skRValue& value); 
00090   virtual bool getValue(const skString& field_name,const skString& attribute,skRValue& value);
00098   virtual bool getValueAt(const skRValue& array_index,const skString& attribute,skRValue& value);
00106   virtual bool method(const skString& method_name,skRValueArray& arguments,skRValue& return_value);
00110   virtual bool equals(skExecutable * other_object) const;
00111  private:
00115   skExecutable(const skExecutable& other);
00119   skExecutable& operator=(const skExecutable& other);
00120 };
00121 
00122 // Some help-defines for method, getValue and setValue
00123 
00124 #define IS_METHOD(s,m)          (s==m)
00125 #define IS_GETVALUE(s,v)        (s==v)
00126 #define IS_SETVALUE(s,v)        (s==v)
00127 
00128 
00129 #endif

Generated at Mon May 14 08:43:08 2001 for Simkin by doxygen1.2.1 written by Dimitri van Heesch, © 1997-2000