# Data Structures

Here are the data structures with brief descriptions:

hpgs_bbox_st | A bounding box
hpgs_bezier_length_st | A structure for holding intermediate values for length calculations of a bezier spline
hpgs_color_st | An application level RGB color
hpgs_device_st | A virtual vector graphics device for the HPGL reader
hpgs_device_vtable_st | A table of virtual function implementing `hpgs_device`
hpgs_eps_device_st | A vector graphics device for drawing to an eps file
hpgs_font_dentry_st | A truetype font directory entry
hpgs_font_header_st | A truetype font header
hpgs_font_kern_pair_st | A ttf kerning pair
hpgs_font_st | A truetype font
hpgs_gstate_st | The vector graphics state
hpgs_image_st | An abstract pixel image
hpgs_image_vtable_st | A table of virtual function implementing `hpgs_image`
hpgs_istream_st | A virtual input stream for the HPGL reader
hpgs_istream_vtable_st | A table of virtual function implementing `hpgs_istream`
hpgs_matrix_st | A transformation matrix for 2D points
hpgs_ostream_st | A virtual output stream for the HPGL reader
hpgs_ostream_vtable_st | A table of virtual function implementing `hpgs_istream`
hpgs_paint_clipper_st | A collection of scanlines for mapping paths onto images
hpgs_paint_color_st | An image RGB color with an optional palette index
hpgs_paint_device_st | The pixel rendering vector graphics device
hpgs_paint_path_st | A stored vector path
hpgs_paint_scanline_st | A scanline of the pixel renderer
hpgs_palette_color_st | A screen RGB color as stored in a palette
hpgs_path_point_st | A point in a stored path
hpgs_plotsize_device_st | A vector graphics device for plotsize calculating
hpgs_point_st | A 2D point
hpgs_ps_media_size_st | A structure for storing a paper size
hpgs_reader_pcl_palette_st | A PCL palette as used by PCL push/pop palette
hpgs_reader_poly_point_st | A point in hte HPGL polygon buffer
hpgs_reader_st | A HPGL interpreter
hpgs_scanline_point_st | An intersection point of a path with a scanline