Globals.h 3.1 KB

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