1 /* 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 22 struct skc_surface 23 { 24 struct skc_context * context; 25 struct skc_surface_impl * impl; 26 27 skc_int ref_count; 28 29 void (* release)(struct skc_surface_impl * const impl); 30 31 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 int32_t const txty[2], 37 skc_surface_render_notify notify, 38 void * data); 39 }; 40 41 // 42 // 43 // 44