Faro Engine 0.0.0.b519570 (main)
Loading...
Searching...
No Matches
ResourcePackage.hpp
Go to the documentation of this file.
1#pragma once
2#include "Containers/Map.hpp"
3#include "Containers/Path.hpp"
5
6namespace Faro
7{
8#define ResourceMount_Engine "Engine"
9#define ResourceMount_Game "Game"
10
12 {
13 public:
14 ResourcePackage(String mountRoot, Path mountPath = String(), bool autoRegister = false);
15 virtual ~ResourcePackage() = default;
16
17 virtual void LoadResources() = 0;
18 virtual void UnloadResources() = 0;
20
22
24
25 protected:
26 void SelfRegister();
27
28 private:
29 static Array<ResourcePackage*> staticPackages;
30
31 String mountRoot;
32 Path mountPath;
33 };
34
36 {
37 public:
38 ResourceDirectoryPackage(String mountRoot, Path mountPath, Path directory);
39
40 void LoadResources() override;
41 void UnloadResources() override;
43
44 private:
45 Path directory;
47 };
48}
Definition Array.hpp:11
Definition Map.hpp:9
Definition Path.hpp:14
Definition ResourcePackage.hpp:36
Map< Path, DataStream * > GetResources() override
Definition ResourcePackage.cpp:51
void UnloadResources() override
Definition ResourcePackage.cpp:42
void LoadResources() override
Definition ResourcePackage.cpp:32
Definition ResourcePackage.hpp:12
void SelfRegister()
Definition ResourcePackage.cpp:23
virtual void LoadResources()=0
virtual Map< Path, DataStream * > GetResources()=0
virtual void UnloadResources()=0
static const Array< ResourcePackage * > & GetStaticPackages()
Definition ResourcePackage.cpp:13
virtual ~ResourcePackage()=default
Path GetMountRoot()
Definition ResourcePackage.cpp:18
Definition String.hpp:12
Definition Array.hpp:8