[Tizen] Add codes for Dali Windows Backend
[platform/core/uifw/dali-adaptor.git] / dali-windows-backend / ExInclude / Win32WindowSystem.h
1 #ifndef _Win32WindowSystem_\r
2 #define _Win32WindowSystem_\r
3 \r
4 #include <stdint.h>\r
5 #include <dali/public-api/signals/callback.h>\r
6 \r
7 typedef bool Eina_Bool;\r
8 \r
9 typedef unsigned int   Ecore_Window;\r
10 \r
11 typedef unsigned int   Ecore_Win_Window;\r
12 \r
13 typedef unsigned int   Ecore_Win_Drawable;\r
14 \r
15 namespace Win32WindowSystem\r
16 {\r
17 void RunLoop();\r
18 \r
19 void SetParent(long child, long parent);\r
20 \r
21 int GetEdgeHeight();\r
22 \r
23 long CreateWinWindow(\r
24     _In_opt_ const char *lpClassName,\r
25     _In_opt_ const char *lpWindowName,\r
26     _In_ int X,\r
27     _In_ int Y,\r
28     _In_ int nWidth,\r
29     _In_ int nHeight,\r
30     _In_opt_ long parent);\r
31 \r
32 typedef void (*winEventCallback)(long hWnd, unsigned int uMsg, long wParam, long lParam);\r
33 \r
34 void RemoveListener(int msgType);\r
35 \r
36 void AddListener( winEventCallback callback );\r
37 void AddListener( int msgType, Dali::CallbackBase *callback );\r
38 \r
39 bool PostWinMessage(\r
40     _In_ unsigned int Msg,\r
41     _In_ long wParam,\r
42     _In_ long lParam,\r
43     _In_ long hWnd = 0);\r
44 \r
45 void ShowWindow(long hWnd);\r
46 void HideWindow(long hWnd);\r
47 \r
48 void GetNanoseconds(uint64_t& timeInNanoseconds);\r
49 \r
50 unsigned int GetCurrentMilliSeconds(void);\r
51 \r
52 long CreateWinSemaphore(_In_ long lInitialCount, _In_ long lMaximumCount);\r
53 \r
54 unsigned long WaitForSingleObject(_In_ long hHandle, _In_ unsigned long dwMilliseconds);\r
55 \r
56 bool ReleaseSemaphore(_In_ long hSemaphore, _In_ long lReleaseCount, _Out_opt_ long *lpPreviousCount);\r
57 \r
58 void Sleep(uint64_t timeInNanoseconds);\r
59 \r
60 typedef void(*timerCallback)(void *data);\r
61 \r
62 int SetTimer(int interval, timerCallback callback, void *data);\r
63 \r
64 void KillTimer(int id);\r
65 \r
66 void GetDPI( float &xDpi, float &yDpi );\r
67 \r
68 const char* GetKeyName( int keyCode );\r
69 \r
70 long GetCurrentThreadId();\r
71 }\r
72 \r
73 #endif\r