X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fanimation%2Fkeyframe.h;h=5e70aa730c970bf11ac51231c72ad8defd695344;hp=5b748add113c5432c0d3c5836e6fceaf4db8b590;hb=HEAD;hpb=7aaec9a70b8d7733429bec043f8e33e02956f266 diff --git a/source/animation/keyframe.h b/source/animation/keyframe.h index 5b748add..5e70aa73 100644 --- a/source/animation/keyframe.h +++ b/source/animation/keyframe.h @@ -19,12 +19,19 @@ class KeyFrame public: class Loader: public DataFile::CollectionObjectLoader { + private: + std::string inline_base_name; + public: - Loader(KeyFrame &); - Loader(KeyFrame &, Collection &); + Loader(KeyFrame &k): Loader(k, 0) { } + Loader(KeyFrame &k, Collection &c): Loader(k, &c) { } private: - void init(); + Loader(KeyFrame &, Collection *); + + public: + void set_inline_base_name(const std::string &); + private: void pose(const std::string &); void pose_inline(); void position(float, float, float); @@ -60,12 +67,9 @@ public: private: Transform transform; UniformMap uniforms; - RefPtr pose; + const Pose *pose = 0; public: - KeyFrame(); - ~KeyFrame(); - void set_transform(const Transform &); void set_matrix(const Matrix &); void set_uniform(const std::string &, const AnimatedUniform &); @@ -73,7 +77,7 @@ public: const Transform &get_transform() const { return transform; } Matrix get_matrix() const { return transform.to_matrix(); } const UniformMap &get_uniforms() const { return uniforms; } - const Pose *get_pose() const { return pose.get(); } + const Pose *get_pose() const { return pose; } }; } // namespace GL