Renderer.cpp 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. // Copyright (C) 2009-2023, Panagiotis Christopoulos Charitos and contributors.
  2. // All rights reserved.
  3. // Code licensed under the BSD License.
  4. // http://www.anki3d.org/LICENSE
  5. // WARNING: This file is auto generated.
  6. #include <AnKi/Script/LuaBinder.h>
  7. #include <AnKi/Script/ScriptManager.h>
  8. #include <AnKi/Renderer.h>
  9. namespace anki {
  10. static MainRenderer* getMainRenderer(lua_State* l)
  11. {
  12. LuaBinder* binder = nullptr;
  13. lua_getallocf(l, reinterpret_cast<void**>(&binder));
  14. MainRenderer* r = binder->getOtherSystems().m_renderer;
  15. ANKI_ASSERT(r);
  16. return r;
  17. }
  18. LuaUserDataTypeInfo luaUserDataTypeInfoMainRenderer = {-6365712250974230727, "MainRenderer",
  19. LuaUserData::computeSizeForGarbageCollected<MainRenderer>(),
  20. nullptr, nullptr};
  21. template<>
  22. const LuaUserDataTypeInfo& LuaUserData::getDataTypeInfoFor<MainRenderer>()
  23. {
  24. return luaUserDataTypeInfoMainRenderer;
  25. }
  26. /// Pre-wrap method MainRenderer::getAspectRatio.
  27. static inline int pwrapMainRenderergetAspectRatio(lua_State* l)
  28. {
  29. [[maybe_unused]] LuaUserData* ud;
  30. [[maybe_unused]] void* voidp;
  31. [[maybe_unused]] PtrSize size;
  32. if(LuaBinder::checkArgsCount(l, 1)) [[unlikely]]
  33. {
  34. return -1;
  35. }
  36. // Get "this" as "self"
  37. if(LuaBinder::checkUserData(l, 1, luaUserDataTypeInfoMainRenderer, ud))
  38. {
  39. return -1;
  40. }
  41. MainRenderer* self = ud->getData<MainRenderer>();
  42. // Call the method
  43. F32 ret = self->getAspectRatio();
  44. // Push return value
  45. lua_pushnumber(l, lua_Number(ret));
  46. return 1;
  47. }
  48. /// Wrap method MainRenderer::getAspectRatio.
  49. static int wrapMainRenderergetAspectRatio(lua_State* l)
  50. {
  51. int res = pwrapMainRenderergetAspectRatio(l);
  52. if(res >= 0)
  53. {
  54. return res;
  55. }
  56. lua_error(l);
  57. return 0;
  58. }
  59. /// Pre-wrap method MainRenderer::setCurrentDebugRenderTarget.
  60. static inline int pwrapMainRenderersetCurrentDebugRenderTarget(lua_State* l)
  61. {
  62. [[maybe_unused]] LuaUserData* ud;
  63. [[maybe_unused]] void* voidp;
  64. [[maybe_unused]] PtrSize size;
  65. if(LuaBinder::checkArgsCount(l, 2)) [[unlikely]]
  66. {
  67. return -1;
  68. }
  69. // Get "this" as "self"
  70. if(LuaBinder::checkUserData(l, 1, luaUserDataTypeInfoMainRenderer, ud))
  71. {
  72. return -1;
  73. }
  74. MainRenderer* self = ud->getData<MainRenderer>();
  75. // Pop arguments
  76. const char* arg0;
  77. if(LuaBinder::checkString(l, 2, arg0)) [[unlikely]]
  78. {
  79. return -1;
  80. }
  81. // Call the method
  82. self->getOffscreenRenderer().setCurrentDebugRenderTarget(arg0);
  83. return 0;
  84. }
  85. /// Wrap method MainRenderer::setCurrentDebugRenderTarget.
  86. static int wrapMainRenderersetCurrentDebugRenderTarget(lua_State* l)
  87. {
  88. int res = pwrapMainRenderersetCurrentDebugRenderTarget(l);
  89. if(res >= 0)
  90. {
  91. return res;
  92. }
  93. lua_error(l);
  94. return 0;
  95. }
  96. /// Wrap class MainRenderer.
  97. static inline void wrapMainRenderer(lua_State* l)
  98. {
  99. LuaBinder::createClass(l, &luaUserDataTypeInfoMainRenderer);
  100. LuaBinder::pushLuaCFuncMethod(l, "getAspectRatio", wrapMainRenderergetAspectRatio);
  101. LuaBinder::pushLuaCFuncMethod(l, "setCurrentDebugRenderTarget", wrapMainRenderersetCurrentDebugRenderTarget);
  102. lua_settop(l, 0);
  103. }
  104. /// Pre-wrap function getMainRenderer.
  105. static inline int pwrapgetMainRenderer(lua_State* l)
  106. {
  107. [[maybe_unused]] LuaUserData* ud;
  108. [[maybe_unused]] void* voidp;
  109. [[maybe_unused]] PtrSize size;
  110. if(LuaBinder::checkArgsCount(l, 0)) [[unlikely]]
  111. {
  112. return -1;
  113. }
  114. // Call the function
  115. MainRenderer* ret = getMainRenderer(l);
  116. // Push return value
  117. if(ret == nullptr) [[unlikely]]
  118. {
  119. lua_pushstring(l, "Glue code returned nullptr");
  120. return -1;
  121. }
  122. voidp = lua_newuserdata(l, sizeof(LuaUserData));
  123. ud = static_cast<LuaUserData*>(voidp);
  124. luaL_setmetatable(l, "MainRenderer");
  125. extern LuaUserDataTypeInfo luaUserDataTypeInfoMainRenderer;
  126. ud->initPointed(&luaUserDataTypeInfoMainRenderer, ret);
  127. return 1;
  128. }
  129. /// Wrap function getMainRenderer.
  130. static int wrapgetMainRenderer(lua_State* l)
  131. {
  132. int res = pwrapgetMainRenderer(l);
  133. if(res >= 0)
  134. {
  135. return res;
  136. }
  137. lua_error(l);
  138. return 0;
  139. }
  140. /// Wrap the module.
  141. void wrapModuleRenderer(lua_State* l)
  142. {
  143. wrapMainRenderer(l);
  144. LuaBinder::pushLuaCFunc(l, "getMainRenderer", wrapgetMainRenderer);
  145. }
  146. } // end namespace anki