BsResourceMetaDataRTTI.h 874 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #pragma once
  2. #include "BsCorePrerequisites.h"
  3. #include "BsRTTIType.h"
  4. #include "BsResourceMetaData.h"
  5. namespace BansheeEngine
  6. {
  7. class BS_CORE_EXPORT ResourceMetaDataRTTI : public RTTIType<ResourceMetaData, IReflectable, ResourceMetaDataRTTI>
  8. {
  9. private:
  10. WString& getDisplayName(ResourceMetaData* obj) { return obj->displayName; }
  11. void setDisplayName(ResourceMetaData* obj, WString& name) { obj->displayName = name; }
  12. public:
  13. ResourceMetaDataRTTI()
  14. {
  15. addPlainField("displayName", 0, &ResourceMetaDataRTTI::getDisplayName, &ResourceMetaDataRTTI::setDisplayName);
  16. }
  17. virtual const String& getRTTIName()
  18. {
  19. static String name = "ResourceMetaData";
  20. return name;
  21. }
  22. virtual UINT32 getRTTIId()
  23. {
  24. return TID_ResourceMetaData;
  25. }
  26. virtual std::shared_ptr<IReflectable> newRTTIObject()
  27. {
  28. return bs_shared_ptr<ResourceMetaData>();
  29. }
  30. };
  31. }