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

skiExecutable.h

00001 /*
00002   Copyright 1996-2001
00003   Simon Whiteside
00004 
00005 * $Id: skiExecutable_h-source.html,v 1.2 2001/11/05 19:22:33 sdw Exp $
00006 */
00007 
00008 #ifndef skiEXECUTABLE_H
00009 #define skiEXECUTABLE_H
00010 
00011 #include "skString.h"
00012 
00013 class CLASSEXPORT skRValueArray;
00014 class CLASSEXPORT skRValue;
00015 class CLASSEXPORT skExecutableIterator;
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 
00031 class CLASSEXPORT skiExecutable
00032 { 
00033  public:
00037    virtual ~skiExecutable() {}
00038   
00043   virtual int executableType() const=0;                 
00047   virtual int intValue() const=0;
00051   virtual bool boolValue() const=0;
00055   virtual Char charValue() const=0;
00059   virtual skString strValue() const=0; 
00063   virtual float floatValue() const=0;
00071   virtual bool setValue(const skString& field_name,const skString& attribute,const skRValue& value)=0; 
00079   virtual bool setValueAt(const skRValue& array_index,const skString& attribute,const skRValue& value)=0; 
00087   virtual bool getValue(const skString& field_name,const skString& attribute,skRValue& value)=0;
00095   virtual bool getValueAt(const skRValue& array_index,const skString& attribute,skRValue& value)=0;
00103   virtual bool method(const skString& method_name,skRValueArray& arguments,skRValue& return_value)=0;
00107   virtual bool equals(const skiExecutable * other_object) const=0;
00113   virtual skExecutableIterator * createIterator(const skString& qualifier)=0;
00118   virtual skExecutableIterator * createIterator()=0;
00119 };
00120 
00121 // Some help-defines for method, getValue and setValue
00122 
00123 #define IS_METHOD(s,m)          (s==m)
00124 #define IS_GETVALUE(s,v)        (s==v)
00125 #define IS_SETVALUE(s,v)        (s==v)
00126 
00127 
00128 #endif

Generated at Mon Nov 5 19:22:25 2001 for Simkin by doxygen1.2.1 written by Dimitri van Heesch, © 1997-2000