FreeRDP
Loading...
Searching...
No Matches
codec/region.h
1
24#ifndef FREERDP_CODEC_REGION_H
25#define FREERDP_CODEC_REGION_H
26
27#include <freerdp/api.h>
28#include <freerdp/types.h>
29
30#ifdef __cplusplus
31extern "C"
32{
33#endif
34
35 typedef struct S_REGION16_DATA REGION16_DATA;
36
37 typedef struct
38 {
39 RECTANGLE_16 extents;
40 REGION16_DATA* data;
41 } REGION16;
42
48 FREERDP_API BOOL rectangles_equal(const RECTANGLE_16* r1, const RECTANGLE_16* r2);
49
55 FREERDP_API BOOL rectangles_intersects(const RECTANGLE_16* r1, const RECTANGLE_16* r2);
56
63 FREERDP_API BOOL rectangles_intersection(const RECTANGLE_16* r1, const RECTANGLE_16* r2,
64 RECTANGLE_16* dst);
65
69 FREERDP_API void region16_init(REGION16* region);
70
72 FREERDP_API int region16_n_rects(const REGION16* region);
73
80 FREERDP_API const RECTANGLE_16* region16_rects(const REGION16* region, UINT32* nbRects);
81
83 FREERDP_API const RECTANGLE_16* region16_extents(const REGION16* region);
84
89 FREERDP_API BOOL rectangle_is_empty(const RECTANGLE_16* rect);
90
95 FREERDP_API BOOL region16_is_empty(const REGION16* region);
96
100 FREERDP_API void region16_clear(REGION16* region);
101
105 FREERDP_API void region16_print(const REGION16* region);
106
112 FREERDP_API BOOL region16_copy(REGION16* dst, const REGION16* src);
113
120 FREERDP_API BOOL region16_union_rect(REGION16* dst, const REGION16* src,
121 const RECTANGLE_16* rect);
122
128 FREERDP_API BOOL region16_intersects_rect(const REGION16* src, const RECTANGLE_16* arg2);
129
136 FREERDP_API BOOL region16_intersect_rect(REGION16* dst, const REGION16* src,
137 const RECTANGLE_16* arg2);
138
142 FREERDP_API void region16_uninit(REGION16* region);
143
144#ifdef __cplusplus
145}
146#endif
147
148#endif /* FREERDP_CODEC_REGION_H */