FreeRDP
rfx.h File Reference
#include <freerdp/api.h>
#include <freerdp/types.h>
#include <freerdp/constants.h>
#include <freerdp/codec/region.h>
#include <winpr/stream.h>
This graph shows which files directly or indirectly include this file:

Data Structures

struct  RFX_RECT
 
struct  RFX_TILE
 

Enumerations

enum  RLGR_MODE { RLGR1 , RLGR3 }
 

Functions

FREERDP_API BOOL rfx_process_message (RFX_CONTEXT *context, const BYTE *data, UINT32 length, UINT32 left, UINT32 top, BYTE *dst, UINT32 dstFormat, UINT32 dstStride, UINT32 dstHeight, REGION16 *invalidRegion)
 
FREERDP_API UINT32 rfx_message_get_frame_idx (const RFX_MESSAGE *message)
 
FREERDP_API const UINT32 * rfx_message_get_quants (const RFX_MESSAGE *message, UINT16 *numQuantVals)
 
FREERDP_API const RFX_TILE ** rfx_message_get_tiles (const RFX_MESSAGE *message, UINT16 *numTiles)
 
FREERDP_API UINT16 rfx_message_get_tile_count (const RFX_MESSAGE *message)
 
FREERDP_API const RFX_RECTrfx_message_get_rects (const RFX_MESSAGE *message, UINT16 *numRects)
 
FREERDP_API UINT16 rfx_message_get_rect_count (const RFX_MESSAGE *message)
 
FREERDP_API void rfx_message_free (RFX_CONTEXT *context, RFX_MESSAGE *message)
 
FREERDP_API BOOL rfx_compose_message (RFX_CONTEXT *context, wStream *s, const RFX_RECT *rects, size_t num_rects, const BYTE *image_data, UINT32 width, UINT32 height, UINT32 rowstride)
 
FREERDP_API RFX_MESSAGE * rfx_encode_message (RFX_CONTEXT *context, const RFX_RECT *rects, size_t numRects, const BYTE *data, UINT32 width, UINT32 height, size_t scanline)
 
FREERDP_API RFX_MESSAGE_LIST * rfx_encode_messages (RFX_CONTEXT *context, const RFX_RECT *rects, size_t numRects, const BYTE *data, UINT32 width, UINT32 height, UINT32 scanline, size_t *numMessages, size_t maxDataSize)
 
FREERDP_API void rfx_message_list_free (RFX_MESSAGE_LIST *messages)
 
FREERDP_API const RFX_MESSAGE * rfx_message_list_get (const RFX_MESSAGE_LIST *messages, size_t idx)
 
FREERDP_API BOOL rfx_write_message (RFX_CONTEXT *context, wStream *s, const RFX_MESSAGE *message)
 
FREERDP_API void rfx_context_free (RFX_CONTEXT *context)
 
FREERDP_API RFX_CONTEXT * rfx_context_new_ex (BOOL encoder, UINT32 ThreadingFlags)
 
FREERDP_API RFX_CONTEXT * rfx_context_new (BOOL encoder)
 
FREERDP_API BOOL rfx_context_reset (RFX_CONTEXT *context, UINT32 width, UINT32 height)
 
FREERDP_API BOOL rfx_context_set_mode (RFX_CONTEXT *context, RLGR_MODE mode)
 
FREERDP_API RLGR_MODE rfx_context_get_mode (RFX_CONTEXT *context)
 
FREERDP_API void rfx_context_set_pixel_format (RFX_CONTEXT *context, UINT32 pixel_format)
 
FREERDP_API UINT32 rfx_context_get_pixel_format (RFX_CONTEXT *context)
 
FREERDP_API void rfx_context_set_palette (RFX_CONTEXT *context, const BYTE *palette)
 
FREERDP_API const BYTErfx_context_get_palette (RFX_CONTEXT *context)
 
FREERDP_API UINT32 rfx_context_get_frame_idx (const RFX_CONTEXT *context)
 
FREERDP_API BOOL rfx_write_message_progressive_simple (RFX_CONTEXT *rfx, wStream *s, const RFX_MESSAGE *msg)
 

Enumeration Type Documentation

◆ RLGR_MODE

enum RLGR_MODE

FreeRDP: A Remote Desktop Protocol Implementation RemoteFX Codec

Copyright 2011 Vic Lee Copyright 2016 Armin Novak armin.nosp@m..nov.nosp@m.ak@th.nosp@m.inca.nosp@m.st.co.nosp@m.m Copyright 2016 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.

Enumerator
RLGR1 
RLGR3 

Function Documentation

◆ rfx_compose_message()

FREERDP_API BOOL rfx_compose_message ( RFX_CONTEXT *  context,
wStream s,
const RFX_RECT rects,
size_t  num_rects,
const BYTE image_data,
UINT32  width,
UINT32  height,
UINT32  rowstride 
)
Here is the caller graph for this function:

◆ rfx_context_free()

FREERDP_API void rfx_context_free ( RFX_CONTEXT *  context)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ rfx_context_get_frame_idx()

FREERDP_API UINT32 rfx_context_get_frame_idx ( const RFX_CONTEXT *  context)
Here is the caller graph for this function:

◆ rfx_context_get_mode()

FREERDP_API RLGR_MODE rfx_context_get_mode ( RFX_CONTEXT *  context)

◆ rfx_context_get_palette()

FREERDP_API const BYTE* rfx_context_get_palette ( RFX_CONTEXT *  context)

◆ rfx_context_get_pixel_format()

FREERDP_API UINT32 rfx_context_get_pixel_format ( RFX_CONTEXT *  context)

◆ rfx_context_new()

FREERDP_API RFX_CONTEXT* rfx_context_new ( BOOL  encoder)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ rfx_context_new_ex()

FREERDP_API RFX_CONTEXT* rfx_context_new_ex ( BOOL  encoder,
UINT32  ThreadingFlags 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ rfx_context_reset()

FREERDP_API BOOL rfx_context_reset ( RFX_CONTEXT *  context,
UINT32  width,
UINT32  height 
)
Here is the caller graph for this function:

◆ rfx_context_set_mode()

FREERDP_API BOOL rfx_context_set_mode ( RFX_CONTEXT *  context,
RLGR_MODE  mode 
)
Here is the caller graph for this function:

◆ rfx_context_set_palette()

FREERDP_API void rfx_context_set_palette ( RFX_CONTEXT *  context,
const BYTE palette 
)

◆ rfx_context_set_pixel_format()

FREERDP_API void rfx_context_set_pixel_format ( RFX_CONTEXT *  context,
UINT32  pixel_format 
)
Here is the caller graph for this function:

◆ rfx_encode_message()

FREERDP_API RFX_MESSAGE* rfx_encode_message ( RFX_CONTEXT *  context,
const RFX_RECT rects,
size_t  numRects,
const BYTE data,
UINT32  width,
UINT32  height,
size_t  scanline 
)
Here is the caller graph for this function:

◆ rfx_encode_messages()

FREERDP_API RFX_MESSAGE_LIST* rfx_encode_messages ( RFX_CONTEXT *  context,
const RFX_RECT rects,
size_t  numRects,
const BYTE data,
UINT32  width,
UINT32  height,
UINT32  scanline,
size_t *  numMessages,
size_t  maxDataSize 
)
Here is the caller graph for this function:

◆ rfx_message_free()

FREERDP_API void rfx_message_free ( RFX_CONTEXT *  context,
RFX_MESSAGE *  message 
)
Here is the caller graph for this function:

◆ rfx_message_get_frame_idx()

FREERDP_API UINT32 rfx_message_get_frame_idx ( const RFX_MESSAGE *  message)

◆ rfx_message_get_quants()

FREERDP_API const UINT32* rfx_message_get_quants ( const RFX_MESSAGE *  message,
UINT16 numQuantVals 
)

◆ rfx_message_get_rect_count()

FREERDP_API UINT16 rfx_message_get_rect_count ( const RFX_MESSAGE *  message)

◆ rfx_message_get_rects()

FREERDP_API const RFX_RECT* rfx_message_get_rects ( const RFX_MESSAGE *  message,
UINT16 numRects 
)

◆ rfx_message_get_tile_count()

FREERDP_API UINT16 rfx_message_get_tile_count ( const RFX_MESSAGE *  message)

◆ rfx_message_get_tiles()

FREERDP_API const RFX_TILE** rfx_message_get_tiles ( const RFX_MESSAGE *  message,
UINT16 numTiles 
)

◆ rfx_message_list_free()

FREERDP_API void rfx_message_list_free ( RFX_MESSAGE_LIST *  messages)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ rfx_message_list_get()

FREERDP_API const RFX_MESSAGE* rfx_message_list_get ( const RFX_MESSAGE_LIST *  messages,
size_t  idx 
)
Here is the caller graph for this function:

◆ rfx_process_message()

FREERDP_API BOOL rfx_process_message ( RFX_CONTEXT *  context,
const BYTE data,
UINT32  length,
UINT32  left,
UINT32  top,
BYTE dst,
UINT32  dstFormat,
UINT32  dstStride,
UINT32  dstHeight,
REGION16 invalidRegion 
)
Here is the caller graph for this function:

◆ rfx_write_message()

FREERDP_API BOOL rfx_write_message ( RFX_CONTEXT *  context,
wStream s,
const RFX_MESSAGE *  message 
)
Here is the caller graph for this function:

◆ rfx_write_message_progressive_simple()

FREERDP_API BOOL rfx_write_message_progressive_simple ( RFX_CONTEXT *  rfx,
wStream s,
const RFX_MESSAGE *  msg 
)
Here is the caller graph for this function: