Photon Editor Library 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
SpecializedImposterBinder.h
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4#include <string>
5
6namespace ph { class ISdlResource; }
7namespace ph { class SdlClass; }
8
9namespace ph::editor
10{
11
12class DesignerScene;
13class DesignerObject;
14class ImposterObject;
15
17{
18public:
20
26 const std::shared_ptr<ISdlResource>& descResource,
27 const std::string& descName);
28
32 ImposterObject* newImposter(const SdlClass* descClass);
33
36 ImposterObject* newImposter(const std::string& descName);
37
38private:
39 ImposterObject* createImposterAndBindDescription(
40 const std::shared_ptr<ISdlResource>& descResource,
41 const std::string& descName);
42
43 static bool isDescriptionClass(const SdlClass* clazz);
44 static const SdlClass* getImposterClass(const SdlClass* descClass);
45
46 DesignerScene& m_scene;
47};
48
49}// end namespace ph::editor
Definition DesignerScene.h:58
Definition ImposterObject.h:17
Definition SpecializedImposterBinder.h:17
SpecializedImposterBinder(DesignerScene &scene)
Definition SpecializedImposterBinder.cpp:17
ImposterObject * newImposter(const std::shared_ptr< ISdlResource > &descResource, const std::string &descName)
Given a new description resource and its name, create an imposter object for it. The description reso...
Definition SpecializedImposterBinder.cpp:21
Definition ph_editor.h:10
Definition ph_editor.h:5