/src/FreeRDP/include/freerdp/codec/planar.h
Line | Count | Source (jump to first uncovered line) |
1 | | /** |
2 | | * FreeRDP: A Remote Desktop Protocol Implementation |
3 | | * RDP6 Planar Codec |
4 | | * |
5 | | * Copyright 2013 Marc-Andre Moreau <marcandre.moreau@gmail.com> |
6 | | * Copyright 2016 Armin Novak <armin.novak@thincast.com> |
7 | | * Copyright 2016 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 | | #ifndef FREERDP_CODEC_PLANAR_H |
23 | | #define FREERDP_CODEC_PLANAR_H |
24 | | |
25 | | #include <winpr/cast.h> |
26 | | #include <winpr/crt.h> |
27 | | |
28 | | #include <freerdp/codec/color.h> |
29 | | #include <freerdp/codec/bitmap.h> |
30 | | |
31 | 18.6k | #define PLANAR_FORMAT_HEADER_CS (1 << 3) |
32 | 24.8k | #define PLANAR_FORMAT_HEADER_RLE (1 << 4) |
33 | 24.8k | #define PLANAR_FORMAT_HEADER_NA (1 << 5) |
34 | 18.6k | #define PLANAR_FORMAT_HEADER_CLL_MASK 0x07 |
35 | | |
36 | | #ifdef __cplusplus |
37 | | extern "C" |
38 | | { |
39 | | #endif |
40 | | |
41 | | static inline BYTE PLANAR_CONTROL_BYTE(UINT32 nRunLength, UINT32 cRawBytes) |
42 | 0 | { |
43 | 0 | return WINPR_ASSERTING_INT_CAST(UINT8, ((nRunLength & 0x0F) | ((cRawBytes & 0x0F) << 4))); |
44 | 0 | } Unexecuted instantiation: TestFuzzCodecs.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: planar.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: color.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: bitmap.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: settings.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: privatekey.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: certificate.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: crypto.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: capabilities.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdp.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: tpdu.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: tpkt.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: fastpath.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: surface.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: transport.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: update.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: message.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: channels.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdstls.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: aad.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: timer.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: tsg.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdg.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rpc.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rpc_bind.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rpc_client.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rpc_fault.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rts.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rts_signature.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: http.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: websocket.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: wst.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: ncacn_http.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: bulk.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: brush.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: pointer.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: persistent.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: offscreen.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: palette.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: glyph.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: cache.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: cert_common.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: tls.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: utils.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: activation.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: mcs.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: nla.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: smartcardlogon.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: nego.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: info.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: input.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: license.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: errinfo.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: security.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: orders.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: freerdp.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: graphics.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: client.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: server.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: codecs.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: metrics.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: connection.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: redirection.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: autodetect.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: heartbeat.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: multitransport.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: timezone.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: childsession.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: tcp.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: proxy.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: window.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: peer.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: display.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: credssp_auth.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: arm.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: gdi.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: line.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: pen.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: region.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: shape.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: nine_grid.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: streamdump.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: gcc.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: errbase.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: errconnect.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: clipping.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: dc.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: drawing.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: TestFuzzCoreServer.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: TestFuzzCoreClient.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: cmdline.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: file.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: addin.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: drdynvc_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: remdesk_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdpsnd_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdpdr_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdpdr_capabilities.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdp2tcp_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rail_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rail_orders.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: encomsp_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: cliprdr_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: sshagent_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdpgfx_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdpgfx_codec.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdpei_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: rdpear_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: audin_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: smartcard_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: serial_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: parallel_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: drive_main.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: audin_oss.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: cliprdr_format.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: passphrase.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: smartcard_operations.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: smartcard_call.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: gfx.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: video.c:PLANAR_CONTROL_BYTE Unexecuted instantiation: smartcard_emulate.c:PLANAR_CONTROL_BYTE |
45 | | |
46 | | static inline BYTE PLANAR_CONTROL_BYTE_RUN_LENGTH(UINT32 controlByte) |
47 | 36.1M | { |
48 | 36.1M | return (controlByte & 0x0F); |
49 | 36.1M | } Unexecuted instantiation: TestFuzzCodecs.c:PLANAR_CONTROL_BYTE_RUN_LENGTH planar.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Line | Count | Source | 47 | 36.1M | { | 48 | 36.1M | return (controlByte & 0x0F); | 49 | 36.1M | } |
Unexecuted instantiation: color.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: bitmap.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: settings.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: privatekey.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: certificate.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: crypto.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: capabilities.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdp.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: tpdu.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: tpkt.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: fastpath.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: surface.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: transport.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: update.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: message.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: channels.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdstls.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: aad.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: timer.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: tsg.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdg.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rpc.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rpc_bind.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rpc_client.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rpc_fault.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rts.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rts_signature.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: http.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: websocket.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: wst.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: ncacn_http.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: bulk.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: brush.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: pointer.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: persistent.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: offscreen.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: palette.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: glyph.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: cache.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: cert_common.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: tls.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: utils.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: activation.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: mcs.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: nla.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: smartcardlogon.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: nego.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: info.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: input.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: license.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: errinfo.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: security.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: orders.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: freerdp.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: graphics.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: client.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: server.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: codecs.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: metrics.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: connection.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: redirection.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: autodetect.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: heartbeat.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: multitransport.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: timezone.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: childsession.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: tcp.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: proxy.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: window.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: peer.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: display.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: credssp_auth.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: arm.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: gdi.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: line.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: pen.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: region.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: shape.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: nine_grid.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: streamdump.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: gcc.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: errbase.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: errconnect.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: clipping.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: dc.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: drawing.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: TestFuzzCoreServer.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: TestFuzzCoreClient.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: cmdline.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: file.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: addin.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: drdynvc_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: remdesk_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdpsnd_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdpdr_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdpdr_capabilities.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdp2tcp_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rail_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rail_orders.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: encomsp_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: cliprdr_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: sshagent_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdpgfx_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdpgfx_codec.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdpei_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: rdpear_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: audin_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: smartcard_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: serial_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: parallel_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: drive_main.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: audin_oss.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: cliprdr_format.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: passphrase.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: smartcard_operations.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: smartcard_call.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: gfx.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: video.c:PLANAR_CONTROL_BYTE_RUN_LENGTH Unexecuted instantiation: smartcard_emulate.c:PLANAR_CONTROL_BYTE_RUN_LENGTH |
50 | | static inline BYTE PLANAR_CONTROL_BYTE_RAW_BYTES(UINT32 controlByte) |
51 | 36.1M | { |
52 | 36.1M | return ((controlByte >> 4) & 0x0F); |
53 | 36.1M | } Unexecuted instantiation: TestFuzzCodecs.c:PLANAR_CONTROL_BYTE_RAW_BYTES planar.c:PLANAR_CONTROL_BYTE_RAW_BYTES Line | Count | Source | 51 | 36.1M | { | 52 | 36.1M | return ((controlByte >> 4) & 0x0F); | 53 | 36.1M | } |
Unexecuted instantiation: color.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: bitmap.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: settings.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: privatekey.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: certificate.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: crypto.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: capabilities.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdp.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: tpdu.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: tpkt.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: fastpath.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: surface.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: transport.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: update.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: message.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: channels.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdstls.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: aad.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: timer.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: tsg.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdg.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rpc.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rpc_bind.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rpc_client.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rpc_fault.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rts.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rts_signature.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: http.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: websocket.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: wst.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: ncacn_http.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: bulk.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: brush.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: pointer.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: persistent.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: offscreen.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: palette.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: glyph.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: cache.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: cert_common.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: tls.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: utils.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: activation.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: mcs.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: nla.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: smartcardlogon.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: nego.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: info.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: input.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: license.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: errinfo.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: security.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: orders.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: freerdp.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: graphics.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: client.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: server.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: codecs.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: metrics.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: connection.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: redirection.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: autodetect.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: heartbeat.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: multitransport.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: timezone.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: childsession.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: tcp.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: proxy.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: window.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: peer.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: display.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: credssp_auth.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: arm.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: gdi.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: line.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: pen.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: region.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: shape.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: nine_grid.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: streamdump.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: gcc.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: errbase.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: errconnect.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: clipping.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: dc.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: drawing.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: TestFuzzCoreServer.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: TestFuzzCoreClient.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: cmdline.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: file.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: addin.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: drdynvc_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: remdesk_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdpsnd_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdpdr_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdpdr_capabilities.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdp2tcp_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rail_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rail_orders.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: encomsp_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: cliprdr_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: sshagent_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdpgfx_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdpgfx_codec.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdpei_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: rdpear_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: audin_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: smartcard_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: serial_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: parallel_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: drive_main.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: audin_oss.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: cliprdr_format.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: passphrase.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: smartcard_operations.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: smartcard_call.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: gfx.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: video.c:PLANAR_CONTROL_BYTE_RAW_BYTES Unexecuted instantiation: smartcard_emulate.c:PLANAR_CONTROL_BYTE_RAW_BYTES |
54 | | |
55 | | typedef struct S_BITMAP_PLANAR_CONTEXT BITMAP_PLANAR_CONTEXT; |
56 | | |
57 | | FREERDP_API BYTE* freerdp_bitmap_compress_planar(BITMAP_PLANAR_CONTEXT* WINPR_RESTRICT context, |
58 | | const BYTE* WINPR_RESTRICT data, UINT32 format, |
59 | | UINT32 width, UINT32 height, UINT32 scanline, |
60 | | BYTE* WINPR_RESTRICT dstData, |
61 | | UINT32* WINPR_RESTRICT pDstSize); |
62 | | |
63 | | FREERDP_API BOOL freerdp_bitmap_planar_context_reset( |
64 | | BITMAP_PLANAR_CONTEXT* WINPR_RESTRICT context, UINT32 width, UINT32 height); |
65 | | |
66 | | FREERDP_API void freerdp_bitmap_planar_context_free(BITMAP_PLANAR_CONTEXT* context); |
67 | | |
68 | | WINPR_ATTR_MALLOC(freerdp_bitmap_planar_context_free, 1) |
69 | | FREERDP_API BITMAP_PLANAR_CONTEXT* freerdp_bitmap_planar_context_new(DWORD flags, UINT32 width, |
70 | | UINT32 height); |
71 | | |
72 | | FREERDP_API void freerdp_planar_switch_bgr(BITMAP_PLANAR_CONTEXT* WINPR_RESTRICT planar, |
73 | | BOOL bgr); |
74 | | FREERDP_API void freerdp_planar_topdown_image(BITMAP_PLANAR_CONTEXT* WINPR_RESTRICT planar, |
75 | | BOOL topdown); |
76 | | |
77 | | FREERDP_API BOOL planar_decompress(BITMAP_PLANAR_CONTEXT* WINPR_RESTRICT planar, |
78 | | const BYTE* WINPR_RESTRICT pSrcData, UINT32 SrcSize, |
79 | | UINT32 nSrcWidth, UINT32 nSrcHeight, |
80 | | BYTE* WINPR_RESTRICT pDstData, UINT32 DstFormat, |
81 | | UINT32 nDstStep, UINT32 nXDst, UINT32 nYDst, |
82 | | UINT32 nDstWidth, UINT32 nDstHeight, BOOL vFlip); |
83 | | |
84 | | #ifdef __cplusplus |
85 | | } |
86 | | #endif |
87 | | |
88 | | #endif /* FREERDP_CODEC_PLANAR_H */ |