12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #ifndef KSGSKlasse_H
- #define KSGSKlasse_H
- #include <Knopf.h>
- #include <Fenster.h>
- #include <Bild.h>
- #include <Animation.h>
- #include "KSGSFunktion.h"
- namespace KSGScript
- {
- class KSGSKlasse; // aus dieser Datei
- class KSGSKlasseInstanz
- {
- protected:
- RCArray< KSGSVariable > *lokaleVariablen;
- RCArray< KSGSFunktion > *funktionen;
- Array< bool > *varPublic;
- KSGScriptObj *obj;
- int typ;
- int ref;
- public:
- // Konstruktor
- __declspec( dllexport ) KSGSKlasseInstanz( int typ, Array< KSGSVariableDef* > *zVars, RCArray< KSGSFunktion > *funcs, KSGScriptObj *zObj );
- // Destruktor
- __declspec( dllexport ) ~KSGSKlasseInstanz();
- // nicht constant
- __declspec( dllexport ) virtual KSGSVariable *startFunktion( int id, bool zugriff, RCArray< KSGSVariable > *parameter );
- __declspec( dllexport ) virtual KSGSVariable *doOperator( int id, KSGSVariable *rechts );
- __declspec( dllexport ) virtual void setVariable( int id, KSGSVariable *var );
- // constant
- __declspec( dllexport ) virtual KSGSVariable *getVariable( int id, bool zugriff ) const;
- __declspec( dllexport ) virtual KSGSVariable *umwandelnIn( int typ ) const;
- __declspec( dllexport ) virtual int getTyp() const;
- // verarbeiten
- __declspec( dllexport ) virtual bool getBool() const;
- __declspec( dllexport ) virtual int getInt() const;
- __declspec( dllexport ) virtual double getDouble() const;
- __declspec( dllexport ) virtual Text *getText() const;
- __declspec( dllexport ) virtual Bild *getBild() const;
- __declspec( dllexport ) virtual MausEreignis getMausEreignis() const;
- __declspec( dllexport ) virtual TastaturEreignis getTastaturEreignis() const;
- __declspec( dllexport ) virtual TextFeld *getTextFeld() const;
- __declspec( dllexport ) virtual Knopf *getKnopf() const;
- __declspec( dllexport ) virtual Fenster *getFenster() const;
- __declspec( dllexport ) virtual BildZ *getBildZ() const;
- __declspec( dllexport ) virtual Animation2DData *getAnimation2DData() const;
- __declspec( dllexport ) virtual Animation2D *getAnimation2D() const;
- __declspec( dllexport ) virtual Zeichnung *getZeichnung() const;
- __declspec( dllexport ) virtual RCArray< KSGSVariable > *getArray() const;
- // Reference Counting
- __declspec( dllexport ) virtual KSGSVariable *getThis();
- __declspec( dllexport ) virtual KSGSVariable *release();
- // static
- __declspec( dllexport ) static KSGSVariable *erstellVariable( KSGScriptObj *zObj, KSGSVariableDef *def );
- };
- class KSGSKlasse
- {
- private:
- Array< KSGSVariableDef* > *var;
- RCArray< KSGSFunktion > *funktionen;
- int id;
- int ref;
- public:
- // Konstruktor
- __declspec( dllexport ) KSGSKlasse( int id );
- // Destruktor
- __declspec( dllexport ) ~KSGSKlasse();
- // nicht constant
- __declspec( dllexport ) void addVariable( KSGSVariableDef *var );
- __declspec( dllexport ) void addFunktion( KSGSFunktion *func );
- __declspec( dllexport ) KSGSKlasseInstanz *erstellInstanz( KSGScriptObj *zObj );
- // constant
- __declspec( dllexport ) int getId() const;
- // Reference Counting
- __declspec( dllexport ) KSGSKlasse *getThis();
- __declspec( dllexport ) KSGSKlasse *release();
- };
- }
- #endif
|