diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 03:13:10 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 03:13:10 +0000 |
commit | 3c57dd931145d43f2b0aef96c4d178135956bf91 (patch) | |
tree | 3de698981e9f0cc2c4f9569b19a5f3595e741f6b /devel-docs/gegl-porting-plan.txt | |
parent | Initial commit. (diff) | |
download | gimp-3c57dd931145d43f2b0aef96c4d178135956bf91.tar.xz gimp-3c57dd931145d43f2b0aef96c4d178135956bf91.zip |
Adding upstream version 2.10.36.upstream/2.10.36
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'devel-docs/gegl-porting-plan.txt')
-rw-r--r-- | devel-docs/gegl-porting-plan.txt | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/devel-docs/gegl-porting-plan.txt b/devel-docs/gegl-porting-plan.txt new file mode 100644 index 0000000..cfc5220 --- /dev/null +++ b/devel-docs/gegl-porting-plan.txt @@ -0,0 +1,39 @@ +GEGL Porting Plan +================= + +This file describes a detailed plan for how we will integrate GEGL +into GIMP. Please update it with your own ideas and findings. + +Porting GIMP to GEGL will be a multi-stage process. On a high level, +the stages are: + +Stages: +======= + + 1. Implement GIMP's 8 bpc code with GEGL data structures + 2. Gradually port GIMP's 8 bpc code to 32 bpc + 3. Once the GIMP base layer (almost) only knows 32 bpc and GEGL, add + goodies like adjustment layers and layer effects on top + + +First stage: +------------ + + 1. Kill Tile and TileManager + 2. Change PixelRegion::tiles : TileManager * to PixelRegion::gegl_buffer : GeglBuffer * + 3. Map PixelRegion::gegl_buffer of type RGBA float to PixelRegion::data of type RGBA u8 + 4. Implement functions like scale_region() with GEGL (for the + gegl_buffer case. For the data case, we can keep the old code) + 5. ??? + + +Second stage: +------------- + + 1. ??? + + +Third stage: +------------ + + 1. ??? |