Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
FileAssetLoader.hpp
1#pragma once
2
3#include <filesystem>
4
5#include <EngineCore/Assets/Loaders/AssetLoader.hpp>
6
7namespace Grindstone::Assets {
8 class FileAssetLoader : public AssetLoader {
9 public:
10 virtual AssetLoadBinaryResult LoadBinaryByPath(AssetType assetType, const std::filesystem::path& path) override;
11 virtual AssetLoadBinaryResult LoadBinaryByAddress(AssetType assetType, std::string_view address) override;
12 virtual AssetLoadBinaryResult LoadBinaryByUuid(AssetType assetType, Uuid uuid) override;
13
14 virtual AssetLoadTextResult LoadTextByPath(AssetType assetType, const std::filesystem::path& path) override;
15 virtual AssetLoadTextResult LoadTextByAddress(AssetType assetType, std::string_view address) override;
16 virtual AssetLoadTextResult LoadTextByUuid(AssetType assetType, Uuid uuid) override;
17
18 virtual bool LoadShaderStageByPath(
19 const std::filesystem::path& path,
20 GraphicsAPI::ShaderStage shaderStage,
22 std::vector<char>& fileData
23 ) override;
24 virtual bool LoadShaderStageByAddress(
25 std::string_view address,
26 GraphicsAPI::ShaderStage shaderStage,
28 std::vector<char>& fileData
29 ) override;
30 virtual bool LoadShaderStageByUuid(
31 Uuid uuid,
32 GraphicsAPI::ShaderStage shaderStage,
34 std::vector<char>& fileData
35 ) override;
36 };
37}
Definition AssetLoader.hpp:32
Definition FileAssetLoader.hpp:8
Definition Uuid.hpp:6
Definition AssetLoader.hpp:20
Definition AssetLoader.hpp:26