#ifndef SpielStatistik_H #define SpielStatistik_H #include #include "SpielStatistikDaten.h" #include "Chat/StatistikChat.h" #include "Runde/StatistikRunde.h" #include "Tabelle/StatistikTabelle.h" class SpielStatistik : public SpielStatistikV { private: void( *addNachrichtF )( void *, Text *, Text *, Text *, Text * ); void( *addChatF )( void *, int ); void( *addFreundF )( void *, int ); void( *accountAnsehenF )( void *, int ); bool( *istFreundF )( void *, int ); void *nachrichtParam; BilderV *bilder; Schrift *schrift; Bildschirm *screen; KSGClient::InformationServerClient *infoc; KSGClient::SpielServerClient *spielc; CRITICAL_SECTION cs; Array< SSDGesamtSpieler* > *gss; Array< SSDGesamtTeam* > *gts; Array< SSDRunde* > *rs; StatistikChat *chat; StatistikRunde *runde; StatistikTabelle *tabelle; int accountId; bool rend; int status; int ref; public: // Konstruktor SpielStatistik(); // Destruktor ~SpielStatistik(); // nicht constant void lock(); void unlock(); virtual void bereit(); virtual void setBilder( BilderV *b ); virtual void setAccountId( int id ); virtual void setRückrufFunktionen( void( *addNachrichtF )( void *, Text *, Text *, Text *, Text * ), void( *addChatF )( void *, int ), void( *addFreundF )( void *, int ), void( *accountAnsehenF )( void *, int ), bool( *istFreundF )( void *, int ), void *nachrichtParam ); virtual void setSchrift( Schrift *schrift ); virtual void setBildschirm( Bildschirm *zScreen ); virtual void setKlients( KSGClient::InformationServerClient *infoc, KSGClient::SpielServerClient *spielc ); virtual void nachricht( int län, char *bytes ); virtual void doPublicMausEreignis( MausEreignis &me ); virtual void doTastaturEreignis( TastaturEreignis &te ); virtual bool tick( double zeit ); virtual void render( Bild &zRObj ); virtual void verlassen(); // constant virtual int getStatus() const; // 0 = laden, 1 = läuft, 2 = fortsetzen // Reference Counting virtual SpielStatistikV *getThis(); virtual SpielStatistikV *release(); }; #endif