 |
CUGL 1.3
Cornell University Game Library
|
50 #ifndef __CU_SCENE_LOADER_H__
51 #define __CU_SCENE_LOADER_H__
52 #include <cugl/assets/CULoader.h>
53 #include <cugl/2d/CUNode.h>
54 #include <unordered_map>
138 std::unordered_map<std::string,Widget>
_types;
141 std::unordered_map<std::string,Form>
_forms;
158 void materialize(
const std::shared_ptr<Node>& node, LoaderCallback callback);
194 virtual bool read(
const std::string& key,
const std::string& source,
195 LoaderCallback callback,
bool async)
override;
213 virtual bool read(
const std::shared_ptr<JsonValue>& json,
214 LoaderCallback callback,
bool async)
override;
231 virtual bool purge(
const std::shared_ptr<JsonValue>& json)
override;
245 bool attach(
const std::string& key,
const std::shared_ptr<Node>& node);
256 std::shared_ptr<JsonValue>
getWidgetJson(
const std::shared_ptr<JsonValue>& json)
const;
260 #pragma mark Constructors
285 return init(
nullptr);
302 virtual bool init(
const std::shared_ptr<ThreadPool>& threads)
override;
335 static std::shared_ptr<SceneLoader>
alloc() {
336 std::shared_ptr<SceneLoader> result = std::make_shared<SceneLoader>();
337 return (result->init() ? result :
nullptr);
351 static std::shared_ptr<SceneLoader>
alloc(
const std::shared_ptr<ThreadPool>& threads) {
352 std::shared_ptr<SceneLoader> result = std::make_shared<SceneLoader>();
353 return (result->init(threads) ? result :
nullptr);
385 std::shared_ptr<Node>
build(
const std::string& key,
const std::shared_ptr<JsonValue>& json)
const;
SceneLoader()
Definition: CUSceneLoader.h:267
Definition: CULoader.h:749
AssetManager * _manager
Definition: CULoader.h:112
static std::shared_ptr< SceneLoader > alloc()
Definition: CUSceneLoader.h:335
virtual bool purge(const std::shared_ptr< JsonValue > &json) override
Widget
Definition: CUSceneLoader.h:88
std::shared_ptr< ThreadPool > _loader
Definition: CULoader.h:105
std::shared_ptr< Node > build(const std::string &key, const std::shared_ptr< JsonValue > &json) const
void dispose() override
Definition: CUSceneLoader.h:315
static std::shared_ptr< SceneLoader > alloc(const std::shared_ptr< ThreadPool > &threads)
Definition: CUSceneLoader.h:351
void materialize(const std::shared_ptr< Node > &node, LoaderCallback callback)
Definition: CUSceneLoader.h:77
std::unordered_map< std::string, Form > _forms
Definition: CUSceneLoader.h:141
Form
Definition: CUSceneLoader.h:124
virtual bool read(const std::string &key, const std::string &source, LoaderCallback callback, bool async) override
std::unordered_map< std::string, std::shared_ptr< Node > > _assets
Definition: CULoader.h:752
virtual bool init() override
Definition: CUSceneLoader.h:284
bool attach(const std::string &key, const std::shared_ptr< Node > &node)
std::unordered_map< std::string, Widget > _types
Definition: CUSceneLoader.h:138
std::shared_ptr< JsonValue > getWidgetJson(const std::shared_ptr< JsonValue > &json) const