Fix changelog email address
[freerdp-ubuntu-pcb-backport.git] / libfreerdp-core / surface.h
1 /**
2  * FreeRDP: A Remote Desktop Protocol Client
3  * Surface Commands
4  *
5  * Copyright 2011 Vic Lee
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 __SURFACE
21 #define __SURFACE
22
23 #include "rdp.h"
24 #include <freerdp/utils/stream.h>
25
26 #define SURFCMD_SURFACE_BITS_HEADER_LENGTH 22
27 #define SURFCMD_FRAME_MARKER_LENGTH 8
28
29 enum SURFCMD_CMDTYPE
30 {
31         CMDTYPE_SET_SURFACE_BITS = 0x0001,
32         CMDTYPE_FRAME_MARKER = 0x0004,
33         CMDTYPE_STREAM_SURFACE_BITS = 0x0006
34 };
35
36 enum SURFCMD_FRAMEACTION
37 {
38         SURFACECMD_FRAMEACTION_BEGIN = 0x0000,
39         SURFACECMD_FRAMEACTION_END = 0x0001
40 };
41
42 boolean update_recv_surfcmds(rdpUpdate* update, uint32 size, STREAM* s);
43
44 void update_write_surfcmd_surface_bits_header(STREAM* s, SURFACE_BITS_COMMAND* cmd);
45 void update_write_surfcmd_frame_marker(STREAM* s, uint16 frameAction, uint32 frameId);
46
47 #endif /* __SURFACE */
48