#ifndef Fps_H
#define Fps_H

#include <Zeichnung.h>

namespace Framework
{
	class Prozess; // Prozess.h
	class Bild; // Bild.h
	class Schrift; // Schrift.h
	class Fps; // aus dieser Datei

	class Fps : public Zeichnung
	{
	private:
		Prozess *pr;
		double i;
		int fpsCount;
		int nowFps;
		int nowCpu;
		int nowMem;
		Schrift *schrift;
		int sFarbe;
		int ref;

	public:
		// Konstruktor 
		Fps();
		// Destruktor 
		~Fps();
		// nicht constant
		void setSchriftZ( Schrift *schrift ); // setzt die Schrift
		void setSFarbe( int f ); // setzt die Schrift Farbe
		bool tick( double tickval ) override; // tick
		void render( Bild &zRObj ) override; // zeichnet nach zrObj
		// constant
		Schrift *getSchrift() const; // gibt die Schrift zurück
		Schrift *zSchrift() const;
		int getFarbe() const; // gibt die Farbe zurück
		int getFps() const; // gibt fps zurück
		int getCpu() const; // gibt die Cpu zurück
		int getMem() const; // gibt den Arbeitsspeicher zurück
		// Reference Counting
		Fps *getThis();
		Fps *release();
	};
}

#endif