BsScriptCapsuleCollider.h 1.3 KB

123456789101112131415161718192021222324252627282930
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsScriptEnginePrerequisites.h"
  5. #include "BsScriptCollider.h"
  6. namespace BansheeEngine
  7. {
  8. /** Interop class between C++ & CLR for CapsuleCollider. */
  9. class BS_SCR_BE_EXPORT ScriptCapsuleCollider : public TScriptCollider<ScriptCapsuleCollider>
  10. {
  11. public:
  12. SCRIPT_OBJ(ENGINE_ASSEMBLY, "BansheeEngine", "NativeCapsuleCollider")
  13. private:
  14. ScriptCapsuleCollider(MonoObject* instance, const SPtr<Collider>& collider);
  15. /** Returns the native capsule collider wrapped by this object. */
  16. CapsuleCollider* getCapsuleCollider() const;
  17. /************************************************************************/
  18. /* CLR HOOKS */
  19. /************************************************************************/
  20. static void internal_CreateInstance(MonoObject* instance);
  21. static void internal_SetHalfHeight(ScriptCapsuleCollider* thisPtr, float halfHeight);
  22. static float internal_GetHalfHeight(ScriptCapsuleCollider* thisPtr);
  23. static void internal_SetRadius(ScriptCapsuleCollider* thisPtr, float radius);
  24. static float internal_GetRadius(ScriptCapsuleCollider* thisPtr);
  25. };
  26. }