Globals.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. #ifndef Globals_H
  2. #define Globals_H
  3. #include "Punkt.h"
  4. #include "Critical.h"
  5. #ifndef Global
  6. #define Global extern
  7. #endif
  8. struct HINSTANCE__; //! windows.h
  9. namespace Framework
  10. {
  11. class ThreadRegister; //! Thread.h
  12. class Thread; //! Thread.h
  13. class Model3DList; //! Model3DList.h
  14. class TexturList; //! TexturList.h
  15. class Datei; //! Datei.h
  16. class DLLRegister; //! DLLRegister.h
  17. #ifdef WIN32
  18. class Maus; //! Maus.h
  19. class WFensterArray; //! Fenster.h
  20. Global WFensterArray WFensterA;
  21. Global bool MausTrack;
  22. Global Maus MausZeiger;
  23. Global bool msgExit;
  24. #endif
  25. Global bool TastenStand[255];
  26. Global bool MausStand[3];
  27. Global bool istInitialisiert;
  28. Global ThreadRegister* thRegister;
  29. Global bool logEnabled;
  30. Global Datei* logFile;
  31. Global Critical logC;
  32. Global HINSTANCE__* _hinst;
  33. Global DLLRegister* dlls;
  34. Global bool debugDX;
  35. #ifdef WIN32
  36. //! Gibt die Koordinaten der Maus auf dem Bildschirm zurück
  37. DLLEXPORT Punkt getMausPos();
  38. //! Setzt die Position der Maus auf dem Bildschirm
  39. DLLEXPORT void setMausPos(const Punkt& pos);
  40. #endif
  41. //! Gibt zurück, ob eine Taste der Maus momentan gedrückt wird
  42. //! \param taste Die Taste, die geprüft werden soll
  43. //! Beispiel: getMausStand( M_Links ); (Benötigt include <MausEreignis.h>
  44. DLLEXPORT bool getMausStand(int taste);
  45. //! Gibt zurück, ob eine Taste auf der tastatur momentan gedrückt wird
  46. //! \param taste Die Taste, die überprüft werden soll
  47. //! Beispiel: getTastenStand( T_Enter ); (Benötogt include <TastaturEreignis.h>
  48. DLLEXPORT bool getTastenStand(unsigned char taste);
  49. //! Legt fest, ob eine Taste auf der tastatur momentan gedrückt wird
  50. //! Der Tastenstand wird vom Framework selbst verwaltet und muss nicht mit dieser Funktion gesetzt werden
  51. //! \param taste Die Taste, deren Status gesetzt werden soll
  52. //! \param st Ob die Taste momentan gedrückt wird. (true), wenn ja. (false) sonnst.
  53. DLLEXPORT void setTastenStand(unsigned char taste, bool st);
  54. //! Initialisiert das Framework
  55. //! Wird in der (WinMain) des Frameworks automatisch aufgerufen
  56. DLLEXPORT void initFramework(HINSTANCE__* hInst = 0);
  57. //! Gibt den duch (initFramework) benutzten Arbeitsspeicher wieder frei
  58. //! Wird in der (WinMain) des Frameworks automatisch aufgerufen
  59. DLLEXPORT void releaseFramework();
  60. //! Überprüft, ob ein bestimmter Zeiger auf ein Gültiges Thread Objekt zeigt
  61. //! \param t Der zeiger, der überprüft werden soll
  62. //! \return 1, falls der Zeiger in Ordnung ist. 0, falls der Zeiger auf kein existentes Thread Objekt zeigt
  63. DLLEXPORT bool istThreadOk(Thread* t);
  64. //! Gibt das Thread Register des Frameworks zurück
  65. DLLEXPORT ThreadRegister* getThreadRegister();
  66. //! Legt fest ob Log Nachrichten gespeichert werden sollen
  67. DLLEXPORT void setLogEnabled(bool le);
  68. //! Speichert eine Zeile in die Logdatei
  69. //! \param txt die zu Speichernde Nachricht
  70. DLLEXPORT void logLine(char* txt);
  71. //! Gibt das DLL Register zurück, in dem alle zurzeit dynamisch geladenen DLL Dateien hinterlegt sind
  72. DLLEXPORT DLLRegister* getDLLRegister();
  73. //! Versetzt DirectX in den Debug modus
  74. DLLEXPORT void setDebugDX(bool debug);
  75. #ifdef WIN32
  76. //! gibt eine Referenz auf die Maus zurück
  77. DLLEXPORT Maus& getMaus();
  78. //! setzt den Zustand der Maus auf sichtbar oder unsichtbar
  79. DLLEXPORT void setShowCursor(bool visible);
  80. #endif
  81. }
  82. #endif