105 Commits

Author SHA1 Message Date
subhransu mohanty
abb7872b79 lottie/vector: reserve memory ahead to minimize reallocation.
Change-Id: Idb973bb7660c4ec95f36aa36d3707aa6030f5ffc
2018-07-30 16:47:18 +09:00
Youngbok Shin
b7f8007431 lottie: use make_unique construct
Change-Id: I8618541470fb636d2315aa39360fadc58c182dd3
2018-07-30 07:02:02 +00:00
Youngbok Shin
33e6a807c9 lottie/vector: reserve memory space ahead for minimizing reallocation - Polystar/Polygon
It also fix to use vIsZero() instead of equal(=) for floating values.

Change-Id: Iebe619a1a7be58b00e7261d8a6079e8ea817e055
2018-07-30 15:24:11 +09:00
Youngbok Shin
29eedc78ea lottie/vector: remove a warning message from 64 bits compilation
uint64_t is same as unsigned long long in 32 bits compilation.
But, it is same as unsigned long in 64 bits compilation.

Change-Id: Ibcddaf17d1fa1f6c972906f6571c05253292b752
2018-07-30 14:48:28 +09:00
Youngbok Shin
e99664a5ca lottie/vector: remove an unused variable warning message
Change-Id: I1ac0b9c3ec314ac01da8d3be3d11a1b21ef9938a
2018-07-30 14:41:23 +09:00
subhransu mohanty
3b5bac83a0 lottie/vector: reserve memory only when required.
Change-Id: Ia86c292d66c1060d33ccffd2fe5922480d219eb4
2018-07-30 14:34:24 +09:00
subhransu mohanty
dfe59f9fd5 lottie/vector: updated paths reserve api policy.
Change-Id: I9b6e97526d887ec6d342384cb7f2046584dbaf04
2018-07-30 14:31:19 +09:00
subhransu mohanty
548051c0e1 lottie: save extra memory allocation by reusing FtOutline object.
Change-Id: Ib3574052524cd38cd106ba27620ac825eb6a3f2a
2018-07-30 14:22:11 +09:00
subhransu mohanty
aa29d857d8 lottie: fixed warning.
Change-Id: Icc12cc76584913dd1f219207c23b987c61bb4829
2018-07-30 14:17:54 +09:00
subhransu mohanty
21867e1bd1 lottie: Enable compiler Optimization on library.
Change-Id: I4edee092788670e5438139ea60a8daa9998c6575
2018-07-30 13:44:09 +09:00
subhransu mohanty
e527a3d7c0 lottie: remove inline from public api.
Change-Id: Ia6fdd2ddf0029f7aa1af57446e327ac6887708c8
2018-07-30 13:40:24 +09:00
subhransu mohanty
9e63597b97 lottie: Follow Tizen coding guideline.
Change-Id: Ice6a5af7cb08e768e157f8bb45bef64bb4062dce
2018-07-30 13:18:28 +09:00
sub.mohanty@samsung.com
485f55f99b lottie/model: unique pointer will do the job.
Change-Id: If421eb50bfbb529dece4d42fce1b71ff70574694
2018-07-30 02:49:00 +00:00
subhransu mohanty
6bf0c9bf69 lottie: Updated clang-format based on tizen coding guide line.
Change-Id: I25ddd59307ded91b71d7aaf46c2fc32e8e88fd33
2018-07-30 02:48:30 +00:00
sub.mohanty@samsung.com
6b363ae021 lottie/model: refactor Keyframe class for space optimization.
Change-Id: I5b5a614ef69ab430459003764e7707ace4575ebd
2018-07-30 00:47:16 +00:00
sub.mohanty@samsung.com
99e3caa0d2 lottie/render: ported sse2 srcOver composition from pixman.
Change-Id: I8d38caf4190a97a8575c5cecd9847fc37f4ef256
2018-07-30 09:45:39 +09:00
sub.mohanty@samsung.com
61bb4fba3e lottie/vector: Remove the hack with mutable data member.
NOTE: if you need to modify the object in a const member function make the data as mutable.

Change-Id: I28b2cc18d75433475f75b048af878297747980db
2018-07-28 17:29:58 +09:00
sub.mohanty@samsung.com
e6bce26b6e lottie: fix some more warning.
Change-Id: I0b1fe8773ec1f795e7df603a35a02687697f3e00
2018-07-28 17:08:32 +09:00
sub.mohanty@samsung.com
a5223736af lottie/render: fixed std::move copy elision warning
Change-Id: I0eee41225dbc19ee958b7d747d2536532efb3445
2018-07-28 17:02:37 +09:00
subhransu mohanty
edb4dd17a1 lottie/render: fixed regression in dash rendering.
Change-Id: I3f4a4aa5d990b9386ddf2ceddc141c2ac83cda76
2018-07-27 18:50:42 +09:00
Jaeun Choi
c607e87f97 lottie/vector: clean up vpathmesure and use vdasher in it
Change-Id: Id5367613f89487f4a764010ef155d19f78e2372a
2018-07-27 17:42:16 +09:00
Jaeun Choi
86d179f9b1 vector: add length() function in vpath
Change-Id: I94e2a3d7a1441f250ca722f53de018efce191c74
2018-07-27 17:04:49 +09:00
subhransu mohanty
0255310b08 lottie/render: Disable buggy sse2 implementation till it fixed.
Change-Id: Iffc2006afc1bb29a65944a6da23fa308ce0b5955
2018-07-27 07:32:12 +00:00
Jaeun Choi
1570254a2e vector: fixed variable type from int to float
Change-Id: I5ab0d6f14de6e1aa302cb6b4df1f61781dd3468b
2018-07-27 15:43:34 +09:00
subhransu mohanty
e62f74b624 lottie/render: Use AlignCenter rule when the composition dosen't scale exactly to the requested size.
Change-Id: Ibd8aa929186104378287b65785afbc799cad0e04
2018-07-27 14:51:58 +09:00
subhransu mohanty
792cd0d5f5 lttie/example: fixed layouting issue.
Change-Id: Id6ac76f9e4161321252e32a7a4484f69d130c04f
2018-07-27 12:48:53 +09:00
subhransu mohanty
1c62266e43 lottie/render: Move drawable class to vector.
Change-Id: I4cb296e7a1d86b5215ab191b4306514d3fcdeacf
2018-07-27 11:09:13 +09:00
subhransu mohanty
8b77e6ce93 lottie/vector: refactor vmatrix class as a POD class because memory allocation is showing up in profiling.
Change-Id: Ib86e8e3766faa1f8e43e3b21b356d16adf3c9cab
2018-07-27 10:10:43 +09:00
subhransu mohanty
6f5a77fa45 lottie/optimization: reduce temporary object by calling *= operator.
Change-Id: I9a5273a81cdad0ac78edf6a6564cfb6965884311
2018-07-26 18:29:33 +09:00
subhransu mohanty
f0fc4f8c3b lottie/render: fixed meter join type rendering issue.
Change-Id: Ie32e60b0d613a5ca7b68176d7f8cc0859aa0f315
2018-07-26 13:10:36 +09:00
subhransu mohanty
c4aea88044 lottie/optimization: added reserve() on lottieshapeData to optimize memory allocation
Change-Id: Ic41d90a4463b54c47d3f39fa72bb09d5ddbc47f0
2018-07-26 12:46:07 +09:00
subhransu mohanty
6d5d456d0f lottie/optimization: reserve() memory ahead before calling path api
to optimize the number of allocation.

Change-Id: Iab0b8db715c868de0a0f4a0c688421cc11be4b01
2018-07-26 11:30:18 +09:00
subhransu mohanty
f6658ae623 lottie/vector: update reserve() api in vpath
Change-Id: Ib43afa96a0c1a7764dd410ea1e7f01019f592d6d
2018-07-26 11:11:28 +09:00
subhransu mohanty
f35ca73d48 lottie/optimization: Refactored to reduced number of allocation per task.
Change-Id: I380e0b6c720c698e84e9d157678c8abf6ac83191
2018-07-26 10:47:27 +09:00
subhransu mohanty
8aaeff98a3 lottie: updated library dependancy to c++14
Change-Id: I6262065f30393830ea5192d0f549491f2c42677e
2018-07-26 09:43:36 +09:00
subhransu mohanty
7b4f8a44be lottie: support library version in cmake build system.
Change-Id: I494a29cc02ddd5dbba6014f08d27f11da62ecfb3
2018-07-26 09:33:20 +09:00
subhransu mohanty
a34f172479 lottie: Support tizen gbs build .
Change-Id: I516206ba3cc83d80770888b1d1c21e37780c3e45
2018-07-25 19:24:53 +09:00
subhransu mohanty
970dd83735 lottie: add pc file for lottie player
Change-Id: Ic44b84b756b0ae7939a016cddd1e51eec7d3a3bc
2018-07-25 19:24:27 +09:00
subhransu mohanty
d39ce3f62f lottie: added cmake build system for lottie
Change-Id: I8e03709ae668bc221c4ec936317cf579d326876f
2018-07-25 16:55:40 +09:00
subhransu mohanty
85a5463cc0 lottie/vector: refactor vraster to optimize number of memory allocation.
Change-Id: I55ffb29d9a039a458830200a56ff3a6a057ff361
2018-07-24 09:12:13 +00:00
Youngbok Shin
d0a08aadc8 lottie/vector: change addPolystar* method to addPolystar/addPolygon
It also move its implemented code to VPath::VPathData from VPath.

Change-Id: Idc6f04e04930f1863bb78fd1a05ba86c573e328b
2018-07-24 18:00:25 +09:00
subhransu mohanty
9626223abd lottie/vector: use callback version of intersect() for performance.
Change-Id: I194f1da65b766e59c4c5230040b8a329a39fa95b
2018-07-24 08:01:58 +00:00
subhransu mohanty
ea4c4bd5c0 lottie/vector: avoid copy-elision by using move on temporary object.
Change-Id: I6b54951dab7d15966760d5ec682d151e9745da63
2018-07-24 06:15:55 +00:00
subhransu mohanty
3475625b38 lottie/vector: Implement intersect function with callback.
Change-Id: I8d5e3be9d4a77c246ef174e716c22c8766fc82a1
2018-07-24 06:15:10 +00:00
sub.mohanty@samsung.com
5f556cf0d5 lottie: give a make_unique wrapper till we move to c++14
Change-Id: I09061f807f6bf9ad5eea631f206d89705e3ae1bc
2018-07-24 06:11:43 +00:00
subhransu mohanty
84c0411929 lottie/vector: refactor vpath class to use vcow_ptr
Change-Id: Ib16da52a8a97bbee87766ee362e1d6e5678ac305
2018-07-23 05:39:43 +00:00
subhransu mohanty
8c20000b08 lottie/vector: added cow_ptr class to support copy_on_write class in vector.
Change-Id: I485637da44d44ce473dc760aaf484b0377bdcda1
2018-07-23 05:39:01 +00:00
Jaeun Choi
547434e2a6 lottie: fixed miscellaneous things regarding trim operation
- check if path operator is there before applying it
 - fixed comment
 - fixed indentation

Change-Id: I2b491423cea3a40e5c28436686b24f92d1e6bcfd
2018-07-20 18:01:59 +09:00
Jaeun Choi
0dacf86753 vector: bug fix in vpathmesure
Change-Id: I4936c9fe5b7db80fe6d99908086c3ebc9dab1398
2018-07-20 17:40:50 +09:00
Youngbok Shin
7f9edbe3b1 lottie/example: add polystar_line_clockwise_trim.json file for testing polystar with trim
Change-Id: I0a1db3400b284f973a959a194919221d28871d42
2018-07-20 16:48:42 +09:00