Manual.cpp 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. // Copyright (c) 2008-2022 the Urho3D project
  2. // License: MIT
  3. #include "../Precompiled.h"
  4. #include "../AngelScript/APITemplates.h"
  5. namespace Urho3D
  6. {
  7. void ASRegisterManualFirst_Addons(asIScriptEngine* engine);
  8. void ASRegisterManualLast_Addons(asIScriptEngine* engine);
  9. void ASRegisterManualFirst_Graphics(asIScriptEngine* engine);
  10. void ASRegisterManualLast_Graphics(asIScriptEngine* engine);
  11. void ASRegisterManualFirst_Core(asIScriptEngine* engine);
  12. void ASRegisterManualLast_Core(asIScriptEngine* engine);
  13. void ASRegisterManualFirst_Math(asIScriptEngine* engine);
  14. void ASRegisterManualLast_Math(asIScriptEngine* engine);
  15. void ASRegisterManualFirst_IO(asIScriptEngine* engine);
  16. void ASRegisterManualLast_IO(asIScriptEngine* engine);
  17. void ASRegisterManualFirst_Scene(asIScriptEngine* engine);
  18. void ASRegisterManualLast_Scene(asIScriptEngine* engine);
  19. void ASRegisterManualFirst_UI(asIScriptEngine* engine);
  20. void ASRegisterManualLast_UI(asIScriptEngine* engine);
  21. void ASRegisterManualFirst_Input(asIScriptEngine* engine);
  22. void ASRegisterManualLast_Input(asIScriptEngine* engine);
  23. void ASRegisterManualFirst_Engine(asIScriptEngine* engine);
  24. void ASRegisterManualLast_Engine(asIScriptEngine* engine);
  25. void ASRegisterManualFirst_Audio(asIScriptEngine* engine);
  26. void ASRegisterManualLast_Audio(asIScriptEngine* engine);
  27. void ASRegisterManualFirst_Container(asIScriptEngine* engine);
  28. void ASRegisterManualLast_Container(asIScriptEngine* engine);
  29. void ASRegisterManualFirst_Resource(asIScriptEngine* engine);
  30. void ASRegisterManualLast_Resource(asIScriptEngine* engine);
  31. #ifdef URHO3D_PHYSICS
  32. void ASRegisterManualFirst_Physics(asIScriptEngine* engine);
  33. void ASRegisterManualLast_Physics(asIScriptEngine* engine);
  34. #endif
  35. #ifdef URHO3D_PHYSICS2D
  36. void ASRegisterManualFirst_Physics2D(asIScriptEngine* engine);
  37. void ASRegisterManualLast_Physics2D(asIScriptEngine* engine);
  38. #endif
  39. #ifdef URHO3D_NETWORK
  40. void ASRegisterManualFirst_Network(asIScriptEngine* engine);
  41. void ASRegisterManualLast_Network(asIScriptEngine* engine);
  42. #endif
  43. #ifdef URHO3D_IK
  44. void ASRegisterManualFirst_IK(asIScriptEngine* engine);
  45. void ASRegisterManualLast_IK(asIScriptEngine* engine);
  46. #endif
  47. #ifdef URHO3D_DATABASE
  48. void ASRegisterManualFirst_Database(asIScriptEngine* engine);
  49. void ASRegisterManualLast_Database(asIScriptEngine* engine);
  50. #endif
  51. // This function is called before ASRegisterGenerated()
  52. void ASRegisterManualFirst(asIScriptEngine* engine)
  53. {
  54. if (sizeof(long) == 4)
  55. {
  56. engine->RegisterTypedef("long", "int");
  57. engine->RegisterTypedef("ulong", "uint");
  58. }
  59. else
  60. {
  61. engine->RegisterTypedef("long", "int64");
  62. engine->RegisterTypedef("ulong", "uint64");
  63. }
  64. if (sizeof(size_t) == 4)
  65. engine->RegisterTypedef("size_t", "uint");
  66. else
  67. engine->RegisterTypedef("size_t", "uint64");
  68. engine->RegisterTypedef("SDL_JoystickID", "int");
  69. engine->RegisterTypedef("c32", "uint");
  70. engine->RegisterTypedef("byte", "uint8");
  71. engine->RegisterTypedef("hash16", "uint16");
  72. engine->RegisterTypedef("hash32", "uint");
  73. engine->RegisterTypedef("hash64", "uint64");
  74. ASRegisterManualFirst_Addons(engine);
  75. ASRegisterManualFirst_Graphics(engine);
  76. ASRegisterManualFirst_Core(engine);
  77. ASRegisterManualFirst_Math(engine);
  78. ASRegisterManualFirst_IO(engine);
  79. ASRegisterManualFirst_Scene(engine);
  80. ASRegisterManualFirst_UI(engine);
  81. ASRegisterManualFirst_Input(engine);
  82. ASRegisterManualFirst_Engine(engine);
  83. ASRegisterManualFirst_Audio(engine);
  84. ASRegisterManualFirst_Container(engine);
  85. ASRegisterManualFirst_Resource(engine);
  86. #ifdef URHO3D_PHYSICS
  87. ASRegisterManualFirst_Physics(engine);
  88. #endif
  89. #ifdef URHO3D_PHYSICS2D
  90. ASRegisterManualFirst_Physics2D(engine);
  91. #endif
  92. #ifdef URHO3D_NETWORK
  93. ASRegisterManualFirst_Network(engine);
  94. #endif
  95. #ifdef URHO3D_IK
  96. ASRegisterManualFirst_IK(engine);
  97. #endif
  98. #ifdef URHO3D_DATABASE
  99. ASRegisterManualFirst_Database(engine);
  100. #endif
  101. }
  102. // This function is called after ASRegisterGenerated()
  103. void ASRegisterManualLast(asIScriptEngine* engine)
  104. {
  105. ASRegisterManualLast_Addons(engine);
  106. ASRegisterManualLast_Graphics(engine);
  107. ASRegisterManualLast_Core(engine);
  108. ASRegisterManualLast_Math(engine);
  109. ASRegisterManualLast_IO(engine);
  110. ASRegisterManualLast_Scene(engine);
  111. ASRegisterManualLast_UI(engine);
  112. ASRegisterManualLast_Input(engine);
  113. ASRegisterManualLast_Engine(engine);
  114. ASRegisterManualLast_Audio(engine);
  115. ASRegisterManualLast_Container(engine);
  116. ASRegisterManualLast_Resource(engine);
  117. #ifdef URHO3D_PHYSICS
  118. ASRegisterManualLast_Physics(engine);
  119. #endif
  120. #ifdef URHO3D_PHYSICS2D
  121. ASRegisterManualLast_Physics2D(engine);
  122. #endif
  123. #ifdef URHO3D_NETWORK
  124. ASRegisterManualLast_Network(engine);
  125. #endif
  126. #ifdef URHO3D_IK
  127. ASRegisterManualLast_IK(engine);
  128. #endif
  129. #ifdef URHO3D_DATABASE
  130. ASRegisterManualLast_Database(engine);
  131. #endif
  132. }
  133. } // namespace Urho3D