BsProjectResourceMeta.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. #pragma once
  2. #include "BsEditorPrerequisites.h"
  3. #include "BsIReflectable.h"
  4. namespace BansheeEngine
  5. {
  6. class ProjectResourceMeta : public IReflectable
  7. {
  8. private:
  9. struct ConstructPrivately {};
  10. public:
  11. explicit ProjectResourceMeta(const ConstructPrivately&);
  12. static ProjectResourceMetaPtr create(const String& uuid, const ResourceMetaDataPtr& resourceMetaData,
  13. const ImportOptionsPtr& importOptions);
  14. const String& getUUID() const { return mUUID; }
  15. ResourceMetaDataPtr getResourceMetaData() const { return mResourceMeta; }
  16. const ImportOptionsPtr& getImportOptions() const { return mImportOptions; }
  17. private:
  18. String mUUID;
  19. ResourceMetaDataPtr mResourceMeta;
  20. ImportOptionsPtr mImportOptions;
  21. /************************************************************************/
  22. /* RTTI */
  23. /************************************************************************/
  24. static ProjectResourceMetaPtr createEmpty();
  25. public:
  26. friend class ResourceMetaRTTI;
  27. static RTTITypeBase* getRTTIStatic();
  28. virtual RTTITypeBase* getRTTI() const;
  29. };
  30. }