cscg24-guacamole

CSCG 2024 Challenge 'Guacamole Mashup'
git clone https://git.sinitax.com/sinitax/cscg24-guacamole
Log | Files | Refs | sfeed.txt

palette.h (1583B)


      1/**
      2 * FreeRDP: A Remote Desktop Protocol Implementation
      3 * Palette (Color Table) Cache
      4 *
      5 * Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
      6 *
      7 * Licensed under the Apache License, Version 2.0 (the "License");
      8 * you may not use this file except in compliance with the License.
      9 * You may obtain a copy of the License at
     10 *
     11 *     http://www.apache.org/licenses/LICENSE-2.0
     12 *
     13 * Unless required by applicable law or agreed to in writing, software
     14 * distributed under the License is distributed on an "AS IS" BASIS,
     15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     16 * See the License for the specific language governing permissions and
     17 * limitations under the License.
     18 */
     19
     20#ifndef FREERDP_PALETTE_CACHE_H
     21#define FREERDP_PALETTE_CACHE_H
     22
     23#include <freerdp/api.h>
     24#include <freerdp/types.h>
     25#include <freerdp/update.h>
     26#include <freerdp/freerdp.h>
     27
     28#include <winpr/stream.h>
     29
     30typedef struct _PALETTE_TABLE_ENTRY PALETTE_TABLE_ENTRY;
     31typedef struct rdp_palette_cache rdpPaletteCache;
     32
     33#include <freerdp/cache/cache.h>
     34
     35struct _PALETTE_TABLE_ENTRY
     36{
     37	void* entry;
     38};
     39
     40struct rdp_palette_cache
     41{
     42	UINT32 maxEntries;            /* 0 */
     43	PALETTE_TABLE_ENTRY* entries; /* 1 */
     44
     45	/* internal */
     46
     47	rdpSettings* settings;
     48};
     49
     50#ifdef __cplusplus
     51extern "C"
     52{
     53#endif
     54
     55	FREERDP_API void palette_cache_register_callbacks(rdpUpdate* update);
     56
     57	FREERDP_API rdpPaletteCache* palette_cache_new(rdpSettings* settings);
     58	FREERDP_API void palette_cache_free(rdpPaletteCache* palette_cache);
     59
     60#ifdef __cplusplus
     61}
     62#endif
     63
     64#endif /* FREERDP_PALETTE_CACHE_H */