rdpei.h (2673B)
1/** 2 * FreeRDP: A Remote Desktop Protocol Implementation 3 * Dynamic Virtual Channel Extension 4 * 5 * Copyright 2013 Marc-Andre Moreau <marcandre.moreau@gmail.com> 6 * Copyright 2015 Thincast Technologies GmbH 7 * Copyright 2015 DI (FH) Martin Haimberger <martin.haimberger@thincast.com> 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_CHANNEL_RDPEI_CLIENT_RDPEI_H 23#define FREERDP_CHANNEL_RDPEI_CLIENT_RDPEI_H 24 25#include <freerdp/channels/rdpei.h> 26 27/** 28 * Client Interface 29 */ 30 31typedef struct _rdpei_client_context RdpeiClientContext; 32 33typedef UINT32 (*pcRdpeiGetVersion)(RdpeiClientContext* context); 34typedef UINT32 (*pcRdpeiGetFeatures)(RdpeiClientContext* context); 35typedef UINT (*pcRdpeiAddContact)(RdpeiClientContext* context, 36 const RDPINPUT_CONTACT_DATA* contact); 37 38typedef UINT (*pcRdpeiTouchBegin)(RdpeiClientContext* context, INT32 externalId, INT32 x, INT32 y, 39 INT32* contactId); 40typedef UINT (*pcRdpeiTouchUpdate)(RdpeiClientContext* context, INT32 externalId, INT32 x, INT32 y, 41 INT32* contactId); 42typedef UINT (*pcRdpeiTouchEnd)(RdpeiClientContext* context, INT32 externalId, INT32 x, INT32 y, 43 INT32* contactId); 44 45typedef UINT (*pcRdpeiAddPen)(RdpeiClientContext* context, INT32 externalId, 46 const RDPINPUT_PEN_CONTACT* contact); 47 48typedef UINT (*pcRdpeiPen)(RdpeiClientContext* context, INT32 externalId, UINT32 fieldFlags, 49 INT32 x, INT32 y, ...); 50 51typedef UINT (*pcRdpeiSuspendTouch)(RdpeiClientContext* context); 52typedef UINT (*pcRdpeiResumeTouch)(RdpeiClientContext* context); 53 54struct _rdpei_client_context 55{ 56 void* handle; 57 void* custom; 58 59 pcRdpeiGetVersion GetVersion; 60 61 pcRdpeiAddContact AddContact; 62 63 pcRdpeiTouchBegin TouchBegin; 64 pcRdpeiTouchUpdate TouchUpdate; 65 pcRdpeiTouchEnd TouchEnd; 66 67 pcRdpeiSuspendTouch SuspendTouch; 68 pcRdpeiResumeTouch ResumeTouch; 69 70 pcRdpeiGetFeatures GetFeatures; 71 pcRdpeiAddPen AddPen; 72 73 pcRdpeiPen PenBegin; 74 pcRdpeiPen PenUpdate; 75 pcRdpeiPen PenEnd; 76}; 77 78#endif /* FREERDP_CHANNEL_RDPEI_CLIENT_RDPEI_H */