BsCSkyboxRTTI.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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 "BsCSkybox.h"
  7. #include "BsGameObjectRTTI.h"
  8. namespace bs
  9. {
  10. /** @cond RTTI */
  11. /** @addtogroup RTTI-Impl-Engine
  12. * @{
  13. */
  14. class BS_CORE_EXPORT CSkyboxRTTI : public RTTIType <CSkybox, Component, CSkyboxRTTI>
  15. {
  16. private:
  17. SPtr<Skybox> getInternal(CSkybox* obj) { return obj->mInternal; }
  18. void setInternal(CSkybox* obj, SPtr<Skybox> val) { obj->mInternal = val; }
  19. public:
  20. CSkyboxRTTI()
  21. {
  22. addReflectablePtrField("mInternal", 0, &CSkyboxRTTI::getInternal, &CSkyboxRTTI::setInternal);
  23. }
  24. const String& getRTTIName() override
  25. {
  26. static String name = "CSkybox";
  27. return name;
  28. }
  29. UINT32 getRTTIId() override
  30. {
  31. return TID_CSkybox;
  32. }
  33. SPtr<IReflectable> newRTTIObject() override
  34. {
  35. return GameObjectRTTI::createGameObject<CSkybox>();
  36. }
  37. };
  38. /** @} */
  39. /** @endcond */
  40. }