#include "RundenRundenStatistik.h" #include // Inhalt der RundenRundenStatistik Klasse aus RundenRundenStatistik.h // Konstruktor RundenRundenStatistik::RundenRundenStatistik() { rundenNummer = 0; rundenDauer = 0; siegerTeam = 0; spielFeldNutzung = 0; rundenBild = 0; rss = new RCArray< RundenSpielerStatistik >(); rts = new RCArray< RundenTeamStatistik >(); ref = 1; } // Destruktor RundenRundenStatistik::~RundenRundenStatistik() { if( rundenBild ) rundenBild->release(); rss->release(); rts->release(); } // nciht constant void RundenRundenStatistik::addSpielerStatistik( RundenSpielerStatistik *rss ) { this->rss->add( rss ); } void RundenRundenStatistik::addTeamStatistik( RundenTeamStatistik *rts ) { this->rts->add( rts ); } void RundenRundenStatistik::setBild( Bild *b ) { if( rundenBild ) rundenBild->release(); rundenBild = b; } void RundenRundenStatistik::initValues( InitDatei *dat ) { if( dat->wertExistiert( "RundenNummer" ) ) rundenNummer = *dat->zWert( "RundenNummer" ); if( dat->wertExistiert( "RundenDauer" ) ) rundenDauer = *dat->zWert( "RundenDauer" ); if( dat->wertExistiert( "SiegerTeam" ) ) siegerTeam = *dat->zWert( "SiegerTeam" ); if( dat->wertExistiert( "SpielFeldNutzung" ) ) spielFeldNutzung = *dat->zWert( "SpielFeldNutzung" ); dat->release(); } // constant InitDatei *RundenRundenStatistik::getValues() const { InitDatei *ret = new InitDatei(); Text w; w = rundenNummer; if( w.getLength() ) ret->addWert( "RundenNummer", w.getText() ); w = rundenDauer; if( w.getLength() ) ret->addWert( "RundenDauer", w.getText() ); w = siegerTeam; if( w.getLength() ) ret->addWert( "SiegerTeam", w.getText() ); w = spielFeldNutzung; if( w.getLength() ) ret->addWert( "SpielFeldNutzung", w.getText() ); return ret; } int RundenRundenStatistik::getRundenNummer() const { return rundenNummer; } Bild *RundenRundenStatistik::getRundenBild() const { return rundenBild ? rundenBild->getThis() : 0; } Bild *RundenRundenStatistik::zRundenBild() const { return rundenBild; } int RundenRundenStatistik::getRundenDauer() const { return rundenDauer; } int RundenRundenStatistik::getSiegerTeam() const { return siegerTeam; } int RundenRundenStatistik::getSpielFeldNutzung() const { return spielFeldNutzung; } RundenSpielerStatistik *RundenRundenStatistik::getSpielerStatistik( int index ) const { return rss->get( index ); } RundenSpielerStatistik *RundenRundenStatistik::zSpielerStatistik( int index ) const { return rss->z( index ); } RundenTeamStatistik *RundenRundenStatistik::getTeamStatistik( int index ) const { return rts->get( index ); } RundenTeamStatistik *RundenRundenStatistik::zTeamStatistik( int index ) const { return rts->z( index ); } int RundenRundenStatistik::getSpielerAnzahl() const { return rss->getEintragAnzahl(); } int RundenRundenStatistik::getTeamAnzahl() const { return rts->getEintragAnzahl(); } // Reference Counting RundenRundenStatistik *RundenRundenStatistik::getThis() { ref++; return this; } RundenRundenStatistik *RundenRundenStatistik::release() { ref--; if( !ref ) delete this; return 0; }