123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #ifndef Bildschirm_H
- #define Bildschirm_H
- #define WIN32_LEAN_AND_MEAN
- #include <Windows.h>
- #include <d3d9.h>
- namespace Framework
- {
- class Bild; // Bild.h
- class Punkt; // Punkt.h
- class WFenster; // Fenster.h
- class Bildschirm; // aus dieser Datei
- class ObjektArray; // Objekt.h
- class Objekt; // Objekt.h
- class Farbe; // Farbe.h
- //Diese Klasse wird das Bild auf dem Bildschirm verwalten
- class Bildschirm
- {
- private:
- IDirect3D9* pDirect3D;
- IDirect3DDevice9* pDevice;
- IDirect3DSurface9* pBackBuffer;
- D3DLOCKED_RECT backRect;
- WFenster *fenster;
- Bild *renderB;
- CRITICAL_SECTION threadSave;
- int ref;
- ObjektArray *members;
- Farbe *füllFarbe;
- bool vollbild;
- Punkt *backBufferGröße;
- public:
- // Konstruktor
- Bildschirm( WFenster *fenster );
- // Destruktor
- ~Bildschirm();
- // nicht constant
- void lock();
- void unlock();
- void update(); // aktualisiert directX
- void addMember( Objekt *obj ); // Fügt ein Objekt hinzu
- void removeMember( Objekt *obj ); // Entfernt ein Objekt
- void render(); // Zeichnet das Bild
- void setFüllFarbeZ( Farbe *f ); // setzt die Fill Farbe
- void setFüllFarbe( Farbe *f );
- void setFüllFarbe( int f );
- void setVollbild( bool fullscreen ); // setzt vollbild
- void tick( double tickval );
- void setBackBufferGröße( int breite, int höhe ); // setzt die Größe des Backbuffers
- void setBackBufferGröße( Punkt *größe );
- void setBackBufferGrößeZ( Punkt *größe );
- // constant
- Bild *getRenderBild() const; // Gibt das RenderObj zurück
- ObjektArray *getMembers() const; // gibt die Objekte zurück
- Farbe *getFüllFarbe() const; // gibt die Füll Farbe zurück
- Farbe *zFüllFarbe() const;
- bool istVolbild() const; // gibt zurück, ob vollbild an ist
- Punkt *getBackBufferGröße() const; // gibt die Größe des Backbuffers zurück
- Punkt *zBackBufferGröße() const;
- // Reference Counting
- Bildschirm *getThis();
- Bildschirm *release();
- };
- }
- #endif
|