w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

pixman-edge.c File Reference
#include <string.h>
#include "pixman-private.h"
#include "pixman-accessor.h"
#include "pixman-edge-imp.h"
Include dependency graph for pixman-edge.c:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define RENDER_EDGE_STEP_SMALL(edge)
 
#define RENDER_EDGE_STEP_BIG(edge)
 
#define PIXMAN_RASTERIZE_EDGES   pixman_rasterize_edges_accessors
 
#define N_BITS   4
 
#define RASTERIZE_EDGES   rasterize_edges_4
 
#define SHIFT_4(o)   ((o) << 2)
 
#define GET_4(x, o)   (((x) >> SHIFT_4 (o)) & 0xf)
 
#define PUT_4(x, o, v)    (((x) & ~(0xf << SHIFT_4 (o))) | (((v) & 0xf) << SHIFT_4 (o)))
 
#define DEFINE_ALPHA(line, x)
 
#define STEP_ALPHA   ((__ap += __ao), (__ao ^= 1))
 
#define ADD_ALPHA(a)
 
#define N_BITS   1
 
#define RASTERIZE_EDGES   rasterize_edges_1
 
#define ADD_SATURATE_8(buf, val, length)
 

Functions

static uint8_t clip255 (int x)
 
static void rasterize_edges_8 (pixman_image_t *image, pixman_edge_t *l, pixman_edge_t *r, pixman_fixed_t t, pixman_fixed_t b)
 
void pixman_rasterize_edges_accessors (pixman_image_t *image, pixman_edge_t *l, pixman_edge_t *r, pixman_fixed_t t, pixman_fixed_t b)
 

Macro Definition Documentation

◆ ADD_ALPHA

#define ADD_ALPHA (   a)
Value:
{ \
uint8_t __o = READ (image, __ap); \
uint8_t __a = (a) + GET_4 (__o, __ao); \
WRITE (image, __ap, PUT_4 (__o, __ao, __a | (0 - ((__a) >> 4)))); \
}
#define a(n)
Definition: gpos-common.c:148
#define READ
Definition: config.h:50
#define PUT_4(x, o, v)
Definition: pixman-edge.c:80
#define GET_4(x, o)
Definition: pixman-edge.c:79
UWtype __a
Definition: sec_div.c:82
Definition: sd.h:76

Definition at line 89 of file pixman-edge.c.

◆ ADD_SATURATE_8

#define ADD_SATURATE_8 (   buf,
  val,
  length 
)
Value:
do \
{ \
int i__ = (length); \
uint8_t *buf__ = (buf); \
int val__ = (val); \
while (i__--) \
{ \
WRITE (image, (buf__), clip255 (READ (image, (buf__)) + (val__))); \
(buf__)++; \
} \
} while (0)
#define buf
#define length(c)
Definition: ctangleboot.c:65
static uint8_t clip255(int x)
Definition: pixman-edge.c:122
while(temp)
Definition: t4ht.c:858
val
Definition: tex4ht.c:3227

Definition at line 130 of file pixman-edge.c.

◆ DEFINE_ALPHA

#define DEFINE_ALPHA (   line,
  x 
)
Value:
uint8_t *__ap = (uint8_t *) line + ((x) >> 1); \
int __ao = (x) & 1
unsigned char uint8_t
Definition: stdint.h:78
float x
Definition: cordic.py:15
Definition: bdf.c:133

Definition at line 83 of file pixman-edge.c.

◆ GET_4

#define GET_4 (   x,
 
)    (((x) >> SHIFT_4 (o)) & 0xf)

Definition at line 79 of file pixman-edge.c.

◆ N_BITS [1/2]

#define N_BITS   4

Definition at line 109 of file pixman-edge.c.

◆ N_BITS [2/2]

#define N_BITS   1

Definition at line 109 of file pixman-edge.c.

◆ PIXMAN_RASTERIZE_EDGES

#define PIXMAN_RASTERIZE_EDGES   pixman_rasterize_edges_accessors

Definition at line 61 of file pixman-edge.c.

◆ PUT_4

#define PUT_4 (   x,
  o,
  v 
)     (((x) & ~(0xf << SHIFT_4 (o))) | (((v) & 0xf) << SHIFT_4 (o)))

Definition at line 80 of file pixman-edge.c.

◆ RASTERIZE_EDGES [1/2]

#define RASTERIZE_EDGES   rasterize_edges_4

Definition at line 110 of file pixman-edge.c.

◆ RASTERIZE_EDGES [2/2]

#define RASTERIZE_EDGES   rasterize_edges_1

Definition at line 110 of file pixman-edge.c.

◆ RENDER_EDGE_STEP_BIG

#define RENDER_EDGE_STEP_BIG (   edge)
Value:
{ \
edge->x += edge->stepx_big; \
edge->e += edge->dx_big; \
if (edge->e > 0) \
{ \
edge->e -= edge->dy; \
edge->x += edge->signdx; \
} \
}
cairo_fixed_t dy

Definition at line 49 of file pixman-edge.c.

◆ RENDER_EDGE_STEP_SMALL

#define RENDER_EDGE_STEP_SMALL (   edge)
Value:
{ \
edge->x += edge->stepx_small; \
edge->e += edge->dx_small; \
if (edge->e > 0) \
{ \
edge->e -= edge->dy; \
edge->x += edge->signdx; \
} \
}

Definition at line 35 of file pixman-edge.c.

◆ SHIFT_4

#define SHIFT_4 (   o)    ((o) << 2)

Definition at line 74 of file pixman-edge.c.

◆ STEP_ALPHA

#define STEP_ALPHA   ((__ap += __ao), (__ao ^= 1))

Definition at line 87 of file pixman-edge.c.

Function Documentation

◆ clip255()

static uint8_t clip255 ( int  x)
inlinestatic

Definition at line 122 of file pixman-edge.c.

References cordic::x.

Referenced by rasterize_edges_8().

◆ pixman_rasterize_edges_accessors()

void pixman_rasterize_edges_accessors ( pixman_image_t image,
pixman_edge_t l,
pixman_edge_t r,
pixman_fixed_t  t,
pixman_fixed_t  b 
)

Definition at line 342 of file pixman-edge.c.

References b, cutout::l, PIXMAN_FORMAT_BPP, r, and rasterize_edges_8().

◆ rasterize_edges_8()