12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- #ifndef KSGScriptObj_H
- #define KSGScriptObj_H
- #include <Zeichnung.h>
- #include <Text.h>
- #include <Array.h>
- #include <Schrift.h>
- #include <TextFeld.h>
- using namespace Framework;
- namespace KSGScript
- {
- class KSGSFunktion; // ../Befehl/KSGSFunktion.h
- class KSGSFunktionInstanz; // ../Befehl/KSGSFunktion.h
- class KSGSKlasse; // ../Befehl/KSGSKlasse.h
- class KSGSKlasseInstanz; // ../Befehl/KSGSKlasse.h
- typedef KSGSKlasseInstanz KSGSVariable;
- class KSGScriptObj : public Zeichnung
- {
- private:
- Text *pfad;
- Text *wd;
- void *rParam;
- void( *rFunktion )( void *, RCArray< KSGSVariable > *, KSGSVariable ** );
- RCArray< KSGSVariable > *variablen;
- RCArray< KSGSFunktion > *funktionen;
- RCArray< KSGSKlasse > *klassen;
- Schrift *schrift;
- Bildschirm *screen;
- RCArray< KSGSVariable > *mausP;
- RCArray< KSGSVariable > *tastaturP;
- RCArray< KSGSVariable > *tickP;
- RCArray< KSGSVariable > *renderP;
- TextFeld *log;
- int mainId;
- int mausId;
- int tastaturId;
- int tickId;
- int renderId;
- int geladen;
- int scrId;
- Critical cs;
- int ref;
- public:
- // Konstruktor
- __declspec( dllexport ) KSGScriptObj();
- // Destruktor
- __declspec( dllexport ) ~KSGScriptObj();
- // nicht constant
- __declspec( dllexport ) virtual void lock();
- __declspec( dllexport ) virtual void unlock();
- __declspec( dllexport ) virtual void setScriptDatei( const char *pfad );
- __declspec( dllexport ) virtual void setScriptDatei( Text *pfad );
- __declspec( dllexport ) virtual bool neuLaden();
- __declspec( dllexport ) virtual void zurücksetzen();
- __declspec( dllexport ) virtual void setRückrufParam( void *p );
- __declspec( dllexport ) virtual void setRückrufFunktion( void( *funktion )( void *, RCArray< KSGSVariable > *, KSGSVariable ** ) );
- __declspec( dllexport ) virtual void setSchriftZ( Schrift *s );
- __declspec( dllexport ) virtual void setBildschirmZ( Bildschirm *s );
- __declspec( dllexport ) virtual void doMausEreignis( MausEreignis &me ) override;
- __declspec( dllexport ) virtual void doTastaturEreignis( TastaturEreignis &te ) override;
- __declspec( dllexport ) virtual bool tick( double zeit ) override;
- __declspec( dllexport ) virtual void render( Bild &zRObj ) override;
- __declspec( dllexport ) virtual KSGSVariable *startFunktion( int id, RCArray< KSGSVariable > *parameter );
- __declspec( dllexport ) virtual KSGSVariable *erstellKlassenInstanz( int id );
- __declspec( dllexport ) virtual void setVariable( int id, KSGSVariable *var );
- __declspec( dllexport ) virtual Text *convertPfad( char *pf );
- __declspec( dllexport ) virtual void setLog( TextFeld *log );
- __declspec( dllexport ) virtual void logNachricht( char *n );
- // constant
- __declspec( dllexport ) virtual KSGSVariable *rückruf( RCArray< KSGSVariable > *parameter ) const;
- __declspec( dllexport ) virtual Text *getScriptDateiPfad() const;
- __declspec( dllexport ) virtual Text *zScriptDateiPfad() const;
- __declspec( dllexport ) virtual Schrift *getSchrift() const;
- __declspec( dllexport ) virtual Schrift *zSchrift() const;
- __declspec( dllexport ) virtual Bildschirm *getBildschirm() const;
- __declspec( dllexport ) virtual Bildschirm *zBildschirm() const;
- __declspec( dllexport ) virtual int getScriptId() const;
- __declspec( dllexport ) virtual bool istBeendet( int scrId ) const;
- __declspec( dllexport ) virtual int getFunktionId( const char *name ) const;
- __declspec( dllexport ) virtual KSGSVariable *getVariable( int id ) const;
- // Reference Counting
- __declspec( dllexport ) virtual KSGScriptObj *getThis();
- __declspec( dllexport ) virtual KSGScriptObj *release();
- };
- }
- #endif
|