4 #ifndef EFL_BETA_API_SUPPORT
5 #define EFL_BETA_API_SUPPORT
8 #ifndef EFL_EO_API_SUPPORT
9 #define EFL_EO_API_SUPPORT
16 #include <Ecore_Evas.h>
22 enum class RepeatMode {
26 LottieView(Evas *evas, bool renderMode = true, bool asyncRender = true);
28 Evas_Object * getImage() { return mRenderMode ? mImage : mVg; }
29 void setSize(int w, int h);
30 void setPos(int x, int y);
31 void setFilePath(const char *filePath);
35 void setSpeed(float speed) { mSpeed = speed;}
36 void setRepeatCount(int count);
37 void setRepeatMode(LottieView::RepeatMode mode);
38 float getFrameRate() const { return mFrameRate; }
39 long getTotalFrame() const { return mTotalFrame; }
48 void createVgNode(LOTNode *node, Efl_VG *parent);
49 void update(const std::vector<LOTNode *> &);
58 LottieView::RepeatMode mRepeatMode;
59 lottieplayer::LOTPlayer *mPlayer;
60 Ecore_Animator *mAnimator{nullptr};
73 std::future<bool> mRenderTask;