Coverage Report

Created: 2026-04-12 07:03

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/FreeRDP/libfreerdp/utils/gfx.c
Line
Count
Source
1
/**
2
 * FreeRDP: A Remote Desktop Protocol Implementation
3
 *
4
 * GFX Utils - Helper functions converting something to string
5
 *
6
 * Copyright 2022 Armin Novak <armin.novak@thincast.com>
7
 * Copyright 2022 Thincast Technologies GmbH
8
 *
9
 * Licensed under the Apache License, Version 2.0 (the "License");
10
 * you may not use this file except in compliance with the License.
11
 * You may obtain a copy of the License at
12
 *
13
 *     http://www.apache.org/licenses/LICENSE-2.0
14
 *
15
 * Unless required by applicable law or agreed to in writing, software
16
 * distributed under the License is distributed on an "AS IS" BASIS,
17
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
 * See the License for the specific language governing permissions and
19
 * limitations under the License.
20
 */
21
22
#include <freerdp/utils/gfx.h>
23
#include <freerdp/channels/rdpgfx.h>
24
25
static const char* RDPGFX_CMDID_STRINGS[] = { "RDPGFX_CMDID_UNUSED_0000",
26
                                            "RDPGFX_CMDID_WIRETOSURFACE_1",
27
                                            "RDPGFX_CMDID_WIRETOSURFACE_2",
28
                                            "RDPGFX_CMDID_DELETEENCODINGCONTEXT",
29
                                            "RDPGFX_CMDID_SOLIDFILL",
30
                                            "RDPGFX_CMDID_SURFACETOSURFACE",
31
                                            "RDPGFX_CMDID_SURFACETOCACHE",
32
                                            "RDPGFX_CMDID_CACHETOSURFACE",
33
                                            "RDPGFX_CMDID_EVICTCACHEENTRY",
34
                                            "RDPGFX_CMDID_CREATESURFACE",
35
                                            "RDPGFX_CMDID_DELETESURFACE",
36
                                            "RDPGFX_CMDID_STARTFRAME",
37
                                            "RDPGFX_CMDID_ENDFRAME",
38
                                            "RDPGFX_CMDID_FRAMEACKNOWLEDGE",
39
                                            "RDPGFX_CMDID_RESETGRAPHICS",
40
                                            "RDPGFX_CMDID_MAPSURFACETOOUTPUT",
41
                                            "RDPGFX_CMDID_CACHEIMPORTOFFER",
42
                                            "RDPGFX_CMDID_CACHEIMPORTREPLY",
43
                                            "RDPGFX_CMDID_CAPSADVERTISE",
44
                                            "RDPGFX_CMDID_CAPSCONFIRM",
45
                                            "RDPGFX_CMDID_UNUSED_0014",
46
                                            "RDPGFX_CMDID_MAPSURFACETOWINDOW",
47
                                            "RDPGFX_CMDID_QOEFRAMEACKNOWLEDGE",
48
                                            "RDPGFX_CMDID_MAPSURFACETOSCALEDOUTPUT",
49
                                            "RDPGFX_CMDID_MAPSURFACETOSCALEDWINDOW" };
50
51
const char* rdpgfx_get_cmd_id_string(UINT16 cmdId)
52
0
{
53
0
  if (cmdId <= RDPGFX_CMDID_MAPSURFACETOSCALEDWINDOW)
54
0
    return RDPGFX_CMDID_STRINGS[cmdId];
55
0
  else
56
0
    return "RDPGFX_CMDID_UNKNOWN";
57
0
}
58
59
const char* rdpgfx_get_codec_id_string(UINT16 codecId)
60
0
{
61
0
  switch (codecId)
62
0
  {
63
#if defined(WITH_GFX_AV1)
64
    case RDPGFX_CODECID_AV1:
65
      return "RDPGFX_CODECID_AV1";
66
#endif
67
68
0
    case RDPGFX_CODECID_UNCOMPRESSED:
69
0
      return "RDPGFX_CODECID_UNCOMPRESSED";
70
71
0
    case RDPGFX_CODECID_CAVIDEO:
72
0
      return "RDPGFX_CODECID_CAVIDEO";
73
74
0
    case RDPGFX_CODECID_CLEARCODEC:
75
0
      return "RDPGFX_CODECID_CLEARCODEC";
76
77
0
    case RDPGFX_CODECID_PLANAR:
78
0
      return "RDPGFX_CODECID_PLANAR";
79
80
0
    case RDPGFX_CODECID_AVC420:
81
0
      return "RDPGFX_CODECID_AVC420";
82
83
0
    case RDPGFX_CODECID_AVC444:
84
0
      return "RDPGFX_CODECID_AVC444";
85
86
0
    case RDPGFX_CODECID_AVC444v2:
87
0
      return "RDPGFX_CODECID_AVC444v2";
88
89
0
    case RDPGFX_CODECID_ALPHA:
90
0
      return "RDPGFX_CODECID_ALPHA";
91
92
0
    case RDPGFX_CODECID_CAPROGRESSIVE:
93
0
      return "RDPGFX_CODECID_CAPROGRESSIVE";
94
95
0
    case RDPGFX_CODECID_CAPROGRESSIVE_V2:
96
0
      return "RDPGFX_CODECID_CAPROGRESSIVE_V2";
97
0
    default:
98
0
      break;
99
0
  }
100
101
0
  return "RDPGFX_CODECID_UNKNOWN";
102
0
}