le2d v0.4.3
2D game engine framework
 
Loading...
Searching...
No Matches
data_loader.hpp
Go to the documentation of this file.
1#pragma once
2#include <klib/base_types.hpp>
3#include <cstddef>
4#include <cstdint>
5#include <string>
6#include <vector>
7
8namespace dj {
9class Json;
10} // namespace dj
11
12namespace le {
14class IDataLoader : public klib::Polymorphic {
15 public:
19 virtual auto try_load_bytes(std::vector<std::byte>& out, std::string_view uri) const -> bool = 0;
22 [[nodiscard]] auto load_bytes(std::string_view uri) const -> std::vector<std::byte>;
23
27 virtual auto try_load_spirv(std::vector<std::uint32_t>& out, std::string_view uri) const -> bool = 0;
30 [[nodiscard]] auto load_spir_v(std::string_view uri) const -> std::vector<std::uint32_t>;
31
35 virtual auto try_load_string(std::string& out, std::string_view uri) const -> bool = 0;
38 [[nodiscard]] auto load_string(std::string_view uri) const -> std::string;
39
43 auto try_load_json(dj::Json& out, std::string_view uri) const -> bool;
46 [[nodiscard]] auto load_json(std::string_view uri) const -> dj::Json;
47
50 [[nodiscard]] auto get_json_type_name(std::string_view uri) const -> std::string;
51};
52} // namespace le
Interface for loading bytes from a data source (usually the filesystem).
Definition data_loader.hpp:14
virtual auto try_load_spirv(std::vector< std::uint32_t > &out, std::string_view uri) const -> bool=0
auto load_bytes(std::string_view uri) const -> std::vector< std::byte >
auto try_load_json(dj::Json &out, std::string_view uri) const -> bool
virtual auto try_load_string(std::string &out, std::string_view uri) const -> bool=0
virtual auto try_load_bytes(std::vector< std::byte > &out, std::string_view uri) const -> bool=0
auto load_json(std::string_view uri) const -> dj::Json
auto get_json_type_name(std::string_view uri) const -> std::string
auto load_spir_v(std::string_view uri) const -> std::vector< std::uint32_t >
auto load_string(std::string_view uri) const -> std::string
Definition data_loader.hpp:8
Definition animation.hpp:8