1//************************************ bs::framework - Copyright 2018 Marko Pintera **************************************//
2//*********** Licensed under the MIT license. See LICENSE.md for full terms. This notice is not to be removed. ***********//
3#pragma once
4
5#include "BsCorePrerequisites.h"
6#include "Importer/BsSpecificImporter.h"
7
8namespace bs
9{
10 /** @addtogroup Importer
11 * @{
12 */
13
14 /**
15 * Importer using for importing GPU program (shader) include files. Include files are just text files ending with
16 * ".bslinc" extension.
17 */
18 class BS_CORE_EXPORT ShaderIncludeImporter : public SpecificImporter
19 {
20 public:
21 /** @copydoc SpecificImporter::isExtensionSupported */
22 bool isExtensionSupported(const String& ext) const override;
23
24 /** @copydoc SpecificImporter::isMagicNumberSupported */
25 bool isMagicNumberSupported(const UINT8* magicNumPtr, UINT32 numBytes) const override;
26
27 /** @copydoc SpecificImporter::import */
28 SPtr<Resource> import(const Path& filePath, SPtr<const ImportOptions> importOptions) override;
29 };
30
31 /** @} */
32}