BsGpuProgramImporter.h 1.2 KB

123456789101112131415161718192021222324252627282930
  1. //__________________________ Banshee Project - A modern game development toolkit _________________________________//
  2. //_____________________________________ www.banshee-project.com __________________________________________________//
  3. //________________________ Copyright (c) 2014 Marko Pintera. All rights reserved. ________________________________//
  4. #pragma once
  5. #include "BsCorePrerequisites.h"
  6. #include "BsSpecificImporter.h"
  7. namespace BansheeEngine
  8. {
  9. /**
  10. * @brief Importer for GPU programs (i.e. shaders). File must end with ".gpuprog" extension,
  11. * and actual type of the program is determined via import options.
  12. */
  13. class BS_CORE_EXPORT GpuProgramImporter : public SpecificImporter
  14. {
  15. public:
  16. /** @copydoc SpecificImporter::isExtensionSupported */
  17. virtual bool isExtensionSupported(const WString& ext) const;
  18. /** @copydoc SpecificImporter::isMagicNumberSupported */
  19. virtual bool isMagicNumberSupported(const UINT8* magicNumPtr, UINT32 numBytes) const;
  20. /** @copydoc SpecificImporter::import */
  21. virtual ResourcePtr import(const Path& filePath, ConstImportOptionsPtr importOptions);
  22. /** @copydoc SpecificImporter::createImportOptions */
  23. virtual ImportOptionsPtr createImportOptions() const;
  24. };
  25. }