BRE12
ModelLoader.h
1 #pragma once
2 
3 #include <string>
4 #include <unordered_map>
5 
6 namespace YAML {
7 class Node;
8 }
9 
10 struct ID3D12CommandAllocator;
11 struct ID3D12GraphicsCommandList;
12 
13 namespace BRE {
14 class Model;
15 
16 class ModelLoader {
17 public:
18  ModelLoader()
19  {}
20  ModelLoader(const ModelLoader&) = delete;
21  const ModelLoader& operator=(const ModelLoader&) = delete;
22  ModelLoader(ModelLoader&&) = delete;
23  ModelLoader& operator=(ModelLoader&&) = delete;
24 
25  void LoadModels(const YAML::Node& rootNode,
26  ID3D12CommandAllocator& commandAllocator,
27  ID3D12GraphicsCommandList& commandList) noexcept;
28 
29  const Model& GetModel(const std::string& name) const noexcept;
30 
31 private:
32  std::unordered_map<std::string, Model*> mModelByName;
33 };
34 }
35 
Definition: Camera.cpp:8
Definition: Model.h:15
Definition: ModelLoader.h:16
Definition: DrawableObjectLoader.h:10
Definition: node.h:29