FreeRDP
|
#include <winpr/assert.h>
#include <winpr/memory.h>
#include <freerdp/log.h>
#include <freerdp/codec/region.h>
Macros | |
#define | TAG FREERDP_TAG("codec") |
Variables | |
static REGION16_DATA | empty_region = { 0, 0 } |
#define TAG FREERDP_TAG("codec") |
FreeRDP: A Remote Desktop Protocol Implementation
Copyright 2014 Thincast Technologies GmbH Copyright 2014 Hardening conta Copyright 2017 Armin Novak ct@h arden ing- consu ltin g.comarmin Copyright 2017 Thincast Technologies GmbH .nov ak@th inca st.co m
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
|
static |
|
static |
|
static |
|
static |
compute if the rectangle is fully included in the band
band | a pointer on the beginning of the band |
endPtr | end of the region |
rect | the rectangle to test |
BOOL rectangle_is_empty | ( | const RECTANGLE_16 * | rect | ) |
returns if the rectangle is empty
rect | the rectangle to check |
BOOL rectangles_equal | ( | const RECTANGLE_16 * | r1, |
const RECTANGLE_16 * | r2 | ||
) |
computes if two rectangles are equal
r1 | first rectangle |
r2 | second rectangle |
BOOL rectangles_intersection | ( | const RECTANGLE_16 * | r1, |
const RECTANGLE_16 * | r2, | ||
RECTANGLE_16 * | dst | ||
) |
computes the intersection of two rectangles
r1 | first rectangle |
r2 | second rectangle |
dst | resulting intersection |
BOOL rectangles_intersects | ( | const RECTANGLE_16 * | r1, |
const RECTANGLE_16 * | r2 | ||
) |
computes if two rectangles intersect
r1 | first rectangle |
r2 | second rectangle |
void region16_clear | ( | REGION16 * | region | ) |
clears the region, the region is reset to a (0,0,0,0) region
region | the region to clear |
copies the region to another region
dst | destination region |
src | source region |
|
static |
const RECTANGLE_16* region16_extents | ( | const REGION16 * | region | ) |
|
static |
void region16_init | ( | REGION16 * | region | ) |
initialize a region16
region | the region to initialise |
BOOL region16_intersect_rect | ( | REGION16 * | dst, |
const REGION16 * | src, | ||
const RECTANGLE_16 * | arg2 | ||
) |
computes the intersection between a region and a rectangle
dst | destination region |
src | the source region |
arg2 | the rectangle that intersects |
BOOL region16_intersects_rect | ( | const REGION16 * | src, |
const RECTANGLE_16 * | arg2 | ||
) |
returns if a rectangle intersects the region
src | the region |
arg2 | the rectangle |
BOOL region16_is_empty | ( | const REGION16 * | region | ) |
returns if the region is empty
region | the region to check |
int region16_n_rects | ( | const REGION16 * | region | ) |
void region16_print | ( | const REGION16 * | region | ) |
dumps the region on stderr
region | the region to dump |
const RECTANGLE_16* region16_rects | ( | const REGION16 * | region, |
UINT32 * | nbRects | ||
) |
returns a pointer to rectangles and the number of rectangles in this region. nbRects can be set to NULL if not interested in the number of rectangles.
region | the input region |
nbRects | if non-NULL returns the number of rectangles |
|
static |
|
static |
Simplify consecutive bands that touch and have the same items
==================== ==================== | 1 | | 2 | | | | | ==================== | | | | | 1 | | 2 | ====> | 1 | | 2 | ==================== | | | | | 1 | | 2 | | | | | ==================== ====================
void region16_uninit | ( | REGION16 * | region | ) |
release internal data associated with this region
region | the region to release |
BOOL region16_union_rect | ( | REGION16 * | dst, |
const REGION16 * | src, | ||
const RECTANGLE_16 * | rect | ||
) |
adds a rectangle in src and stores the resulting region in dst
dst | destination region |
src | source region |
rect | the rectangle to add |
|
static |