BsPhysicsMeshRTTI.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsCorePrerequisites.h"
  5. #include "BsRTTIType.h"
  6. #include "BsPhysicsMesh.h"
  7. namespace BansheeEngine
  8. {
  9. /** @cond RTTI */
  10. /** @addtogroup RTTI-Impl-Core
  11. * @{
  12. */
  13. class BS_CORE_EXPORT PhysicsMeshRTTI : public RTTIType<PhysicsMesh, Resource, PhysicsMeshRTTI>
  14. {
  15. private:
  16. BS_PLAIN_MEMBER(mType)
  17. public:
  18. PhysicsMeshRTTI()
  19. {
  20. BS_ADD_PLAIN_FIELD(mType, 0)
  21. }
  22. const String& getRTTIName() override
  23. {
  24. static String name = "PhysicsMesh";
  25. return name;
  26. }
  27. UINT32 getRTTIId() override
  28. {
  29. return TID_PhysicsMesh;
  30. }
  31. std::shared_ptr<IReflectable> newRTTIObject() override
  32. {
  33. BS_EXCEPT(InternalErrorException, "Cannot instantiate an abstract class.");
  34. }
  35. };
  36. /** @} */
  37. /** @endcond */
  38. }