diff options
author | Yann Herklotz <ymherklotz@gmail.com> | 2017-09-25 21:15:03 +0100 |
---|---|---|
committer | Yann Herklotz <ymherklotz@gmail.com> | 2017-09-25 21:15:03 +0100 |
commit | ba733040afb85d4c287a2ec464db05cb86a53fca (patch) | |
tree | 4b385a291bb6ded2685d0e7996dd0d4cb92da74d /yage/base/spritesheet.h | |
parent | 5e6067f74e7ac072656f11ead0f22ec7f8e9c525 (diff) | |
download | YAGE-ba733040afb85d4c287a2ec464db05cb86a53fca.tar.gz YAGE-ba733040afb85d4c287a2ec464db05cb86a53fca.zip |
Changing sax parser to dom parser as it is simpler
Diffstat (limited to 'yage/base/spritesheet.h')
-rw-r--r-- | yage/base/spritesheet.h | 37 |
1 files changed, 2 insertions, 35 deletions
diff --git a/yage/base/spritesheet.h b/yage/base/spritesheet.h index 3dca6b57..d44e1dc0 100644 --- a/yage/base/spritesheet.h +++ b/yage/base/spritesheet.h @@ -38,41 +38,6 @@ struct Coordinate { typedef std::map<std::string, details::Coordinate> SpriteMap; -class SpriteSheetHandler - : public rapidjson::BaseReaderHandler<rapidjson::UTF8<>, SpriteSheetHandler> -{ -public: - bool Null(); - bool Bool(bool b); - bool Int(int i); - bool Uint(unsigned u); - bool Int64(int64_t i); - bool Uint64(uint64_t u); - bool Double(double d); - bool String(const char *str, rapidjson::SizeType length, bool copy); - - bool Key(const char *str, rapidjson::SizeType length, bool copy); - bool StartObject(); - bool EndObject(rapidjson::SizeType memberCount); - bool StartArray(); - bool EndArray(rapidjson::SizeType memberCount); - - SpriteMap spriteMap() const; - int imageWidth() const; - int imageHeight() const; - -private: - std::string current_key_; - std::string current_image_; - Coordinate coord_; - int depth_; - int image_width_; - int image_height_; - SpriteMap map_; - - bool handleNumber(int i); -}; - } // namespace details class SpriteSheet @@ -86,6 +51,8 @@ public: private: Texture texture_; details::SpriteMap fileLocations_; + + details::SpriteMap parseJson(int &width, int &height, const std::string &jsonContent) const; }; } // namespace yage |