#ifndef Globals_H #define Globals_H #include "Critical.h" #include "Punkt.h" #ifdef WIN32 # include "Maus.h" #endif #ifndef Global # define Global extern #endif struct HINSTANCE__; //! windows.h namespace Framework { class ThreadRegister; //! Thread.h class Thread; //! Thread.h class Model3DList; //! Model3DList.h class TexturList; //! TexturList.h class Datei; //! Datei.h class DLLRegister; //! DLLRegister.h namespace Logging { class LoggingHandler; //! LoggingHandler.h } #ifdef WIN32 class Maus; //! Maus.h class WFensterArray; //! Fenster.h Global WFensterArray WFensterA; Global bool MausTrack; Global Maus MausZeiger; Global bool msgExit; #endif Global bool MausStand[3]; Global bool istInitialisiert; Global ThreadRegister* thRegister; Global Critical logC; Global HINSTANCE__* _hinst; Global DLLRegister* dlls; Global bool debugDX; Global bool cursorVisible; Global Logging::LoggingHandler* loggingHandler; #ifdef WIN32 //! Gibt die Koordinaten der Maus auf dem Bildschirm zurück DLLEXPORT Punkt getMausPos(); //! Setzt die Position der Maus auf dem Bildschirm DLLEXPORT void setMausPos(const Punkt& pos); #endif //! Gibt zurück, ob eine Taste der Maus momentan gedrückt wird //! \param taste Die Taste, die geprüft werden soll //! Beispiel: getMausStand( M_Links ); (Benötigt include DLLEXPORT bool getMausStand(int taste); //! Gibt zurück, ob eine Taste auf der tastatur momentan gedrückt wird //! \param taste Die Taste, die überprüft werden soll //! Beispiel: getTastenStand( T_Enter ); (Benötogt include //! DLLEXPORT bool getTastenStand(unsigned char taste); //! Initialisiert das Framework //! Wird in der (WinMain) des Frameworks automatisch aufgerufen DLLEXPORT void initFramework(HINSTANCE__* hInst = 0); //! Gibt den duch (initFramework) benutzten Arbeitsspeicher wieder frei //! Wird in der (WinMain) des Frameworks automatisch aufgerufen DLLEXPORT void releaseFramework(); //! Überprüft, ob ein bestimmter Zeiger auf ein Gültiges Thread Objekt zeigt //! \param t Der zeiger, der überprüft werden soll //! \return 1, falls der Zeiger in Ordnung ist. 0, falls der Zeiger auf kein //! existentes Thread Objekt zeigt DLLEXPORT bool istThreadOk(Thread* t); //! Gibt das Thread Register des Frameworks zurück DLLEXPORT ThreadRegister* getThreadRegister(); //! Gibt das DLL Register zurück, in dem alle zurzeit dynamisch geladenen //! DLL Dateien hinterlegt sind DLLEXPORT DLLRegister* getDLLRegister(); //! Versetzt DirectX in den Debug modus DLLEXPORT void setDebugDX(bool debug); #ifdef WIN32 //! gibt eine Referenz auf die Maus zurück DLLEXPORT Maus& getMaus(); //! setzt den Zustand der Maus auf sichtbar oder unsichtbar DLLEXPORT void setShowCursor(bool visible); #endif } // namespace Framework #endif