CmGpuProgramImportOptionsRTTI.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #pragma once
  2. #include "CmPrerequisites.h"
  3. #include "CmRTTIType.h"
  4. #include "CmGpuProgramImportOptions.h"
  5. namespace CamelotEngine
  6. {
  7. class CM_EXPORT GpuProgramImportOptionsRTTI : public RTTIType<GpuProgramImportOptions, IReflectable, GpuProgramImportOptionsRTTI>
  8. {
  9. private:
  10. String& getEntryPoint(GpuProgramImportOptions* obj) { return obj->mEntryPoint; }
  11. void setEntryPoint(GpuProgramImportOptions* obj, String& value) { obj->mEntryPoint = value; }
  12. String& getLanguage(GpuProgramImportOptions* obj) { return obj->mLanguage; }
  13. void setLanguage(GpuProgramImportOptions* obj, String& value) { obj->mLanguage = value; }
  14. GpuProgramProfile& getProfile(GpuProgramImportOptions* obj) { return obj->mProfile; }
  15. void setProfile(GpuProgramImportOptions* obj, GpuProgramProfile& value) { obj->mProfile = value; }
  16. GpuProgramType& getType(GpuProgramImportOptions* obj) { return obj->mType; }
  17. void setType(GpuProgramImportOptions* obj, GpuProgramType& value) { obj->mType = value; }
  18. public:
  19. GpuProgramImportOptionsRTTI()
  20. {
  21. addPlainField("mEntryPoint", 0, &GpuProgramImportOptionsRTTI::getEntryPoint, &GpuProgramImportOptionsRTTI::setEntryPoint);
  22. addPlainField("mLanguage", 1, &GpuProgramImportOptionsRTTI::getLanguage, &GpuProgramImportOptionsRTTI::setLanguage);
  23. addPlainField("mProfile", 2, &GpuProgramImportOptionsRTTI::getProfile, &GpuProgramImportOptionsRTTI::setProfile);
  24. addPlainField("mType", 3, &GpuProgramImportOptionsRTTI::getType, &GpuProgramImportOptionsRTTI::setType);
  25. }
  26. virtual const String& getRTTIName()
  27. {
  28. static String name = "GpuProgramImportOptions";
  29. return name;
  30. }
  31. virtual UINT32 getRTTIId()
  32. {
  33. return TID_GpuProgramImportOptions;
  34. }
  35. virtual std::shared_ptr<IReflectable> newRTTIObject()
  36. {
  37. return ImportOptionsPtr(new GpuProgramImportOptions());
  38. }
  39. };
  40. }