FreeRDP
cache/bitmap.c File Reference
#include <freerdp/config.h>
#include <stdio.h>
#include <winpr/crt.h>
#include <winpr/assert.h>
#include <freerdp/freerdp.h>
#include <freerdp/constants.h>
#include <winpr/stream.h>
#include <freerdp/log.h>
#include <freerdp/cache/bitmap.h>
#include <freerdp/gdi/bitmap.h>
#include "../gdi/gdi.h"
#include "../core/graphics.h"
#include "bitmap.h"

Macros

#define TAG   FREERDP_TAG("cache.bitmap")
 

Functions

static rdpBitmap * bitmap_cache_get (rdpBitmapCache *bitmapCache, UINT32 id, UINT32 index)
 
static BOOL bitmap_cache_put (rdpBitmapCache *bitmap_cache, UINT32 id, UINT32 index, rdpBitmap *bitmap)
 
static BOOL update_gdi_memblt (rdpContext *context, MEMBLT_ORDER *memblt)
 
static BOOL update_gdi_mem3blt (rdpContext *context, MEM3BLT_ORDER *mem3blt)
 
static BOOL update_gdi_cache_bitmap (rdpContext *context, const CACHE_BITMAP_ORDER *cacheBitmap)
 
static BOOL update_gdi_cache_bitmap_v2 (rdpContext *context, CACHE_BITMAP_V2_ORDER *cacheBitmapV2)
 
static BOOL update_gdi_cache_bitmap_v3 (rdpContext *context, CACHE_BITMAP_V3_ORDER *cacheBitmapV3)
 
void bitmap_cache_register_callbacks (rdpUpdate *update)
 
rdpBitmapCachebitmap_cache_new (rdpContext *context)
 
void bitmap_cache_free (rdpBitmapCache *bitmapCache)
 
static void free_bitmap_data (BITMAP_DATA *data, size_t count)
 
static BITMAP_DATAcopy_bitmap_data (const BITMAP_DATA *data, size_t count)
 
void free_bitmap_update (rdpContext *context, BITMAP_UPDATE *pointer)
 
BITMAP_UPDATEcopy_bitmap_update (rdpContext *context, const BITMAP_UPDATE *pointer)
 
CACHE_BITMAP_ORDERcopy_cache_bitmap_order (rdpContext *context, const CACHE_BITMAP_ORDER *order)
 
void free_cache_bitmap_order (rdpContext *context, CACHE_BITMAP_ORDER *order)
 
CACHE_BITMAP_V2_ORDERcopy_cache_bitmap_v2_order (rdpContext *context, const CACHE_BITMAP_V2_ORDER *order)
 
void free_cache_bitmap_v2_order (rdpContext *context, CACHE_BITMAP_V2_ORDER *order)
 
CACHE_BITMAP_V3_ORDERcopy_cache_bitmap_v3_order (rdpContext *context, const CACHE_BITMAP_V3_ORDER *order)
 
void free_cache_bitmap_v3_order (rdpContext *context, CACHE_BITMAP_V3_ORDER *order)
 

Macro Definition Documentation

◆ TAG

#define TAG   FREERDP_TAG("cache.bitmap")

FreeRDP: A Remote Desktop Protocol Implementation Bitmap Cache V2

Copyright 2011 Marc-Andre Moreau marca.nosp@m.ndre.nosp@m..more.nosp@m.au@g.nosp@m.mail..nosp@m.com

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.

Function Documentation

◆ bitmap_cache_free()

void bitmap_cache_free ( rdpBitmapCache bitmapCache)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ bitmap_cache_get()

rdpBitmap * bitmap_cache_get ( rdpBitmapCache bitmapCache,
UINT32  id,
UINT32  index 
)
static
Here is the caller graph for this function:

◆ bitmap_cache_new()

rdpBitmapCache* bitmap_cache_new ( rdpContext *  context)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ bitmap_cache_put()

BOOL bitmap_cache_put ( rdpBitmapCache bitmap_cache,
UINT32  id,
UINT32  index,
rdpBitmap *  bitmap 
)
static
Here is the caller graph for this function:

◆ bitmap_cache_register_callbacks()

void bitmap_cache_register_callbacks ( rdpUpdate *  update)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ copy_bitmap_data()

static BITMAP_DATA* copy_bitmap_data ( const BITMAP_DATA data,
size_t  count 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ copy_bitmap_update()

BITMAP_UPDATE* copy_bitmap_update ( rdpContext *  context,
const BITMAP_UPDATE pointer 
)

FreeRDP: A Remote Desktop Protocol Implementation

Copyright 2018 Armin Novak armin.nosp@m..nov.nosp@m.ak@th.nosp@m.inca.nosp@m.st.co.nosp@m.m Copyright 2018 Thincast Technologies GmbH

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.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ copy_cache_bitmap_order()

CACHE_BITMAP_ORDER* copy_cache_bitmap_order ( rdpContext *  context,
const CACHE_BITMAP_ORDER order 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ copy_cache_bitmap_v2_order()

CACHE_BITMAP_V2_ORDER* copy_cache_bitmap_v2_order ( rdpContext *  context,
const CACHE_BITMAP_V2_ORDER order 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ copy_cache_bitmap_v3_order()

CACHE_BITMAP_V3_ORDER* copy_cache_bitmap_v3_order ( rdpContext *  context,
const CACHE_BITMAP_V3_ORDER order 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ free_bitmap_data()

static void free_bitmap_data ( BITMAP_DATA data,
size_t  count 
)
static
Here is the caller graph for this function:

◆ free_bitmap_update()

void free_bitmap_update ( rdpContext *  context,
BITMAP_UPDATE pointer 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ free_cache_bitmap_order()

void free_cache_bitmap_order ( rdpContext *  context,
CACHE_BITMAP_ORDER order 
)
Here is the caller graph for this function:

◆ free_cache_bitmap_v2_order()

void free_cache_bitmap_v2_order ( rdpContext *  context,
CACHE_BITMAP_V2_ORDER order 
)
Here is the caller graph for this function:

◆ free_cache_bitmap_v3_order()

void free_cache_bitmap_v3_order ( rdpContext *  context,
CACHE_BITMAP_V3_ORDER order 
)
Here is the caller graph for this function:

◆ update_gdi_cache_bitmap()

static BOOL update_gdi_cache_bitmap ( rdpContext *  context,
const CACHE_BITMAP_ORDER cacheBitmap 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ update_gdi_cache_bitmap_v2()

static BOOL update_gdi_cache_bitmap_v2 ( rdpContext *  context,
CACHE_BITMAP_V2_ORDER cacheBitmapV2 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ update_gdi_cache_bitmap_v3()

static BOOL update_gdi_cache_bitmap_v3 ( rdpContext *  context,
CACHE_BITMAP_V3_ORDER cacheBitmapV3 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ update_gdi_mem3blt()

static BOOL update_gdi_mem3blt ( rdpContext *  context,
MEM3BLT_ORDER mem3blt 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ update_gdi_memblt()

static BOOL update_gdi_memblt ( rdpContext *  context,
MEMBLT_ORDER memblt 
)
static
Here is the call graph for this function:
Here is the caller graph for this function: