bug fix: HomeScreen sometimes fails in connection with SystemController at the time...
[profile/ivi/ico-uxf-homescreen.git] / lib / system-controller / CicoSCWaylandIF.h
1 /*
2  * Copyright (c) 2013, TOYOTA MOTOR CORPORATION.
3  *
4  * This program is licensed under the terms and conditions of the
5  * Apache License, version 2.0.  The full text of the Apache License is at
6  * http://www.apache.org/licenses/LICENSE-2.0
7  *
8  */
9
10 //==========================================================================
11 /**
12  *  @file   CicoSCWaylandIF.h
13  *
14  *  @brief  This file is definition of CicoSCWaylandIF class
15  */
16 //==========================================================================
17 #ifndef __CICO_SC_WAYLAND_IF_H__
18 #define __CICO_SC_WAYLAND_IF_H__
19
20 #include <wayland-client.h>
21
22 //==========================================================================
23 /*
24  *  @brief  This class is abstract class of wayland interface
25  */
26 //==========================================================================
27 class CicoSCWaylandIF {
28 public:
29     // initialize interface
30     virtual void initInterface(void               *data,
31                                struct wl_registry *registry,
32                                uint32_t           name,
33                                const char         *interface,
34                                uint32_t           version);
35
36     // inquire whether initialized
37     bool isInitialized(void);
38
39 protected:
40     // default constructor
41     CicoSCWaylandIF();
42
43     // destructor
44     virtual ~CicoSCWaylandIF();
45
46     // assignment operator
47     CicoSCWaylandIF& operator=(const CicoSCWaylandIF &object);
48
49     // copy constructor
50     CicoSCWaylandIF(const CicoSCWaylandIF &object);
51
52 protected:
53     /// interface name of wayland multi window manager
54     static const char * ICO_WL_WIN_MGR_IF;
55     /// interface name of wayland input manager control
56     static const char * ICO_WL_INPUT_MGR_CTRL_IF;
57     /// interface name of wayland exinput
58     static const char * ICO_WL_EXINPUT_IF;
59     /// interface name of wayland input manager device
60     static const char * ICO_WL_INPUT_MGR_DEV_IF;
61     /// interface name of genivi ivi_application
62     static const char * ICO_WL_IVI_APPLICATION_IF;
63     /// interface name of genivi ivi_controller
64     static const char * ICO_WL_IVI_CONTROLLER_IF;
65     /// interface name of wayland output
66     static const char * ICO_WL_OUTPUT_IF;
67
68     // initialized flag
69     bool m_initialized;
70 };
71 #endif  // __CICO_SC_WAYLAND_IF_H__
72 // vim:set expandtab ts=4 sw=4: