# hpgspaint.h File Reference

Internals of the pixel renderer. More...

`#include <hpgs.h>`

Go to the source code of this file.

## Data Structures
struct | hpgs_paint_device_st
| The pixel rendering vector graphics device. More...
struct | hpgs_bezier_length_st
| A structure for holding intermediate values for length calculations of a bezier spline. More...
struct | hpgs_scanline_point_st
| An intersection point of a path with a scanline. More...
struct | hpgs_paint_scanline_st
| A scanline of the pixel renderer. More...
struct | hpgs_paint_clipper_st
| A collection of scanlines for mapping paths onto images. More...
## Defines
#define | HPGS_PAINT_MAX_CLIP_DEPTH 16
#define | HPGS_BEZIER_NSEGS 16
## Typedefs
typedef struct hpgs_scanline_point_st | hpgs_scanline_point
typedef struct hpgs_paint_scanline_st | hpgs_paint_scanline
typedef struct hpgs_paint_clipper_st | hpgs_paint_clipper
typedef struct hpgs_bezier_length_st | hpgs_bezier_length
## Functions
HPGS_INTERNAL_API int | hpgs_paint_device_fill (hpgs_paint_device *pdv, hpgs_paint_path *path, hpgs_bool winding, hpgs_bool stroke)
HPGS_INTERNAL_API int | hpgs_paint_device_clip (hpgs_paint_device *pdv, hpgs_paint_path *path, hpgs_bool winding)
HPGS_INTERNAL_API int | hpgs_paint_device_drawimage (hpgs_paint_device *pdv, const hpgs_image *img, const hpgs_point *ll, const hpgs_point *lr, const hpgs_point *ur)
HPGS_INTERNAL_API void | hpgs_bezier_length_init (hpgs_bezier_length *b, const hpgs_paint_path *path, int i)
HPGS_INTERNAL_API double | hpgs_bezier_length_param (const hpgs_bezier_length *b, double l)
HPGS_INTERNAL_API hpgs_paint_clipper * | hpgs_new_paint_clipper (const hpgs_bbox *bb, int height, int scanline_msize, int overscan)
HPGS_INTERNAL_API hpgs_paint_clipper * | hpgs_paint_clipper_clip (const hpgs_paint_clipper *orig, const hpgs_paint_clipper *clip, hpgs_bool winding)
HPGS_INTERNAL_API int | hpgs_paint_clipper_cut (hpgs_paint_clipper *c, hpgs_paint_path *path)
HPGS_INTERNAL_API int | hpgs_paint_clipper_thin_cut (hpgs_paint_clipper *c, hpgs_paint_path *path, const hpgs_gstate *gstate)
HPGS_INTERNAL_API int | hpgs_paint_clipper_emit (hpgs_image *image, const hpgs_paint_clipper *img, const hpgs_paint_clipper *clip, const hpgs_paint_color *c, hpgs_bool winding, hpgs_bool stroke)
HPGS_INTERNAL_API int | hpgs_paint_clipper_reset (hpgs_paint_clipper *c, double llx, double urx)
HPGS_INTERNAL_API void | hpgs_paint_clipper_clear (hpgs_paint_clipper *c)
HPGS_INTERNAL_API void | hpgs_paint_clipper_destroy (hpgs_paint_clipper *c)

## Detailed Description

Internals of the pixel renderer.

A header file, which declares the structures and functions internally used by `hpgs_paint_device`.