20 #ifndef FREERDP_CHANNELS_CLIENT_H
21 #define FREERDP_CHANNELS_CLIENT_H
23 #include <freerdp/api.h>
24 #include <freerdp/dvc.h>
25 #include <freerdp/config.h>
26 #include <freerdp/addin.h>
27 #include <freerdp/channels/channels.h>
36 IWTSVirtualChannelCallback iface;
38 IWTSVirtualChannelManager* channel_mgr;
39 IWTSVirtualChannel* channel;
44 IWTSListenerCallback iface;
46 IWTSVirtualChannelManager* channel_mgr;
47 IWTSVirtualChannel* channel;
53 rdpSettings* settings);
60 IWTSListener* listener;
65 size_t channelCallbackSize;
66 const IWTSVirtualChannelCallback* channel_callbacks;
67 DYNVC_PLUGIN_TERMINATE_FN terminatePluginFn;
70 #if defined(WITH_CHANNELS)
71 FREERDP_API
void* freerdp_channels_client_find_static_entry(
const char* name,
72 const char* identifier);
73 FREERDP_API PVIRTUALCHANNELENTRY freerdp_channels_load_static_addin_entry(LPCSTR pszName,
78 FREERDP_API
FREERDP_ADDIN** freerdp_channels_list_addins(LPCSTR lpName, LPCSTR lpSubsystem,
79 LPCSTR lpType, DWORD dwFlags);
80 FREERDP_API
void freerdp_channels_addin_list_free(
FREERDP_ADDIN** ppAddins);
83 FREERDP_API UINT freerdp_generic_DVCPluginEntry(
84 IDRDYNVC_ENTRY_POINTS* pEntryPoints,
const char* logTag,
const char* name,
85 size_t pluginSize,
size_t channelCallbackSize,
86 const IWTSVirtualChannelCallback* channel_callbacks, DYNVC_PLUGIN_INIT_FN initPluginFn,
87 DYNVC_PLUGIN_TERMINATE_FN terminatePluginFn);