Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
AssetLoader.hpp
1#pragma once
2
3#include <filesystem>
4#include <vector>
5
6#include <Common/Buffer.hpp>
7#include <Common/Graphics/GraphicsPipeline.hpp>
8#include <Common/ResourcePipeline/Uuid.hpp>
9#include <Common/ResourcePipeline/AssetType.hpp>
10
11namespace Grindstone::Assets {
19
21 AssetLoadStatus status;
22 std::string displayName;
23 Buffer buffer;
24 };
25
27 AssetLoadStatus status;
28 std::string displayName;
29 std::string content;
30 };
31
33 public:
34 virtual AssetLoadBinaryResult LoadBinaryByUuid(AssetType assetType, Uuid uuid) = 0;
35 virtual AssetLoadTextResult LoadTextByUuid(AssetType assetType, Uuid uuid) = 0;
36 virtual Grindstone::Uuid GetUuidByAddress(AssetType assetType, std::string_view address) = 0;
37 };
38}
Definition AssetLoader.hpp:32
Definition Buffer.hpp:9
Definition Uuid.hpp:7
Definition ArchiveContentFile.hpp:8
AssetLoadStatus
Definition AssetLoader.hpp:12
@ NotEnoughMemory
The asset was found, but could not be loaded because it requires an amount of memory that could not b...
Definition AssetLoader.hpp:15
@ FileNotFound
The asset could not be found.
Definition AssetLoader.hpp:14
@ Success
The asset was successfully found and not loaded.
Definition AssetLoader.hpp:13
@ AssetNotInRegistry
The asset could not be found in the registry, likely due to an incorrect UUID.
Definition AssetLoader.hpp:17
@ InvalidAssetType
The asset was found, but has a type other than that which was attempted to be loaded.
Definition AssetLoader.hpp:16
Definition AssetLoader.hpp:20
Definition AssetLoader.hpp:26