Globals.h 3.4 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. Global Punkt mausPos;
  25. #endif
  26. Global bool TastenStand[ 255 ];
  27. Global bool MausStand[ 3 ];
  28. Global Model3DList *m3dRegister;
  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 const Punkt &getMausPos();
  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. //! Gibt das Model3DData Register des Frameworks ohne erhöhten reference Counter zurück
  55. DLLEXPORT Model3DList *zM3DRegister();
  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 existentes Thread Objekt zeigt
  65. DLLEXPORT bool istThreadOk( Thread *t );
  66. //! Gibt das Thread Register des Frameworks zurück
  67. DLLEXPORT ThreadRegister *getThreadRegister();
  68. //! Legt fest ob Log Nachrichten gespeichert werden sollen
  69. DLLEXPORT void setLogEnabled( bool le );
  70. //! Speichert eine Zeile in die Logdatei
  71. //! \param txt die zu Speichernde Nachricht
  72. DLLEXPORT void logLine( char *txt );
  73. //! Gibt das DLL Register zurück, in dem alle zurzeit dynamisch geladenen DLL Dateien hinterlegt sind
  74. DLLEXPORT DLLRegister *getDLLRegister();
  75. //! Versetzt DirectX in den Debug modus
  76. DLLEXPORT void setDebugDX(bool debug);
  77. #ifdef WIN32
  78. //! gibt eine Referenz auf die Maus zurück
  79. DLLEXPORT Maus &getMaus();
  80. #endif
  81. }
  82. #endif