|
Krita Source Code Documentation
|
#include "xcftools.h"#include "flatten.h"#include "pixels.h"#include <string.h>#include <stdlib.h>#include <assert.h>Go to the source code of this file.
Classes | |
| struct | HSV |
Macros | |
| #define | exotic_combinator static inline unsigned __ATTRIBUTE__((const)) |
| #define | HEXTANT(b, m, t) |
| #define | HEXTANT(b, m, t) |
| #define | UNIFORM(mode) |
Functions | |
| static struct Tile * | __ATTRIBUTE__ ((noinline)) |
| static rgba | __ATTRIBUTE__ ((noinline, const)) |
| static int | addBackground (struct FlattenSpec *spec, struct Tile *tile, unsigned ncols) |
| static void | collector (unsigned num, rgba *row) |
| static void | dissolveTile (struct Tile *tile) |
| rgba ** | flattenAll (struct FlattenSpec *spec) |
| int | flattenIncrementally (struct FlattenSpec *spec, lineCallback callback) |
| static struct Tile * | flattenTopdown (struct FlattenSpec *spec, struct Tile *top, unsigned nlayers, const struct rect *where) |
| static void | RGBtoHSV (rgba rgb, struct HSV *hsv) |
| static void | roundAlpha (struct Tile *tile) |
| void | shipoutWithCallback (struct FlattenSpec *spec, rgba **pixels, lineCallback callback) |
| exotic_combinator | ucombine_ADDITION (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_BURN (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_DARKEN_ONLY (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_DIFFERENCE (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_DIVIDE (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_DODGE (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_GRAIN_EXTRACT (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_GRAIN_MERGE (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_HARDLIGHT (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_LIGHTEN_ONLY (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_MULTIPLY (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_OVERLAY (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_SCREEN (uint8_t bot, uint8_t top) |
| exotic_combinator | ucombine_SUBTRACT (uint8_t bot, uint8_t top) |
Variables | |
| static rgba ** | collectPointer |
| #define exotic_combinator static inline unsigned __ATTRIBUTE__((const)) |
| #define HEXTANT | ( | b, | |
| m, | |||
| t ) |
| #define HEXTANT | ( | b, | |
| m, | |||
| t ) |
| #define UNIFORM | ( | mode | ) |
|
static |
Definition at line 76 of file flatten.c.
References assertTileCompatibility, Tile::count, freeTile(), FULLALPHA, INIT_SCALETABLE_IF, invalidateSummary, NULLALPHA, Tile::pixels, Tile::summary, TILESUMMARY_ALLFULL, TILESUMMARY_ALLNULL, and TILESUMMARY_CRISP.
|
static |
Definition at line 26 of file flatten.c.
References ALPHA, ALPHA_SHIFT, BLUE_SHIFT, FULLALPHA, GREEN_SHIFT, RED_SHIFT, and scaletable.
|
static |
Definition at line 589 of file flatten.c.
References _, ALPHA_SHIFT, CHECKERED_BACKGROUND, Tile::count, FlattenSpec::default_pixel, dissolveTile(), FatalGeneric(), fillTile(), FULLALPHA, graytable, INIT_SCALETABLE_IF, NULLALPHA, FlattenSpec::partial_transparency_mode, Tile::pixels, Tile::summary, tileSummary(), TILESUMMARY_ALLFULL, TILESUMMARY_ALLNULL, TILESUMMARY_CRISP, TILESUMMARY_UPTODATE, XCF_ERROR, and XCF_OK.
Definition at line 704 of file flatten.c.
References collectPointer, and void().
Definition at line 433 of file flatten.c.
References ALPHA, ALPHA_SHIFT, Tile::count, FULLALPHA, NULLALPHA, Tile::pixels, Tile::refcount, Tile::summary, TILESUMMARY_ALLFULL, TILESUMMARY_ALLNULL, TILESUMMARY_CRISP, and TILESUMMARY_UPTODATE.
| rgba ** flattenAll | ( | struct FlattenSpec * | spec | ) |
Definition at line 711 of file flatten.c.
References _, collector(), collectPointer, FlattenSpec::dim, flattenIncrementally(), tileDimensions::height, verboseFlag, XCF_OK, XCF_PTR_EMPTY, xcffree(), and xcfmalloc().
| int flattenIncrementally | ( | struct FlattenSpec * | spec, |
| lineCallback | callback ) |
Definition at line 646 of file flatten.c.
References addBackground(), rect::b, tileDimensions::c, Tile::count, FlattenSpec::dim, fillTile(), flattenTopdown(), freeTile(), rect::l, NULLALPHA, FlattenSpec::numLayers, Tile::pixels, rect::r, Tile::refcount, Tile::summary, rect::t, TILE_HEIGHT, TILE_LEFT, TILE_TOP, TILE_WIDTH, TILESUMMARY_ALLNULL, TILESUMMARY_CRISP, TILESUMMARY_UPTODATE, tileDimensions::width, XCF_ERROR, XCF_OK, XCF_PTR_EMPTY, and xcfmalloc().
|
static |
Definition at line 484 of file flatten.c.
References ALPHA, Tile::count, dissolveTile(), flattenTopdown(), forkTile(), freeTile(), FULLALPHA, getLayerTile(), GIMP_DISSOLVE_MODE, GIMP_NORMAL_MODE, GIMP_NORMAL_NOPARTIAL_MODE, invalidateSummary, xcfLayer::isVisible, FlattenSpec::layers, xcfLayer::mode, newTile(), Tile::pixels, Tile::refcount, roundAlpha(), Tile::summary, tileSummary(), TILESUMMARY_ALLFULL, TILESUMMARY_ALLNULL, TILESUMMARY_CRISP, TILESUMMARY_UPTODATE, XCF_OK, and XCF_PTR_EMPTY.
Definition at line 236 of file flatten.c.
References BLUE_SHIFT, GREEN_SHIFT, HEXTANT, and RED_SHIFT.
Definition at line 459 of file flatten.c.
References ALPHA, ALPHA_SHIFT, Tile::count, Tile::pixels, Tile::refcount, Tile::summary, TILESUMMARY_ALLFULL, TILESUMMARY_ALLNULL, TILESUMMARY_CRISP, and TILESUMMARY_UPTODATE.
| void shipoutWithCallback | ( | struct FlattenSpec * | spec, |
| rgba ** | pixels, | ||
| lineCallback | callback ) |
Definition at line 728 of file flatten.c.
References FlattenSpec::dim, tileDimensions::height, Tile::pixels, tileDimensions::width, and xcffree().
| exotic_combinator ucombine_ADDITION | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_BURN | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_DARKEN_ONLY | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_DIFFERENCE | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_DIVIDE | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_DODGE | ( | uint8_t | bot, |
| uint8_t | top ) |
Definition at line 192 of file flatten.c.
References ucombine_DIVIDE().
| exotic_combinator ucombine_GRAIN_EXTRACT | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_GRAIN_MERGE | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_HARDLIGHT | ( | uint8_t | bot, |
| uint8_t | top ) |
Definition at line 204 of file flatten.c.
References scaletable.
| exotic_combinator ucombine_LIGHTEN_ONLY | ( | uint8_t | bot, |
| uint8_t | top ) |
| exotic_combinator ucombine_MULTIPLY | ( | uint8_t | bot, |
| uint8_t | top ) |
Definition at line 157 of file flatten.c.
References scaletable.
| exotic_combinator ucombine_OVERLAY | ( | uint8_t | bot, |
| uint8_t | top ) |
Definition at line 177 of file flatten.c.
References scaletable.
| exotic_combinator ucombine_SCREEN | ( | uint8_t | bot, |
| uint8_t | top ) |
Definition at line 170 of file flatten.c.
References scaletable.
| exotic_combinator ucombine_SUBTRACT | ( | uint8_t | bot, |
| uint8_t | top ) |