Headers for emWin lib
Dependents: DISCO-F746NG_rtos_test
emWin_header/GUI_VNC.h
- Committer:
- redbird
- Date:
- 2016-03-26
- Revision:
- 0:1bf8f02b0770
File content as of revision 0:1bf8f02b0770:
/********************************************************************* * SEGGER Microcontroller GmbH & Co. KG * * Solutions for real time microcontroller applications * ********************************************************************** * * * (c) 1996 - 2014 SEGGER Microcontroller GmbH & Co. KG * * * * Internet: www.segger.com Support: support@segger.com * * * ********************************************************************** ** emWin V5.24 - Graphical user interface for embedded applications ** All Intellectual Property rights in the Software belongs to SEGGER. emWin is protected by international copyright laws. Knowledge of the source code may not be used to write a similar product. This file may only be used in accordance with the following terms: The software has been licensed to NXP Semiconductors USA, Inc. whose registered office is situated at 411 E. Plumeria Drive, San Jose, CA 95134, USA solely for the purposes of creating libraries for NXPs M0, M3/M4 and ARM7/9 processor-based devices, sublicensed and distributed under the terms and conditions of the NXP End User License Agreement. Full source code is available at: www.segger.com We appreciate your understanding and fairness. ---------------------------------------------------------------------- File : GUI_VNC.h Purpose : Publics for the VNC server ---------------------------END-OF-HEADER------------------------------ Attention : Do not modify this file ! If you do, you will not be able do update to a later GUI version ! */ #ifndef GUI_VNC_H #define GUI_VNC_H #include "GUI_Private.h" #if defined(__cplusplus) extern "C" { /* Make sure we have C-declarations in C++ programs */ #endif /********************************************************************* * * Defines * ********************************************************************** */ #define GUI_VNC_NO_ERROR 0 #define GUI_VNC_ERROR_MISC 1 #define GUI_VNC_ERROR_WRONGFORMAT 2 #define GUI_DES_ENCRYPT 0 #define GUI_DES_DECRYPT 1 /********************************************************************* * * Types * ********************************************************************** */ typedef int (*GUI_tSend) (const U8 * pData, int len, void* pConnectInfo); typedef int (*GUI_tReceive)( U8 * pData, int len, void* pConnectInfo); typedef struct GUI_VNC_CONTEXT { GUI_DEVICE * pDevice; struct GUI_VNC_CONTEXT * pNext; int LayerIndex; int BytesPerPixel; int BitsPerPixel; // Note, that from within the VNC server the function LCD_GetBitsBerPixel() can not be used because the VNC server runs in a separate thread and the device chain can change during the function call // // Connection related data // GUI_tSend pfSend; GUI_tReceive pfReceive; void * pConnectInfo; U16 ServerIndex; // // Display related info // int x0Dirty, y0Dirty, x1Dirty, y1Dirty; int XSize, YSize; int xOrg, yOrg, xOrgNew, yOrgNew; int OrgLock; // // Status // char ClientSupportsHextile; char IsBigEndian; } GUI_VNC_CONTEXT; typedef struct { void (* pfGetChallenge)(U8 * pChallenge); void (* pfGetResponse )(U8 * pResponse ); } GUI_VNC_AUTHENTICATION; /********************************************************************* * * Private Functions * ********************************************************************** */ void GUI_VNC_SetDESKey(U8 * pKey, int Mode); void GUI_VNC_DoDES (U8 * pInblock, U8 * pOutblock); /********************************************************************* * * Public Functions * ********************************************************************** */ void GUI_VNC_AttachToLayer (GUI_VNC_CONTEXT * pContext, int LayerIndex); void GUI_VNC_EnableKeyboardInput(int OnOff); int GUI_VNC_GetNumConnections (void); int GUI_VNC_Process (GUI_VNC_CONTEXT * pContext, GUI_tSend pfSend, GUI_tReceive pfReceive, void * pConnectInfo); void GUI_VNC_RingBell (void); void GUI_VNC_SetAuthentication (GUI_VNC_AUTHENTICATION * pAuthentication); void GUI_VNC_SetPassword (U8 * sPassword); void GUI_VNC_SetProgName (const char * sProgName); void GUI_VNC_SetSize (unsigned xSize, unsigned ySize); void GUI_VNC_SetLockFrame (unsigned OnOff); /**** External routine to link the server to the system ... USER defined ! ****/ int GUI_VNC_X_StartServer(int LayerIndex, int ServerIndex); void GUI_VNC_X_getpeername(U32 * Addr); #if defined(__cplusplus) } #endif #endif /* Avoid multiple inclusion */ /*************************** End of file ****************************/