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
 
struct  RFX_MESSAGE
 
struct  RFX_CONTEXT
 

Macros

#define RFX_DECODED_SYNC   0x00000001
 
#define RFX_DECODED_CONTEXT   0x00000002
 
#define RFX_DECODED_VERSIONS   0x00000004
 
#define RFX_DECODED_CHANNELS   0x00000008
 
#define RFX_DECODED_HEADERS   0x0000000F
 

Enumerations

enum  RLGR_MODE { RLGR1, RLGR3 }
 
enum  RFX_STATE {
  RFX_STATE_INITIAL, RFX_STATE_SERVER_UNINITIALIZED, RFX_STATE_SEND_HEADERS, RFX_STATE_SEND_FRAME_DATA,
  RFX_STATE_FRAME_DATA_SENT, RFX_STATE_FINAL
}
 

Functions

FREERDP_API void rfx_context_set_pixel_format (RFX_CONTEXT *context, UINT32 pixel_format)
 
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 UINT16 rfx_message_get_tile_count (RFX_MESSAGE *message)
 
FREERDP_API UINT16 rfx_message_get_rect_count (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_MESSAGErfx_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_MESSAGErfx_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 BOOL rfx_write_message (RFX_CONTEXT *context, wStream *s, const RFX_MESSAGE *message)
 
FREERDP_API BOOL rfx_context_reset (RFX_CONTEXT *context, UINT32 width, UINT32 height)
 
FREERDP_API RFX_CONTEXTrfx_context_new_ex (BOOL encoder, UINT32 ThreadingFlags)
 
FREERDP_API RFX_CONTEXTrfx_context_new (BOOL encoder)
 
FREERDP_API void rfx_context_free (RFX_CONTEXT *context)
 

Macro Definition Documentation

◆ RFX_DECODED_CHANNELS

#define RFX_DECODED_CHANNELS   0x00000008

◆ RFX_DECODED_CONTEXT

#define RFX_DECODED_CONTEXT   0x00000002

◆ RFX_DECODED_HEADERS

#define RFX_DECODED_HEADERS   0x0000000F

◆ RFX_DECODED_SYNC

#define RFX_DECODED_SYNC   0x00000001

◆ RFX_DECODED_VERSIONS

#define RFX_DECODED_VERSIONS   0x00000004

Enumeration Type Documentation

◆ RFX_STATE

enum RFX_STATE
Enumerator
RFX_STATE_INITIAL 
RFX_STATE_SERVER_UNINITIALIZED 
RFX_STATE_SEND_HEADERS 
RFX_STATE_SEND_FRAME_DATA 
RFX_STATE_FRAME_DATA_SENT 
RFX_STATE_FINAL 

◆ 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 call graph for this function:
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_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_pixel_format()

FREERDP_API void rfx_context_set_pixel_format ( RFX_CONTEXT context,
UINT32  pixel_format 
)
Here is the call graph for this function:
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 call graph for this function:
Here is the caller graph for this function:

◆ rfx_encode_messages()

FREERDP_API RFX_MESSAGE* 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 call graph for this function:
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 call graph for this function:
Here is the caller graph for this function:

◆ rfx_message_get_rect_count()

FREERDP_API UINT16 rfx_message_get_rect_count ( RFX_MESSAGE message)
Here is the call graph for this function:

◆ rfx_message_get_tile_count()

FREERDP_API UINT16 rfx_message_get_tile_count ( RFX_MESSAGE message)
Here is the call 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 call graph for this function:
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 call graph for this function:
Here is the caller graph for this function: