BsScriptPlayInEditor.generated.cpp 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //************** Copyright (c) 2016-2019 Marko Pintera ([email protected]). All rights reserved. *******************//
  3. #include "BsScriptPlayInEditor.generated.h"
  4. #include "BsMonoMethod.h"
  5. #include "BsMonoClass.h"
  6. #include "BsMonoUtil.h"
  7. #include "../../bsf/Source/Scripting/bsfScript/BsPlayInEditor.h"
  8. namespace bs
  9. {
  10. ScriptPlayInEditor::onPlayThunkDef ScriptPlayInEditor::onPlayThunk;
  11. ScriptPlayInEditor::onStoppedThunkDef ScriptPlayInEditor::onStoppedThunk;
  12. ScriptPlayInEditor::onPausedThunkDef ScriptPlayInEditor::onPausedThunk;
  13. ScriptPlayInEditor::onUnpausedThunkDef ScriptPlayInEditor::onUnpausedThunk;
  14. HEvent ScriptPlayInEditor::onPlayConn;
  15. HEvent ScriptPlayInEditor::onStoppedConn;
  16. HEvent ScriptPlayInEditor::onPausedConn;
  17. HEvent ScriptPlayInEditor::onUnpausedConn;
  18. ScriptPlayInEditor::ScriptPlayInEditor(MonoObject* managedInstance)
  19. :ScriptObject(managedInstance)
  20. {
  21. mGCHandle = MonoUtil::newWeakGCHandle(managedInstance);
  22. }
  23. void ScriptPlayInEditor::initRuntimeData()
  24. {
  25. metaData.scriptClass->addInternalCall("Internal_getState", (void*)&ScriptPlayInEditor::Internal_getState);
  26. metaData.scriptClass->addInternalCall("Internal_setState", (void*)&ScriptPlayInEditor::Internal_setState);
  27. metaData.scriptClass->addInternalCall("Internal_frameStep", (void*)&ScriptPlayInEditor::Internal_frameStep);
  28. onPlayThunk = (onPlayThunkDef)metaData.scriptClass->getMethodExact("Internal_onPlay", "")->getThunk();
  29. onStoppedThunk = (onStoppedThunkDef)metaData.scriptClass->getMethodExact("Internal_onStopped", "")->getThunk();
  30. onPausedThunk = (onPausedThunkDef)metaData.scriptClass->getMethodExact("Internal_onPaused", "")->getThunk();
  31. onUnpausedThunk = (onUnpausedThunkDef)metaData.scriptClass->getMethodExact("Internal_onUnpaused", "")->getThunk();
  32. }
  33. void ScriptPlayInEditor::startUp()
  34. {
  35. onPlayConn = PlayInEditor::instance().onPlay.connect(&ScriptPlayInEditor::onPlay);
  36. onStoppedConn = PlayInEditor::instance().onStopped.connect(&ScriptPlayInEditor::onStopped);
  37. onPausedConn = PlayInEditor::instance().onPaused.connect(&ScriptPlayInEditor::onPaused);
  38. onUnpausedConn = PlayInEditor::instance().onUnpaused.connect(&ScriptPlayInEditor::onUnpaused);
  39. }
  40. void ScriptPlayInEditor::shutDown()
  41. {
  42. onPlayConn.disconnect();
  43. onStoppedConn.disconnect();
  44. onPausedConn.disconnect();
  45. onUnpausedConn.disconnect();
  46. }
  47. void ScriptPlayInEditor::onPlay()
  48. {
  49. MonoUtil::invokeThunk(onPlayThunk);
  50. }
  51. void ScriptPlayInEditor::onStopped()
  52. {
  53. MonoUtil::invokeThunk(onStoppedThunk);
  54. }
  55. void ScriptPlayInEditor::onPaused()
  56. {
  57. MonoUtil::invokeThunk(onPausedThunk);
  58. }
  59. void ScriptPlayInEditor::onUnpaused()
  60. {
  61. MonoUtil::invokeThunk(onUnpausedThunk);
  62. }
  63. PlayInEditorState ScriptPlayInEditor::Internal_getState()
  64. {
  65. PlayInEditorState tmp__output;
  66. tmp__output = PlayInEditor::instance().getState();
  67. PlayInEditorState __output;
  68. __output = tmp__output;
  69. return __output;
  70. }
  71. void ScriptPlayInEditor::Internal_setState(PlayInEditorState state)
  72. {
  73. PlayInEditor::instance().setState(state);
  74. }
  75. void ScriptPlayInEditor::Internal_frameStep()
  76. {
  77. PlayInEditor::instance().frameStep();
  78. }
  79. }