FreeRDP
Loading...
Searching...
No Matches
extension.h
1
20#ifndef FREERDP_EXTENSION_H
21#define FREERDP_EXTENSION_H
22
23#include <freerdp/api.h>
24#include <freerdp/types.h>
25
26#define FREERDP_EXT_EXPORT_FUNC_NAME "FreeRDPExtensionEntry"
27
28#ifdef __cplusplus
29extern "C"
30{
31#endif
32
33 typedef struct rdp_ext_plugin rdpExtPlugin;
34
36 {
37 void* ext;
38 int (*init)(rdpExtPlugin* plugin, freerdp* instance);
39 int (*uninit)(rdpExtPlugin* plugin, freerdp* instance);
40 };
41
42 typedef UINT32(FREERDP_CC* PFREERDP_EXTENSION_HOOK)(rdpExtPlugin* plugin, freerdp* instance);
43
44 typedef UINT32(FREERDP_CC* PREGISTEREXTENSION)(rdpExtPlugin* plugin);
45 typedef UINT32(FREERDP_CC* PREGISTERPRECONNECTHOOK)(rdpExtPlugin* plugin,
46 PFREERDP_EXTENSION_HOOK hook);
47 typedef UINT32(FREERDP_CC* PREGISTERPOSTCONNECTHOOK)(rdpExtPlugin* plugin,
48 PFREERDP_EXTENSION_HOOK hook);
49
50 typedef struct
51 {
52 void* ext; /* Reference to internal instance */
53 PREGISTEREXTENSION pRegisterExtension;
54 PREGISTERPRECONNECTHOOK pRegisterPreConnectHook;
55 PREGISTERPOSTCONNECTHOOK pRegisterPostConnectHook;
56 void* data;
59
60 typedef int(FREERDP_CC* PFREERDP_EXTENSION_ENTRY)(PFREERDP_EXTENSION_ENTRY_POINTS pEntryPoints);
61
62#ifdef __cplusplus
63}
64#endif
65
66#endif /* FREERDP_EXTENSION_H */
Definition extension.h:51