EE445M RTOS
Taken at the University of Texas Spring 2015
framebuffer.c File Reference
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include "string.h"
#include "libstd/defines.h"
#include "framebuffer.h"
Include dependency graph for framebuffer.c:

Go to the source code of this file.

Macros

#define NDEBUG
 

Functions

framebuffer fb_init ()
 Create a framebuffer object and return the handle. More...
 
void fb_destroy (framebuffer fb)
 Destroy a framebuffer object. More...
 
void fb_draw_shape (framebuffer fb, shape *sh)
 Using as a canvas, draw . More...
 
private void _fb_draw_shape (framebuffer fb, shape *sh, shade_t shade)
 For internal use only. More...
 
void fb_draw_shapes (framebuffer fb, ushort numShapes,...)
 
void fb_draw_shape_arr (framebuffer fb, ushort numShapes, shape **shape_arr)
 
void fb_erase_shape_arr (framebuffer fb, ushort numShapes, shape **shape_arr)
 
void fb_set_pixel (framebuffer fb, uchar x, uchar y, shade_t shade)
 In fb, set pixel (x,y) to . More...
 
void fb_erase_char (framebuffer fb, point *top_left_corner, char c)
 Erase char on fb starting at top_left_corner. More...
 
private void _fb_draw_line (framebuffer fb, point *point1, point *point2, shade_t shade)
 The heavy-lifter (pixel-setter) in line-segment-drawing. More...
 
private void _fb_plot_four_ellipse_points (framebuffer fb, point *center, ushort x, ushort y)
 Plot on fb the four symmetric points on an ellipse described by a center and x- and y-offsets. More...
 
private void _fb_fill_four_ellipse_points (framebuffer fb, point *center, ushort x, ushort y)
 Fill an ellipse on fb. More...
 
void fb_draw_ellipse (framebuffer fb, point *center, ushort x_radius, ushort y_radius, shade_t shade)
 Draw an ellipse in fb at center with specified x- and y-radii of color shade. More...
 
void fb_draw_ellipse_fill (framebuffer fb, point *center, ushort x_radius, ushort y_radius, shade_t shade)
 Draw on fb a shaded ellipse described by center, x- and y-radii. More...
 
void fb_erase_string (framebuffer fb, point *top_left_corner, char *string)
 Erase string on fb starting at top_left_corner. More...
 
private void _fb_draw_string (framebuffer fb, point *top_left_corner, char *string)
 For internal use only. More...
 
private void _fb_draw_char (framebuffer fb, point *pen, char c)
 For internal use only. More...
 
void fb_console_println_point (point *p)
 Print a point (ordered pair) to the console followed by a newline. More...
 
void fb_console_print_point (point *p)
 Print a point (ordered pair) to the console. More...
 
void fb_console_println_coordinate (uchar x, uchar y, shade_t shade)
 Print a coordinate (ordered pair) to the console followed by a newline. More...
 
void fb_console_print_coordinate (uchar x, uchar y, shade_t shade)
 Print a coordinate (ordered pair) to the console. More...
 

Macro Definition Documentation

#define NDEBUG

Definition at line 9 of file framebuffer.c.