Globals.h 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #ifndef Globals_H
  2. #define Globals_H
  3. #include "Critical.h"
  4. #include "Punkt.h"
  5. #include "Maus.h"
  6. #ifndef Global
  7. # define Global extern
  8. #endif
  9. struct HINSTANCE__; //! windows.h
  10. namespace Framework
  11. {
  12. class ThreadRegister; //! Thread.h
  13. class Thread; //! Thread.h
  14. class Model3DList; //! Model3DList.h
  15. class TexturList; //! TexturList.h
  16. class Datei; //! Datei.h
  17. class DLLRegister; //! DLLRegister.h
  18. #ifdef WIN32
  19. class Maus; //! Maus.h
  20. class WFensterArray; //! Fenster.h
  21. Global WFensterArray WFensterA;
  22. Global bool MausTrack;
  23. Global Maus MausZeiger;
  24. Global bool msgExit;
  25. #endif
  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
  48. //! <TastaturEreignis.h>
  49. DLLEXPORT bool getTastenStand(unsigned char taste);
  50. //! Initialisiert das Framework
  51. //! Wird in der (WinMain) des Frameworks automatisch aufgerufen
  52. DLLEXPORT void initFramework(HINSTANCE__* hInst = 0);
  53. //! Gibt den duch (initFramework) benutzten Arbeitsspeicher wieder frei
  54. //! Wird in der (WinMain) des Frameworks automatisch aufgerufen
  55. DLLEXPORT void releaseFramework();
  56. //! Überprüft, ob ein bestimmter Zeiger auf ein Gültiges Thread Objekt zeigt
  57. //! \param t Der zeiger, der überprüft werden soll
  58. //! \return 1, falls der Zeiger in Ordnung ist. 0, falls der Zeiger auf kein
  59. //! existentes Thread Objekt zeigt
  60. DLLEXPORT bool istThreadOk(Thread* t);
  61. //! Gibt das Thread Register des Frameworks zurück
  62. DLLEXPORT ThreadRegister* getThreadRegister();
  63. //! Legt fest ob Log Nachrichten gespeichert werden sollen
  64. DLLEXPORT void setLogEnabled(bool le);
  65. //! Speichert eine Zeile in die Logdatei
  66. //! \param txt die zu Speichernde Nachricht
  67. DLLEXPORT void logLine(char* txt);
  68. //! Gibt das DLL Register zurück, in dem alle zurzeit dynamisch geladenen
  69. //! DLL Dateien hinterlegt sind
  70. DLLEXPORT DLLRegister* getDLLRegister();
  71. //! Versetzt DirectX in den Debug modus
  72. DLLEXPORT void setDebugDX(bool debug);
  73. #ifdef WIN32
  74. //! gibt eine Referenz auf die Maus zurück
  75. DLLEXPORT Maus& getMaus();
  76. //! setzt den Zustand der Maus auf sichtbar oder unsichtbar
  77. DLLEXPORT void setShowCursor(bool visible);
  78. #endif
  79. } // namespace Framework
  80. #endif