Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
TextureImporter.hpp
1#pragma once
2
3#include <string>
4#include <vector>
5#include <filesystem>
6#include <map>
7
8#include <Common/Buffer.hpp>
9#include <EngineCore/Assets/AssetImporter.hpp>
10
11#include "TextureAsset.hpp"
12
13namespace Grindstone {
14 class TextureImporter : public SpecificAssetImporter<TextureAsset, AssetType::Texture> {
15 public:
16 virtual ~TextureImporter() override;
17
18 virtual void* ProcessLoadedFile(Uuid uuid) override;
19 virtual void* ProcessLoadedFile(std::string_view address) override;
20 virtual void* ProcessLoadedFile(Uuid uuid, std::string& assetName, Grindstone::Buffer buffer, TextureAsset& textureAsset);
21 virtual void QueueReloadAsset(Uuid uuid) override;
22
23 virtual bool TryGetIfLoaded(std::string_view address, void*& output) override;
24 private:
25 std::map<std::string, TextureAsset> texturesByAddress;
26 };
27}
Definition Buffer.hpp:46
Definition AssetImporter.hpp:29
Definition TextureImporter.hpp:14
Definition Uuid.hpp:6
Definition TextureAsset.hpp:8