kodi
screensaver.h
1 /*
2  * Copyright (C) 2005-2020 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #ifndef C_API_ADDONINSTANCE_SCREENSAVER_H
10 #define C_API_ADDONINSTANCE_SCREENSAVER_H
11 
12 #include "../addon_base.h"
13 
14 #ifdef __cplusplus
15 extern "C"
16 {
17 #endif /* __cplusplus */
18 
19  typedef KODI_ADDON_INSTANCE_HDL KODI_ADDON_SCREENSAVER_HDL;
20 
22  {
23  ADDON_HARDWARE_CONTEXT device;
24  int x;
25  int y;
26  int width;
27  int height;
28  float pixelRatio;
29  };
30 
31  typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_SCREENSAVER_START_V1)(
32  const KODI_ADDON_SCREENSAVER_HDL hdl);
33  typedef void(ATTR_APIENTRYP PFN_KODI_ADDON_SCREENSAVER_STOP_V1)(
34  const KODI_ADDON_SCREENSAVER_HDL hdl);
35  typedef void(ATTR_APIENTRYP PFN_KODI_ADDON_SCREENSAVER_RENDER_V1)(
36  const KODI_ADDON_SCREENSAVER_HDL hdl);
37 
39  {
40  PFN_KODI_ADDON_SCREENSAVER_START_V1 start;
41  PFN_KODI_ADDON_SCREENSAVER_STOP_V1 stop;
42  PFN_KODI_ADDON_SCREENSAVER_RENDER_V1 render;
44 
46  {
47  void (*get_properties)(const KODI_HANDLE hdl, struct KODI_ADDON_SCREENSAVER_PROPS* props);
49 
51  {
52  struct AddonToKodiFuncTable_Screensaver* toKodi;
53  struct KodiToAddonFuncTable_Screensaver* toAddon;
55 
56 #ifdef __cplusplus
57 } /* extern "C" */
58 #endif /* __cplusplus */
59 
60 #endif /* !C_API_ADDONINSTANCE_SCREENSAVER_H */
Definition: screensaver.h:38
Definition: screensaver.h:50
Definition: screensaver.h:21
Definition: screensaver.h:45