|
PatchworkOS
|
#include "screen.h"#include "region.h"#include "surface.h"#include <errno.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/fb.h>#include <sys/io.h>#include <sys/proc.h>Go to the source code of this file.
Functions | |
| static void | frontbuffer_init (void) |
| static void | backbuffer_init (void) |
| static void | screen_invalidate (const rect_t *rect) |
| void | screen_init (void) |
| void | screen_deinit (void) |
| void | screen_transfer (surface_t *surface, const rect_t *rect) |
| void | screen_transfer_blend (surface_t *surface, const rect_t *rect) |
| void | screen_transfer_frontbuffer (surface_t *surface, const rect_t *rect) |
| void | screen_swap (void) |
| uint64_t | screen_width (void) |
| uint64_t | screen_height (void) |
| void | screen_rect (rect_t *rect) |
Variables | |
| static fb_info_t | info |
| static void * | frontbuffer |
| static void * | backbuffer |
| static rect_t | screenRect |
| static region_t | invalidRegion |
|
static |
Definition at line 62 of file screen.c.
References abort(), backbuffer, fb_info_t::height, info, malloc(), NULL, printf(), and fb_info_t::stride.
Referenced by screen_init().
|
static |
Definition at line 21 of file screen.c.
References abort(), close(), ERR, errno, FB_ARGB32, fb_info_t::format, frontbuffer, fb_info_t::height, info, memset(), mmap(), fb_info_t::name, NULL, open(), printf(), PROT_READ, PROT_WRITE, readfile(), strerror(), fb_info_t::stride, and fb_info_t::width.
Referenced by screen_init().
| void screen_deinit | ( | void | ) |
Definition at line 87 of file screen.c.
References backbuffer, free(), frontbuffer, fb_info_t::height, info, munmap(), and fb_info_t::stride.
Referenced by main().
| uint64_t screen_height | ( | void | ) |
Definition at line 199 of file screen.c.
References fb_info_t::height, and info.
Referenced by client_action_screen_info(), compositor_init(), and dwm_handle_mouse_event().
| void screen_init | ( | void | ) |
Definition at line 79 of file screen.c.
References backbuffer_init(), frontbuffer_init(), fb_info_t::height, info, invalidRegion, RECT_INIT_DIM, region_init(), screenRect, and fb_info_t::width.
Referenced by main().
|
static |
Definition at line 72 of file screen.c.
References invalidRegion, RECT_FIT, region_add(), and screenRect.
Referenced by screen_transfer(), and screen_transfer_blend().
| void screen_rect | ( | rect_t * | rect | ) |
Definition at line 204 of file screen.c.
References screenRect.
| void screen_swap | ( | void | ) |
Definition at line 166 of file screen.c.
References abort(), backbuffer, region_t::count, FB_ARGB32, fb_info_t::format, frontbuffer, info, invalidRegion, rect_t::left, memcpy(), printf(), RECT_HEIGHT, RECT_WIDTH, region_t::rects, region_clear(), fb_info_t::stride, rect_t::top, and y.
Referenced by compositor_draw().
Definition at line 93 of file screen.c.
References backbuffer, surface_t::buffer, info, rect_t::left, MAX, memcpy(), surface_t::pos, RECT_FIT, RECT_HEIGHT, RECT_WIDTH, screen_invalidate(), screenRect, fb_info_t::stride, rect_t::top, surface_t::width, point_t::x, point_t::y, and y.
Referenced by compositor_draw_surface().
Definition at line 112 of file screen.c.
References backbuffer, surface_t::buffer, info, rect_t::left, MAX, PIXEL_BLEND, surface_t::pos, RECT_FIT, RECT_HEIGHT, RECT_WIDTH, screen_invalidate(), screenRect, fb_info_t::stride, rect_t::top, surface_t::width, point_t::x, x, point_t::y, and y.
Referenced by compositor_draw_all().
Definition at line 135 of file screen.c.
References abort(), surface_t::buffer, FB_ARGB32, fb_info_t::format, frontbuffer, info, invalidRegion, rect_t::left, MAX, memcpy(), surface_t::pos, printf(), RECT_FIT, RECT_HEIGHT, RECT_WIDTH, region_clear(), screenRect, fb_info_t::stride, rect_t::top, surface_t::width, point_t::x, point_t::y, and y.
Referenced by compositor_draw_fullscreen().
| uint64_t screen_width | ( | void | ) |
Definition at line 194 of file screen.c.
References info, and fb_info_t::width.
Referenced by client_action_screen_info(), compositor_init(), and dwm_handle_mouse_event().
|
static |
Definition at line 16 of file screen.c.
Referenced by backbuffer_init(), screen_deinit(), screen_swap(), screen_transfer(), and screen_transfer_blend().
|
static |
Definition at line 15 of file screen.c.
Referenced by frontbuffer_init(), screen_deinit(), screen_swap(), and screen_transfer_frontbuffer().
|
static |
Definition at line 14 of file screen.c.
Referenced by backbuffer_init(), frontbuffer_init(), screen_deinit(), screen_height(), screen_init(), screen_swap(), screen_transfer(), screen_transfer_blend(), screen_transfer_frontbuffer(), and screen_width().
|
static |
Definition at line 19 of file screen.c.
Referenced by screen_init(), screen_invalidate(), screen_swap(), and screen_transfer_frontbuffer().
|
static |
Definition at line 18 of file screen.c.
Referenced by screen_init(), screen_invalidate(), screen_rect(), screen_transfer(), screen_transfer_blend(), and screen_transfer_frontbuffer().