Files
XCEngine/engine/src/Resources/Shader/Detail/ShaderAuthoringLoader.h

34 lines
951 B
C++

#pragma once
#include <XCEngine/Core/Containers/Array.h>
#include <XCEngine/Core/Containers/String.h>
#include <XCEngine/Core/IO/IResourceLoader.h>
#include <string>
namespace XCEngine {
namespace Resources {
bool LooksLikeShaderAuthoring(const std::string& sourceText);
bool CollectLegacyBackendSplitShaderDependencyPaths(
const Containers::String& path,
const std::string& sourceText,
Containers::Array<Containers::String>& outDependencies);
bool CollectUnityStyleSingleSourceShaderDependencyPaths(
const Containers::String& path,
const std::string& sourceText,
Containers::Array<Containers::String>& outDependencies);
LoadResult LoadLegacyBackendSplitShaderAuthoring(
const Containers::String& path,
const std::string& sourceText);
LoadResult LoadUnityStyleSingleSourceShaderAuthoring(
const Containers::String& path,
const std::string& sourceText);
} // namespace Resources
} // namespace XCEngine