7#include <unordered_map>
19template <
typename ResourceTy>
22 std::vector<std::unique_ptr<ResourceTy>>
Slots;
23 std::unordered_map<std::string, ResourceRef<ResourceTy>>
AssetIndex;
28 std::unique_ptr<ResourceTy>
resource) {
51 return const_cast<ResourceTy *
>(std::as_const(*this).TryGet(reference));
62 template <
typename VisitorTy>
ResourceManager 内部使用的分类型所有权容器。
Definition ResourcePool.h:20
std::unordered_map< std::string, ResourceRef< ResourceTy > > AssetIndex
Definition ResourcePool.h:23
size_t Size() const
Definition ResourcePool.h:47
ResourceRef< ResourceTy > Find(const std::string &assetId) const
Definition ResourcePool.h:41
ResourceTy * TryGet(ResourceRef< ResourceTy > reference)
Definition ResourcePool.h:50
const ResourceTy * TryGet(ResourceRef< ResourceTy > reference) const
Definition ResourcePool.h:55
ResourceRef< ResourceTy > Add(std::string assetId, std::unique_ptr< ResourceTy > resource)
Definition ResourcePool.h:27
void Visit(VisitorTy &&visitor) const
Definition ResourcePool.h:63
std::vector< std::unique_ptr< ResourceTy > > Slots
Definition ResourcePool.h:22
资源的强类型引用,同时覆盖持久化 ID 与运行时索引两种边界。
Definition ResourceRef.h:36
uint32_t Index
Definition ResourceRef.h:42
bool IsResolved() const
Definition ResourceRef.h:54
世界矩阵 描述坐标系,左手坐标系 使用 DirectX12 坐标系的描述
Definition Application.h:15
ResourceTy
Definition ResourceRef.h:10