BsScriptCurveDrawInfo.generated.cpp 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //************** Copyright (c) 2016-2019 Marko Pintera ([email protected]). All rights reserved. *******************//
  3. #include "BsScriptCurveDrawInfo.generated.h"
  4. #include "BsMonoMethod.h"
  5. #include "BsMonoClass.h"
  6. #include "BsMonoUtil.h"
  7. #include "Image/BsColor.h"
  8. #include "Wrappers/BsScriptColor.h"
  9. #include "../../bsf/Source/Foundation/bsfCore/Animation/BsAnimationCurve.h"
  10. #include "BsScriptTAnimationCurve.generated.h"
  11. namespace bs
  12. {
  13. ScriptCurveDrawInfo::ScriptCurveDrawInfo(MonoObject* managedInstance)
  14. :ScriptObject(managedInstance)
  15. { }
  16. void ScriptCurveDrawInfo::initRuntimeData()
  17. { }
  18. MonoObject*ScriptCurveDrawInfo::box(const __CurveDrawInfoInterop& value)
  19. {
  20. return MonoUtil::box(metaData.scriptClass->_getInternalClass(), (void*)&value);
  21. }
  22. __CurveDrawInfoInterop ScriptCurveDrawInfo::unbox(MonoObject* value)
  23. {
  24. return *(__CurveDrawInfoInterop*)MonoUtil::unbox(value);
  25. }
  26. CurveDrawInfo ScriptCurveDrawInfo::fromInterop(const __CurveDrawInfoInterop& value)
  27. {
  28. CurveDrawInfo output;
  29. SPtr<TAnimationCurve<float>> tmpcurve;
  30. ScriptTAnimationCurvefloat* scriptcurve;
  31. scriptcurve = ScriptTAnimationCurvefloat::toNative(value.curve);
  32. if(scriptcurve != nullptr)
  33. tmpcurve = scriptcurve->getInternal();
  34. if(tmpcurve != nullptr)
  35. output.curve = *tmpcurve;
  36. output.color = value.color;
  37. return output;
  38. }
  39. __CurveDrawInfoInterop ScriptCurveDrawInfo::toInterop(const CurveDrawInfo& value)
  40. {
  41. __CurveDrawInfoInterop output;
  42. MonoObject* tmpcurve;
  43. SPtr<TAnimationCurve<float>> tmpcurvecopy;
  44. tmpcurvecopy = bs_shared_ptr_new<TAnimationCurve<float>>(value.curve);
  45. tmpcurve = ScriptTAnimationCurvefloat::create(tmpcurvecopy);
  46. output.curve = tmpcurve;
  47. output.color = value.color;
  48. return output;
  49. }
  50. }