Globals.h 3.0 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. namespace Logging
  21. {
  22. class LoggingHandler; //! LoggingHandler.h
  23. }
  24. #ifdef WIN32
  25. class Maus; //! Maus.h
  26. class WFensterArray; //! Fenster.h
  27. Global WFensterArray WFensterA;
  28. Global bool MausTrack;
  29. Global Maus MausZeiger;
  30. Global bool msgExit;
  31. #endif
  32. Global bool MausStand[3];
  33. Global bool istInitialisiert;
  34. Global ThreadRegister* thRegister;
  35. Global Critical logC;
  36. Global HINSTANCE__* _hinst;
  37. Global DLLRegister* dlls;
  38. Global bool debugDX;
  39. Global bool cursorVisible;
  40. Global Logging::LoggingHandler* loggingHandler;
  41. #ifdef WIN32
  42. //! Gibt die Koordinaten der Maus auf dem Bildschirm zurück
  43. DLLEXPORT Punkt getMausPos();
  44. //! Setzt die Position der Maus auf dem Bildschirm
  45. DLLEXPORT void setMausPos(const Punkt& pos);
  46. #endif
  47. //! Gibt zurück, ob eine Taste der Maus momentan gedrückt wird
  48. //! \param taste Die Taste, die geprüft werden soll
  49. //! Beispiel: getMausStand( M_Links ); (Benötigt include <MausEreignis.h>
  50. DLLEXPORT bool getMausStand(int taste);
  51. //! Gibt zurück, ob eine Taste auf der tastatur momentan gedrückt wird
  52. //! \param taste Die Taste, die überprüft werden soll
  53. //! Beispiel: getTastenStand( T_Enter ); (Benötogt include
  54. //! <TastaturEreignis.h>
  55. DLLEXPORT bool getTastenStand(unsigned char taste);
  56. //! Initialisiert das Framework
  57. //! Wird in der (WinMain) des Frameworks automatisch aufgerufen
  58. DLLEXPORT void initFramework(HINSTANCE__* hInst = 0);
  59. //! Gibt den duch (initFramework) benutzten Arbeitsspeicher wieder frei
  60. //! Wird in der (WinMain) des Frameworks automatisch aufgerufen
  61. DLLEXPORT void releaseFramework();
  62. //! Überprüft, ob ein bestimmter Zeiger auf ein Gültiges Thread Objekt zeigt
  63. //! \param t Der zeiger, der überprüft werden soll
  64. //! \return 1, falls der Zeiger in Ordnung ist. 0, falls der Zeiger auf kein
  65. //! existentes Thread Objekt zeigt
  66. DLLEXPORT bool istThreadOk(Thread* t);
  67. //! Gibt das Thread Register des Frameworks zurück
  68. DLLEXPORT ThreadRegister* getThreadRegister();
  69. //! Gibt das DLL Register zurück, in dem alle zurzeit dynamisch geladenen
  70. //! DLL Dateien hinterlegt sind
  71. DLLEXPORT DLLRegister* getDLLRegister();
  72. //! Versetzt DirectX in den Debug modus
  73. DLLEXPORT void setDebugDX(bool debug);
  74. #ifdef WIN32
  75. //! gibt eine Referenz auf die Maus zurück
  76. DLLEXPORT Maus& getMaus();
  77. //! setzt den Zustand der Maus auf sichtbar oder unsichtbar
  78. DLLEXPORT void setShowCursor(bool visible);
  79. #endif
  80. } // namespace Framework
  81. #endif