blob: 116fc004b3c3d8cb3b8f811578ae970f7d2ddead [file] [log] [blame]
Ander Conselvan de Oliveira11f8d402012-10-29 18:19:24 +02001/*
2 * Copyright © 2012 Intel Corporation
3 *
4 * Permission to use, copy, modify, distribute, and sell this software and
5 * its documentation for any purpose is hereby granted without fee, provided
6 * that the above copyright notice appear in all copies and that both that
7 * copyright notice and this permission notice appear in supporting
8 * documentation, and that the name of the copyright holders not be used in
9 * advertising or publicity pertaining to distribution of the software
10 * without specific, written prior permission. The copyright holders make
11 * no representations about the suitability of this software for any
12 * purpose. It is provided "as is" without express or implied warranty.
13 *
14 * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
15 * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
16 * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
17 * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
18 * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
19 * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
20 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
21 */
22
23#define _GNU_SOURCE
24
25#include <stdlib.h>
26
27#include "compositor.h"
28
29static void
30noop_renderer_repaint_output(struct weston_output *output,
31 pixman_region32_t *output_damage)
32{
33}
34
35static void
36noop_renderer_flush_damage(struct weston_surface *surface)
37{
38}
39
40static void
41noop_renderer_attach(struct weston_surface *es, struct wl_buffer *buffer)
42{
43}
44
45static void
46noop_renderer_destroy_surface(struct weston_surface *surface)
47{
48}
49
50WL_EXPORT void
51noop_renderer_destroy(struct weston_compositor *ec)
52{
53 free(ec->renderer);
54 ec->renderer = NULL;
55}
56
57WL_EXPORT int
58noop_renderer_init(struct weston_compositor *ec)
59{
60 struct weston_renderer *renderer;
61 struct weston_output *output;
62
63 renderer = malloc(sizeof *renderer);
64 if (renderer == NULL)
65 return -1;
66
67 renderer->repaint_output = noop_renderer_repaint_output;
68 renderer->flush_damage = noop_renderer_flush_damage;
69 renderer->attach = noop_renderer_attach;
70 renderer->destroy_surface = noop_renderer_destroy_surface;
71 ec->renderer = renderer;
72
73 return 0;
74}