Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
ArchiveAssetLoader.hpp
1
#pragma once
2
3
#include <filesystem>
4
5
#include <Common/Buffer.hpp>
6
#include <Common/Assets/ArchiveDirectory.hpp>
7
8
#include "AssetLoader.hpp"
9
10
namespace
Grindstone::Assets {
11
class
ArchiveAssetLoader :
public
AssetLoader
{
12
public
:
13
ArchiveAssetLoader();
14
void
InitializeDirectory();
15
virtual
AssetLoadBinaryResult
LoadBinaryByUuid(AssetType assetType,
Uuid
uuid)
override
;
16
virtual
AssetLoadTextResult
LoadTextByUuid(AssetType assetType,
Uuid
uuid)
override
;
17
virtual
Grindstone::Uuid
GetUuidByAddress(AssetType assetType, std::string_view address)
override
;
18
protected
:
19
AssetLoadBinaryResult
LoadAsset(
const
ArchiveDirectory::AssetInfo
& assetInfo);
20
ArchiveDirectory
archiveDirectory;
21
22
Buffer
lastBuffer;
23
uint16_t lastBufferIndex = UINT16_MAX;
24
};
25
}
Grindstone::Assets::AssetLoader
Definition
AssetLoader.hpp:32
Grindstone::Buffer
Definition
Buffer.hpp:9
Grindstone::Uuid
Definition
Uuid.hpp:7
Grindstone::Assets::ArchiveDirectory::AssetInfo
Definition
ArchiveDirectory.hpp:13
Grindstone::Assets::ArchiveDirectory
Definition
ArchiveDirectory.hpp:12
Grindstone::Assets::AssetLoadBinaryResult
Definition
AssetLoader.hpp:20
Grindstone::Assets::AssetLoadTextResult
Definition
AssetLoader.hpp:26
sources
code
EngineCore
Assets
Loaders
ArchiveAssetLoader.hpp
Generated by
1.13.2