BsManagedResourceMetaDataRTTI.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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 "Reflection/BsRTTIType.h"
  6. #include "BsManagedResourceMetaData.h"
  7. namespace bs
  8. {
  9. /** @cond RTTI */
  10. /** @addtogroup RTTI-Impl-SEngine
  11. * @{
  12. */
  13. class BS_SCR_BE_EXPORT ManagedResourceMetaDataRTTI : public RTTIType<ManagedResourceMetaData, ResourceMetaData, ManagedResourceMetaDataRTTI>
  14. {
  15. private:
  16. String& getNamespace(ManagedResourceMetaData* obj)
  17. {
  18. return obj->typeNamespace;
  19. }
  20. void setNamespace(ManagedResourceMetaData* obj, String& val)
  21. {
  22. obj->typeNamespace = val;
  23. }
  24. String& getTypename(ManagedResourceMetaData* obj)
  25. {
  26. return obj->typeName;
  27. }
  28. void setTypename(ManagedResourceMetaData* obj, String& val)
  29. {
  30. obj->typeName = val;
  31. }
  32. public:
  33. ManagedResourceMetaDataRTTI()
  34. {
  35. addPlainField("mTypeNamespace", 0, &ManagedResourceMetaDataRTTI::getNamespace, &ManagedResourceMetaDataRTTI::setNamespace);
  36. addPlainField("mTypeName", 1, &ManagedResourceMetaDataRTTI::getTypename, &ManagedResourceMetaDataRTTI::setTypename);
  37. }
  38. const String& getRTTIName() override
  39. {
  40. static String name = "ManagedResourceMetaData";
  41. return name;
  42. }
  43. UINT32 getRTTIId() override
  44. {
  45. return TID_ManagedResourceMetaData;
  46. }
  47. SPtr<IReflectable> newRTTIObject() override
  48. {
  49. return bs_shared_ptr_new<ManagedResourceMetaData>();
  50. }
  51. };
  52. /** @} */
  53. /** @endcond */
  54. }