-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathTODO
35 lines (34 loc) · 1.81 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Enesim
======
+ Fix the callback names
+ Remove enesim_image_dispatch and use the context dispatch directly
+ Add a function to get the default context
+ Add the log parameter on the shape path renderer callbacks
+ Refactor the logs categories and use only one, enesim_renderer, for every function
+ Add a macro to print eina logs with the renderer name as first parameter
+ Define when to commit the state of a renderer to cleanup the changed flag
On some renderers it is done on the cleanup, on others in case the setup
fails. The change flag is either a change from the last draw (succesful setup), or a change
from the last setup (either sucess or failed).
+ In case of a bounds with 0 width or height, the draw is still called
+ Pass the surface when checking for bounds, this allows to know what renderer to use
on the destination surface
+ Remove the renderers on the stripes
+ Remove the warnings
+ Add log levels on every subsystem/renderer
+ Make use of the flags on the surface draw function
+ We need to get rid of the hypot function, it is used on a lot places
but with f16p16 values
+ We need to use the real types on the rendering functions
+ We need to simplify the real rendering functions into its own
c file with its own struct, this way in the future we can reuse the
algorithm for other backends
+ We need to use whenever possible functions for fixed point operations. This way later we can just
create some #defines for them and we can easily change from 16.16 to 32.32 or stuff like that
+ Implement a state full matrix transformation like OpenGL matrix handling
+ Implement an API similar to cairo's API, i.e drawing operators like PostScript
+ Add a registry system for the compiled OpenCL code
+ Only draw the area, not the whole surface
Image
=====
+ Remove the mime parameter, we can autodetect it when loading