sysapp_if.h 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517
  1. /*****************************************************************************
  2. ** File: sysapp_if.c
  3. **
  4. ** Description:
  5. **
  6. ** Copyright(c) 2008 Sunmedia Technologies - All Rights Reserved
  7. **
  8. ** Author : qin.he
  9. **
  10. ** $Id: $
  11. *****************************************************************************/
  12. #ifndef _SYSTEM_APPLICATION_IF_UTILITIES_H
  13. #define _SYSTEM_APPLICATION_IF_UTILITIES_H
  14. /*header file*/
  15. #include <stdio.h>
  16. #include <string.h>
  17. #include <ctype.h>
  18. #include <types.h>
  19. #include "gobj_datastruct.h"
  20. #include "gl_types.h"
  21. /*macro define*/
  22. #define SYSTEM_APP_STACK_SIZE 6144
  23. #define SYSTEM_APP_INSTANCE_NOT_EXISTS 1
  24. /*System Status*/
  25. #define SYSTEM_IDLE 0
  26. #define SYSTEM_RUNNING 1
  27. /*System app clear queue flag*/
  28. #define SYSTEM_QUEUE_COUNT (5+1)/*Urgent(5)+Normal(1)*/
  29. #define SYSTEM_CLEAR_UI_EVENT (1<<0)
  30. #define SYSTEM_CLEAR_TIMER_EVENT (1<<1)
  31. #define SYSTEM_CLEAR_GLOBLE_OTHER_EVENT (1<<2)
  32. #define SYSTEM_CLEAR_FW_EVENT (1<<3)
  33. #define SYSTEM_CLEAR_SYSAPP2_CLEAN_EVENT (1<<4)
  34. #define SYSTEM_CLEAR_GLOBLE_MASK_EVENT \
  35. SYSTEM_CLEAR_UI_EVENT|\
  36. SYSTEM_CLEAR_TIMER_EVENT|\
  37. SYSTEM_CLEAR_GLOBLE_OTHER_EVENT|\
  38. SYSTEM_CLEAR_FW_EVENT|\
  39. SYSTEM_CLEAR_SYSAPP2_CLEAN_EVENT
  40. #define SYSTEM_CLEAR_RELEASE_UI_EVENT (1<<5)
  41. #define SYSTEM_CLEAR_RELEASE_TIMER_EVENT (1<<6)
  42. #define SYSTEM_CLEAR_RELEASE_GLOBLE_OTHER_EVENT (1<<7)
  43. #define SYSTEM_CLEAR_RELEASE_MASK_EVENT \
  44. SYSTEM_CLEAR_RELEASE_UI_EVENT|\
  45. SYSTEM_CLEAR_RELEASE_TIMER_EVENT|\
  46. SYSTEM_CLEAR_RELEASE_GLOBLE_OTHER_EVENT
  47. #define SYSTEM_CLEAR_INTERNAL_EVENT (1<<8)
  48. #define SYSTEM_CLEAR_MASK_EVENT \
  49. SYSTEM_CLEAR_GLOBLE_MASK_EVENT|\
  50. SYSTEM_CLEAR_RELEASE_MASK_EVENT|\
  51. SYSTEM_CLEAR_INTERNAL_EVENT
  52. /*End*/
  53. /*Message definition*/
  54. #define SYSTEM_APP_ACTIVATE_ACK 0x1020
  55. #define SYSTEM_APP_TERMINATE_ACK 0x1040
  56. #define SYSTEM_APP_TRANSITION_FAILED 0x1080
  57. #define SYSTEM_APP_TRANSITION_TIMEOUT 0x1090
  58. #define SYSTEM_APP_DISCPLAYER_PRIORITY (APP_SYSTEM_OS_PRIORITY_BASE)
  59. #define SYSTEM_APP_FILEPLAYER_PRIORITY (APP_SYSTEM_OS_PRIORITY_BASE)
  60. /*sysapp function pointer return value.*/
  61. #define SYSTEM_APP_SUCCESFUL 0
  62. #define SYSTEM_APP_ONTERMINATE_FAILED (-2)
  63. #define SYSTEM_APP_ONRUN_FAILED (-1)
  64. /*data structure define*/
  65. typedef enum {
  66. SYSTEM_APP_GUIOBJ_CREATE_FAILED = (-8),
  67. SYSTEM_APP_TASK_CREATE_FAILED = (-7),
  68. SYSTEM_APP_QUEUE_ERROR = (-6),
  69. SYSTEM_APP_PARAM_ERROR = (-5),
  70. SYSTEM_APP_STATE_ERROR = (-4),
  71. SYSTEM_APP_DATA_ERROR = (-3),
  72. SYSTEM_APP_INIT_ERROR = (-2),
  73. SYSTEM_APP_INDEX_ERROR = (-1),
  74. SYSTEM_APP_SUCCESS = 0,
  75. SYSTEM_APP_INSTNACE_EXIST = 1,
  76. SYSTEM_APP_NO_FOCUSED_GUIOBJ = 2,
  77. SYSTEM_APP_NO_GUIOBJ = 3,
  78. SYSTEM_APP_ERROR_CODE_MAX
  79. } sys_app_errorcode_t;
  80. /*Function pointer declearation.*/
  81. typedef int (*SysAppPPFuncPtr) (void** ppPrivateData);
  82. typedef int (*SysAppFuncPtr) (void *pPrivateData);
  83. typedef int (*SysAppFuncPtrParam) (void *pPrivateData, UINT32 dParam);
  84. typedef int (*SysAppMsgHandler) (void *pPrivateData, UINT32 dMessage, UINT32 dParam);
  85. typedef struct SystemApplicationInstance_t_ {
  86. UINT32 dSystemApplicationIndex;
  87. SysAppPPFuncPtr fpOnCreate; /*Initialize function pointer.*/
  88. SysAppPPFuncPtr fpOnDestroy; /*Finalize function pointer.*/
  89. SysAppFuncPtrParam fpOnRun; /*Function pointer to handle idle to active state.*/
  90. SysAppFuncPtrParam fpOnTerminate; /*Function pointer to handle active to idle state.*/
  91. SysAppFuncPtr fpOnTimerUpdate; /*Function pointer to handle timer event. (called every 100 ms)*/
  92. SysAppMsgHandler fpOnEvent; /*Function pointer to handle incoming message.*/
  93. UINT8 bAppState; /*System app state*/
  94. GUI_Object_Definition_t **pGUIObjectTable; /*GUI object table*/
  95. UINT32 dGUITableSize;
  96. void *stSystemAppInfrastructure; /*Infrastructure to the system app.*/
  97. void *stAppSpecificData; /*Pointer to system application specific data structure.*/
  98. } SysAppInstDef;
  99. void SYSAPP_GOBJ_Set_OSDLOCK(BOOL osdlock);
  100. BOOL SYSAPP_GOBJ_Get_OSDLOCK(void);
  101. /*****************************************************************************
  102. ** FUNCTION : SYSAPP_IF_Initialize
  103. **
  104. ** DESCRIPTION :
  105. ** Initialize system app module
  106. **
  107. ** PARAMETERS :
  108. ** dTotalSysApp: system app total number
  109. ** pSysAppTable: system app define
  110. **
  111. ** RETURN VALUES:
  112. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  113. ** SYSTEM_APP_SUCCESS: Initialize system app module success
  114. *****************************************************************************/
  115. int SYSAPP_IF_Initialize(UINT32 dTotalSysApp, SysAppInstDef** pSysAppTable);
  116. /*****************************************************************************
  117. ** FUNCTION : SYSAPP_IF_InitializeSysApp
  118. **
  119. ** DESCRIPTION :
  120. ** Initialize one system app
  121. **
  122. ** PARAMETERS :
  123. ** dSystemAppID: system app index
  124. ** MainAppQHdl: main app queue handle
  125. **
  126. ** RETURN VALUES:
  127. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  128. ** SYSTEM_APP_INSTNACE_EXIST: this system app have initialized
  129. ** SYSTEM_APP_SUCCESS: Initialize system app success
  130. *****************************************************************************/
  131. int SYSAPP_IF_InitializeSysApp(UINT32 dSystemAppID, GL_Queue_t MainAppQHdl);
  132. /*****************************************************************************
  133. ** FUNCTION : SYSAPP_IF_Finalize
  134. **
  135. ** DESCRIPTION :
  136. ** Finalize one system app
  137. **
  138. ** PARAMETERS :
  139. ** dSystemAppID: system app index
  140. **
  141. ** RETURN VALUES:
  142. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  143. ** SYSTEM_APP_QUEUE_ERROR: Finalize system app failed
  144. ** SYSTEM_APP_SUCCESS: Initialize system app success
  145. *****************************************************************************/
  146. int SYSAPP_IF_Finalize(UINT32 dSystemAppID);
  147. /*****************************************************************************
  148. ** FUNCTION : SYSAPP_IF_Activate
  149. **
  150. ** DESCRIPTION :
  151. ** active system app
  152. **
  153. ** PARAMETERS :
  154. ** dSystemAppID: system app index
  155. ** dParam: system app on run paramter
  156. **
  157. ** RETURN VALUES:
  158. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  159. ** SYSTEM_APP_QUEUE_ERROR: Active system app failed
  160. ** SYSTEM_APP_SUCCESS: Active system app success
  161. *****************************************************************************/
  162. int SYSAPP_IF_Activate(UINT32 dSystemAppID, UINT32 dParam);
  163. /*****************************************************************************
  164. ** FUNCTION : SYSAPP_IF_Terminate
  165. **
  166. ** DESCRIPTION :
  167. ** terminate system app
  168. **
  169. ** PARAMETERS :
  170. ** dSystemAppID: system app index
  171. ** dParam: system app on terminate paramter
  172. **
  173. ** RETURN VALUES:
  174. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  175. ** SYSTEM_APP_QUEUE_ERROR: terminate system app failed
  176. ** SYSTEM_APP_SUCCESS: terminate system app success
  177. *****************************************************************************/
  178. int SYSAPP_IF_Terminate(UINT32 dSystemAppID, UINT32 dParam);
  179. /*****************************************************************************
  180. ** FUNCTION : SYSAPP_IF_GetSystemAppQueueHandle
  181. **
  182. ** DESCRIPTION :
  183. ** get system app queue handle
  184. **
  185. ** PARAMETERS :
  186. ** dIndex: system app index
  187. ** QueueHandle: system app queue handle
  188. **
  189. ** RETURN VALUES:
  190. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  191. ** SYSTEM_APP_SUCCESS: get system app queue handle success
  192. *****************************************************************************/
  193. int SYSAPP_IF_GetSystemAppQueueHandle(UINT32 dIndex, GL_Queue_t * QueueHandle);
  194. /*****************************************************************************
  195. ** FUNCTION : SYSAPP_IF_SentInternalEvent
  196. **
  197. ** DESCRIPTION :
  198. ** Send internal message to system app
  199. **
  200. ** PARAMETERS :
  201. ** dSystemAppID: system app index
  202. ** dMessage: internal message
  203. ** dParam: internal message's paramter
  204. **
  205. ** RETURN VALUES:
  206. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  207. ** SYSTEM_APP_QUEUE_ERROR: send internal message to system app failed
  208. ** SYSTEM_APP_SUCCESS: send internal message to system app success
  209. *****************************************************************************/
  210. int SYSAPP_IF_SentInternalEvent(UINT8 bSystemAppIndex, UINT32 dMessage, UINT32 dParam);
  211. /*****************************************************************************
  212. ** FUNCTION : SYSAPP_IF_RetrievePrivateData
  213. **
  214. ** DESCRIPTION :
  215. ** Retrieve private data
  216. **
  217. ** PARAMETERS :
  218. ** dSystemAppID: system app index
  219. ** ppPrivateData: system app private data
  220. **
  221. ** RETURN VALUES:
  222. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  223. ** SYSTEM_APP_INDEX_ERROR: system app index error
  224. ** SYSTEM_APP_SUCCESS: get system app private data success
  225. *****************************************************************************/
  226. int SYSAPP_IF_RetrievePrivateData(UINT8 bSystemAppIndex, void** ppPrivateData);
  227. /*****************************************************************************
  228. ** FUNCTION : SYSAPP_IF_Activate
  229. **
  230. ** DESCRIPTION :
  231. ** get system app running state
  232. **
  233. ** PARAMETERS :
  234. ** stTaskHandle: system app task handle
  235. **
  236. ** RETURN VALUES:
  237. ** false: system app not running
  238. ** true: system app running
  239. *****************************************************************************/
  240. bool SYSAPP_IF_IsSysAppRunning(GL_Task_t stTaskHandle);
  241. /*****************************************************************************
  242. ** FUNCTION : SYSAPP_IF_ClearQueue
  243. **
  244. ** DESCRIPTION :
  245. ** Clear system app queue
  246. **
  247. ** PARAMETERS :
  248. ** bSystemAppIndex: system app index
  249. ** bClearFlag: clear message type
  250. **
  251. ** RETURN VALUES:
  252. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  253. ** SYSTEM_APP_SUCCESS: clear system app queue success
  254. *****************************************************************************/
  255. int SYSAPP_IF_ClearQueue(UINT8 bSystemAppIndex, UINT32 bClearFlag);
  256. /*****************************************************************************
  257. ** FUNCTION : SYSAPP_IF_GetSysAppStateByIndex
  258. **
  259. ** DESCRIPTION :
  260. ** Clear system app state
  261. **
  262. ** PARAMETERS :
  263. ** bSystemAppIndex: system app index
  264. ** bState: system app state
  265. **
  266. ** RETURN VALUES:
  267. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  268. ** SYSTEM_APP_SUCCESS: get system app state success
  269. *****************************************************************************/
  270. int SYSAPP_IF_GetSysAppStateByIndex(UINT8 bSystemAppIndex, UINT8* bState);
  271. /*****************************************************************************
  272. ** FUNCTION : SYSAPP_IF_SendGlobalEventWithIndex
  273. **
  274. ** DESCRIPTION :
  275. ** Send global message to system app
  276. **
  277. ** PARAMETERS :
  278. ** dIndex: system app index
  279. ** dMessage: global message
  280. ** dParam: global message's paramter
  281. **
  282. ** RETURN VALUES:
  283. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  284. ** SYSTEM_APP_QUEUE_ERROR: send global message to system app failed
  285. ** SYSTEM_APP_SUCCESS: send global message to system app success
  286. *****************************************************************************/
  287. int SYSAPP_IF_SendGlobalEventWithIndex(UINT32 dIndex, UINT32 dMessage, UINT32 dParam);
  288. /*****************************************************************************
  289. ** FUNCTION : SYSAPP_IF_SendCriticalGlobalEventWithIndex
  290. **
  291. ** DESCRIPTION :
  292. ** Send global message to system app with critical
  293. **
  294. ** PARAMETERS :
  295. ** dIndex: system app index
  296. ** dMessage: global message
  297. ** dParam: global message's paramter
  298. **
  299. ** RETURN VALUES:
  300. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  301. ** SYSTEM_APP_QUEUE_ERROR: send global message to system app failed
  302. ** SYSTEM_APP_SUCCESS: send global message to system app success
  303. *****************************************************************************/
  304. int SYSAPP_IF_SendCriticalGlobalEventWithIndex(UINT32 dIndex, UINT32 dMessage, UINT32 dParam);
  305. /*****************************************************************************
  306. ** FUNCTION : SYSAPP_IF_GetSysAppStateByIndex
  307. **
  308. ** DESCRIPTION :
  309. ** Clear system app state
  310. **
  311. ** PARAMETERS :
  312. ** bSystemAppIndex: system app index
  313. ** bState: system app state
  314. **
  315. ** RETURN VALUES:
  316. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  317. ** SYSTEM_APP_SUCCESS: get system app state success
  318. *****************************************************************************/
  319. int SYSAPP_GOBJ_CreateGUIObject_WithPara(UINT8 bSystemAppIndex, UINT32 dGUIObjIndex,UINT32 dParameter);
  320. int SYSAPP_GOBJ_CreateGUIObject_WithParaForLoseFocus(UINT8 bSystemAppIndex,
  321. UINT32 dGUIObjIndex,UINT32 dParameter, bool bFocusChange);
  322. /*****************************************************************************
  323. ** FUNCTION : SYSAPP_GOBJ_DestroyGUIObject
  324. **
  325. ** DESCRIPTION :
  326. ** Destroy one gui object
  327. **
  328. ** PARAMETERS :
  329. ** bSystemAppIndex: system app index
  330. ** dGUIObjIndex: destroy gui object index
  331. **
  332. ** RETURN VALUES:
  333. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  334. ** SYSTEM_APP_SUCCESS: destroy gui object success
  335. *****************************************************************************/
  336. int SYSAPP_GOBJ_DestroyGUIObject(UINT8 bSystemAppIndex, UINT32 dGUIObjIndex);
  337. int SYSAPP_GOBJ_DestroyGUIObject_WithFocusChange(UINT8 bSystemAppIndex, UINT32 dGUIObjIndex, bool bFocusChange);
  338. /*****************************************************************************
  339. ** FUNCTION : SYSAPP_GOBJ_DestroyAllGUIObject
  340. **
  341. ** DESCRIPTION :
  342. ** Destroy system app's all gui object
  343. **
  344. ** PARAMETERS :
  345. ** bSystemAppIndex: system app index
  346. **
  347. ** RETURN VALUES:
  348. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  349. ** SYSTEM_APP_SUCCESS: destroy all gui objects success
  350. *****************************************************************************/
  351. int SYSAPP_GOBJ_DestroyAllGUIObject(UINT8 bSystemAppIndex);
  352. /*****************************************************************************
  353. ** FUNCTION : SYSAPP_GOBJ_FinalizeGUIObject
  354. **
  355. ** DESCRIPTION :
  356. ** Finalize system app's gui object
  357. **
  358. ** PARAMETERS :
  359. ** bSystemAppIndex: system app index
  360. **
  361. ** RETURN VALUES:
  362. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  363. ** SYSTEM_APP_SUCCESS: finalize gui objects success
  364. *****************************************************************************/
  365. int SYSAPP_GOBJ_FinalizeGUIObject(UINT8 bSystemAppIndex);
  366. /*****************************************************************************
  367. ** FUNCTION : SYSAPP_GOBJ_GUIObjectExist
  368. **
  369. ** DESCRIPTION :
  370. ** Judge one gui objext exist gui objext list
  371. **
  372. ** PARAMETERS :
  373. ** bSystemAppIndex: system app index
  374. ** dGUIObjIndex: gui object index
  375. **
  376. ** RETURN VALUES:
  377. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  378. ** false: gui object not exist
  379. ** true: gui object exist
  380. *****************************************************************************/
  381. int SYSAPP_GOBJ_GUIObjectExist(UINT8 bSystemAppIndex, UINT32 dGUIObjIndex);
  382. /*****************************************************************************
  383. ** FUNCTION : SYSAPP_GOBJ_GetTotalCreatedObjects
  384. **
  385. ** DESCRIPTION :
  386. ** Get system app total gui object
  387. **
  388. ** PARAMETERS :
  389. ** bSystemAppIndex: system app index
  390. ** dTotalObjects: total gui object value
  391. **
  392. ** RETURN VALUES:
  393. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  394. *****************************************************************************/
  395. int SYSAPP_GOBJ_GetTotalCreatedObjects(UINT8 bSystemAppIndex, UINT32* dTotalObjects);
  396. /*****************************************************************************
  397. ** FUNCTION : SYSAPP_GOBJ_GetObjectIDByIndex
  398. **
  399. ** DESCRIPTION :
  400. ** Get system app total gui object
  401. **
  402. ** PARAMETERS :
  403. ** bSystemAppIndex: system app index
  404. ** dGUIObjIndex: gui object index
  405. ** dID: gui object ID
  406. **
  407. ** RETURN VALUES:
  408. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  409. *****************************************************************************/
  410. int SYSAPP_GOBJ_GetObjectIDByIndex(UINT8 bSystemAppIndex, UINT32 dGUIObjIndex, UINT32* dID);
  411. /*****************************************************************************
  412. ** FUNCTION : SYSAPP_GOBJ_SendMsgToSingleGUIObject
  413. **
  414. ** DESCRIPTION :
  415. ** Send message to single gui object
  416. **
  417. ** PARAMETERS :
  418. ** bSystemAppIndex: system app index
  419. ** dGUIObjIndex: gui object index
  420. ** dMessage: message
  421. ** dParam: message's paramter
  422. **
  423. ** RETURN VALUES:
  424. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  425. ** SYSTEM_APP_SUCCESS: send message to gui objects success
  426. *****************************************************************************/
  427. int SYSAPP_GOBJ_SendMsgToSingleGUIObject(UINT8 bSystemAppIndex, UINT32 dGUIObjIndex, UINT32 dMessage, UINT32 dParam);
  428. /*****************************************************************************
  429. ** FUNCTION : SYSAPP_GOBJ_DestroyPartialGUIObjects
  430. **
  431. ** DESCRIPTION :
  432. ** Destroy Partial gui object
  433. **
  434. ** PARAMETERS :
  435. ** bSystemAppIndex: system app index
  436. ** Indexes: destroy gui objects
  437. ** bNoOfObjs: gui objects total number
  438. **
  439. ** RETURN VALUES:
  440. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  441. ** SYSTEM_APP_SUCCESS: destroy gui objects success
  442. *****************************************************************************/
  443. int SYSAPP_GOBJ_DestroyPartialGUIObjects(UINT8 bSystemAppIndex, UINT32* Indexes, UINT8 bNoOfObjs);
  444. /*****************************************************************************
  445. ** FUNCTION : SYSAPP_GOBJ_GetLastFocusedGUIObject
  446. **
  447. ** DESCRIPTION :
  448. ** Get last focused gui object
  449. **
  450. ** PARAMETERS :
  451. ** bSystemAppIndex: system app index
  452. ** dLastFocusedIndex: last focused gui objext index
  453. **
  454. ** RETURN VALUES:
  455. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  456. *****************************************************************************/
  457. int SYSAPP_GOBJ_GetLastFocusedGUIObject(UINT8 bSystemAppIndex, int* dLastFocusedIndex);
  458. /*****************************************************************************
  459. ** FUNCTION : SYSAPP_GOBJ_GetFocusedGUIObject
  460. **
  461. ** DESCRIPTION :
  462. ** Get current focused gui object
  463. **
  464. ** PARAMETERS :
  465. ** bSystemAppIndex: system app index
  466. ** dLastFocusedIndex: current focused gui objext index
  467. **
  468. ** RETURN VALUES:
  469. ** SYSTEM_APP_INDEX_ERROR: input paramter error
  470. *****************************************************************************/
  471. int SYSAPP_GOBJ_GetFocusedGUIObject(UINT8 bSystemAppIndex, int* dFocusedIndex);
  472. #endif