Global.cpp 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. #ifdef WIN32
  2. #include <Windows.h>
  3. #include <GdiPlus.h>
  4. #pragma comment( lib, "gdiplus.lib" )
  5. #include "Fenster.h"
  6. #include "Maus.h"
  7. #endif
  8. #define Global
  9. #include "Model3DList.h"
  10. #include "TexturList.h"
  11. #include "Globals.h"
  12. #include "Thread.h"
  13. void Framework::initFramework()
  14. {
  15. if( istInitialisiert )
  16. return;
  17. #ifdef WIN32
  18. Gdiplus::GdiplusStartupInput gdiplusStartupInput;
  19. ULONG_PTR gdiplusToken;
  20. Gdiplus::GdiplusStartup( &gdiplusToken, &gdiplusStartupInput, 0 );
  21. msgExit = 0;
  22. MausTrack = 1;
  23. #endif
  24. for( int i = 0; i < 255; ++i )
  25. TastenStand[ i ] = 0;
  26. for( int i = 0; i < 3; ++i )
  27. MausStand[ i ] = 0;
  28. Model3DList::init();
  29. m3dRegister = new Model3DList();
  30. TexturList::init();
  31. texturRegister = new TexturList();
  32. istInitialisiert = 1;
  33. thRegister = new ThreadRegister();
  34. }
  35. void Framework::releaseFramework()
  36. {
  37. if( !istInitialisiert )
  38. return;
  39. thRegister->cleanUpClosedThreads();
  40. delete thRegister;
  41. m3dRegister->release();
  42. Model3DList::destroy();
  43. texturRegister->release();
  44. TexturList::destroy();
  45. istInitialisiert = 0;
  46. }
  47. bool Framework::istThreadOk( Thread *t )
  48. {
  49. return thRegister->isThread( t );
  50. }
  51. // Gibt das Thread Register des Frameworks zurück
  52. Framework::ThreadRegister *Framework::getThreadRegister()
  53. {
  54. return thRegister;
  55. }
  56. #ifdef WIN32
  57. const Framework::Punkt &Framework::getMausPos()
  58. {
  59. return mausPos;
  60. }
  61. #endif
  62. bool Framework::getMausStand( int taste )
  63. {
  64. return MausStand[ taste ];
  65. }
  66. void Framework::setTastenStand( unsigned char taste, bool st )
  67. {
  68. TastenStand[ taste ] = st;
  69. }
  70. bool Framework::getTastenStand( unsigned char taste )
  71. {
  72. return TastenStand[ taste ];
  73. }
  74. // Gibt das Model3DData Register des Frameworks ohne erhöhten reference Counter zurück
  75. Framework::Model3DList *Framework::zM3DRegister()
  76. {
  77. return m3dRegister;
  78. }
  79. // Gibt das Textur Register des Frameworks ohne erhöhten reference Counter zurück
  80. Framework::TexturList *Framework::zTexturRegister()
  81. {
  82. return texturRegister;
  83. }