And this completes the first version of this ETC2 encoder.
It's pretty slow and not exhaustive.
Color selection for T and H modes could probably be optimized
for both performance and quality. As for the planar mode, there
is no selection to speak of, as we just take the values of the
pixels directly (no scan, very fast)
On a sample image with lots of blue, white and noisy gradients,
T+H+Planar mode boost the PNSR from 41.22dB to 42.01dB.
Without planar mode, the PSNR was 41.94dB.
@feature
In this mode, two colors are encoded in RGB444, a multiplier and
distance (index) are selected. Two extra colors are extrapolated
from the main base color. As in ETC1 we have 4 base colors to paint
our block.
@feature
This will call the new ETC2 encoding functions.
Note that the quality and performance will be horrible, but at
least alpha should be supported.
Also, there is no way to choose between ETC1 and ETC2 from
the client API side, which, well, sucks. So ETC2 is selected
if and only if the image has alpha (according to its flag).
@feature: Encode images in ETC2 with support for Alpha (if needed).
Implement Alpha encoding, brute force way, but doesn't scan
all possibilities either (only based on average alpha).
RGB encoding is still entirely left to the rg-etc1 encoder.
T, H and Planar mode will come in the next commits.
@feature: Implement an ETC2 encoder from scratch for RGB8 and RGBA8
Summary:
There are new API for block 'text.source' get and set. Those function
return or set the name of part which is source style for given part.
@fix
Reviewers: seoz, Hermet, cedric, raster
Reviewed By: cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D970
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
This patch:
- removes the @def from Doxygen, as it is not correct for API
functions.
- fixes the generation of class comments. When no class description is
supplied, no comment should be added.
place.
Instead of having the calculation (class name + function name + set/get)
in many places in the code, it is now in one place and accessible via a
function environment structure.
Summary:
Add two main functions:
edje_edit_group_broadcast_signal_set/_get.
_get return EINA_FALSE if group not accept broadcast signal, EINA_TRUE otherwise (Default to true since 1.1.).
Also support access into group's source code generation.
Reviewers: seoz, Hermet, raster, cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D957
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary: This example need for demonstration work of the propagate events.
Reviewers: Hermet, cedric, raster
CC: cedric
Differential Revision: https://phab.enlightenment.org/D890
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
Add generate source code for absent parameters for part description.
Also use fields from internal structure Edje_Real_Part instead call public API
@feature
Reviewers: cedric, raster, seoz, Hermet
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D960
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
We only use w & h if one of the dev->abs.rel_* axis values are less
than zero, so let's not declare integers that we May not use until we
need them.
Signed-off-by: Chris Michael <devilhorns@comcast.net>
Summary: Support for type B touch devices, tested with egalax_ts compatible touchscreen.
Reviewers: devilhorns
Reviewed By: devilhorns
CC: cedric
Differential Revision: https://phab.enlightenment.org/D933
Summary: First function is used for intersection of ray and parallelepiped, the second one - for intersection of ray and rectangle in two-dimensional case.
@feature
Reviewers: Hermet, cedric, raster
CC: cedric
Differential Revision: https://phab.enlightenment.org/D956
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
_edje_generate_source_program gets Edje_Program pointer from _edje_program_get_byname
at start of function,but in body calls public methods for get parameters of programs.
Each of this methods calls _edje_program_get_byname, what make generation of source
whole program is slow.
Replaced public API calls with using fields of Edje_Program structure.
Reviewers: cedric, raster, seoz, Hermet
Reviewed By: cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D950
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
Set or get orientation for group:
0 for EDJE_ORIENTATION_AUTO, 1 for EDJE_ORIENTATION_LTR, 2 for EDJE_ORIENTATION_RTL.
_get return 0 (AUTO), 1 (LTR), 2(RTL) orientation was setted for the group. -1 if an error occurred.
_set return EINA_TRUE if successful, EINA_FALSE otherwise.
@feature
Reviewers: cedric, raster, seoz, Hermet
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D938
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
This allows people to disable the building of anything GUI related.
In my case, it is used for servers.
I encourage anyone that think they can do a better patch to improve it,
as i dislike having to add all those AM_CONDITIONAL().
Maybe the macros should be improved.