remdesk.h (1792B)
1/** 2 * FreeRDP: A Remote Desktop Protocol Implementation 3 * Remote Assistance Virtual Channel 4 * 5 * Copyright 2014 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_REMDESK_SERVER_REMDESK_H 23#define FREERDP_CHANNEL_REMDESK_SERVER_REMDESK_H 24 25#include <freerdp/api.h> 26#include <freerdp/types.h> 27#include <freerdp/channels/wtsvc.h> 28 29#include <freerdp/client/remdesk.h> 30 31/** 32 * Server Interface 33 */ 34 35typedef struct _remdesk_server_context RemdeskServerContext; 36typedef struct _remdesk_server_private RemdeskServerPrivate; 37 38typedef UINT (*psRemdeskStart)(RemdeskServerContext* context); 39typedef UINT (*psRemdeskStop)(RemdeskServerContext* context); 40 41struct _remdesk_server_context 42{ 43 HANDLE vcm; 44 void* custom; 45 46 psRemdeskStart Start; 47 psRemdeskStop Stop; 48 49 RemdeskServerPrivate* priv; 50 rdpContext* rdpcontext; 51}; 52 53#ifdef __cplusplus 54extern "C" 55{ 56#endif 57 58 FREERDP_API RemdeskServerContext* remdesk_server_context_new(HANDLE vcm); 59 FREERDP_API void remdesk_server_context_free(RemdeskServerContext* context); 60 61#ifdef __cplusplus 62} 63#endif 64 65#endif /* FREERDP_CHANNEL_REMDESK_SERVER_REMDESK_H */