aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/compute/skc/skc_types.h
blob: c0b1dc97e1dc461be1b8fe0603659e94c3a7b2f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/*
 * Copyright 2018 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can
 * be found in the LICENSE file.
 *
 */

#ifndef SKC_ONCE_SKC_TYPES
#define SKC_ONCE_SKC_TYPES

//
//
//

#include <stdint.h>
#include <stdbool.h>

//
//
//

typedef struct skc_context        * skc_context_t;
typedef struct skc_path_builder   * skc_path_builder_t;
typedef struct skc_raster_builder * skc_raster_builder_t;

typedef struct skc_composition    * skc_composition_t;
typedef struct skc_styling        * skc_styling_t;

typedef struct skc_surface        * skc_surface_t;

typedef        uint32_t             skc_path_t;
typedef        uint32_t             skc_raster_t;

typedef        uint32_t             skc_layer_id;
typedef        uint32_t             skc_group_id;

typedef        uint32_t             skc_styling_cmd_t;

typedef        uint64_t             skc_weakref_t;
typedef        skc_weakref_t        skc_transform_weakref_t;
typedef        skc_weakref_t        skc_raster_clip_weakref_t;

typedef        void               * skc_framebuffer_t;

//
//
//

#define SKC_PATH_INVALID     UINT32_MAX
#define SKC_RASTER_INVALID   UINT32_MAX
#define SKC_WEAKREF_INVALID  UINT64_MAX

//
// TRANSFORM LAYOUT: { sx shx tx shy sy ty w0 w1 }
//

//
// RASTER CLIP LAYOUT: { x0, y0, x1, y1 }
//

#endif

//
//
//