libfreerdp-core: cleanup of freerdp interface
[platform/upstream/freerdp.git] / include / freerdp / freerdp.h
index 5fd2882..c002cf5 100644 (file)
@@ -41,22 +41,16 @@ typedef struct rdp_context rdpContext;
 extern "C" {
 #endif
 
-FREERDP_API boolean freerdp_global_init();
-FREERDP_API void freerdp_global_finish();
+typedef void (*pcContextSize)(freerdp* instance, uint32* size);
+typedef void (*pcContextNew)(freerdp* instance, rdpContext* context);
+typedef void (*pcContextFree)(freerdp* instance, rdpContext* context);
 
-typedef boolean (*pcConnect)(freerdp* instance);
 typedef boolean (*pcPreConnect)(freerdp* instance);
 typedef boolean (*pcPostConnect)(freerdp* instance);
 typedef boolean (*pcAuthenticate)(freerdp* instance, char** username, char** password, char** domain);
-typedef boolean (*pcGetFileDescriptor)(freerdp* instance, void** rfds, int* rcount, void** wfds, int* wcount);
-typedef boolean (*pcCheckFileDescriptor)(freerdp* instance);
+
 typedef int (*pcSendChannelData)(freerdp* instance, int channelId, uint8* data, int size);
 typedef int (*pcReceiveChannelData)(freerdp* instance, int channelId, uint8* data, int size, int flags, int total_size);
-typedef void (*pcDisconnect)(freerdp* instance);
-
-typedef void (*pcContextSize)(freerdp* instance, uint32* size);
-typedef void (*pcContextNew)(freerdp* instance, rdpContext* context);
-typedef void (*pcContextFree)(freerdp* instance, rdpContext* context);
 
 struct rdp_context
 {
@@ -83,20 +77,23 @@ struct rdp_freerdp
        pcContextNew ContextNew;
        pcContextFree ContextFree;
 
-       pcConnect Connect;
        pcPreConnect PreConnect;
        pcPostConnect PostConnect;
        pcAuthenticate Authenticate;
-       pcGetFileDescriptor GetFileDescriptor;
-       pcCheckFileDescriptor CheckFileDescriptor;
+
        pcSendChannelData SendChannelData;
        pcReceiveChannelData ReceiveChannelData;
-       pcDisconnect Disconnect;
 };
 
 FREERDP_API void freerdp_context_new(freerdp* instance);
 FREERDP_API void freerdp_context_free(freerdp* instance);
 
+FREERDP_API boolean freerdp_connect(freerdp* instance);
+FREERDP_API boolean freerdp_disconnect(freerdp* instance);
+
+FREERDP_API boolean freerdp_get_fds(freerdp* instance, void** rfds, int* rcount, void** wfds, int* wcount);
+FREERDP_API boolean freerdp_check_fds(freerdp* instance);
+
 FREERDP_API freerdp* freerdp_new();
 FREERDP_API void freerdp_free(freerdp* instance);