blob: 94f9128841a406fe052bfb363a1418781eef458b [file] [log] [blame]
Allan MacKinnon4359d522018-06-19 13:57:04 -07001/*
2 * Copyright 2017 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can
5 * be found in the LICENSE file.
6 *
7 */
8
9#pragma once
10
11//
12//
13//
14
15#include "skc.h"
16#include "assert_state.h"
17
18//
19// SURFACE
20//
21
22struct skc_surface
23{
24 struct skc_context * context;
25 struct skc_surface_impl * impl;
26
27 skc_int ref_count;
28
Allan MacKinnonebf160f2018-06-24 08:31:14 -070029 void (* release)(struct skc_surface_impl * const impl);
Allan MacKinnon4359d522018-06-19 13:57:04 -070030
Allan MacKinnonebf160f2018-06-24 08:31:14 -070031 void (* render )(struct skc_surface_impl * const impl,
32 skc_styling_t styling,
33 skc_composition_t composition,
34 skc_framebuffer_t fb,
35 uint32_t const clip[4],
36 skc_surface_render_notify notify,
37 void * data);
Allan MacKinnon4359d522018-06-19 13:57:04 -070038};
39
40//
41//
42//