BsShaderIncludeImporter.h 847 B

123456789101112131415161718192021222324252627
  1. #pragma once
  2. #include "BsCorePrerequisites.h"
  3. #include "BsSpecificImporter.h"
  4. namespace BansheeEngine
  5. {
  6. /**
  7. * @brief Importer using for importing GPU program (i.e. shader) include files.
  8. * Include files are just text files ending with ".bsi" extension.
  9. */
  10. class BS_CORE_EXPORT ShaderIncludeImporter : public SpecificImporter
  11. {
  12. public:
  13. ShaderIncludeImporter();
  14. virtual ~ShaderIncludeImporter();
  15. /** @copydoc SpecificImporter::isExtensionSupported */
  16. virtual bool isExtensionSupported(const WString& ext) const override;
  17. /** @copydoc SpecificImporter::isMagicNumberSupported */
  18. virtual bool isMagicNumberSupported(const UINT8* magicNumPtr, UINT32 numBytes) const override;
  19. /** @copydoc SpecificImporter::import */
  20. virtual ResourcePtr import(const Path& filePath, ConstImportOptionsPtr importOptions) override;
  21. };
  22. }