TIVI-1924: Initial commit of IVI settings daemon.
[profile/ivi/settings-daemon.git] / plugins / connman / wifi.hpp
1 /**
2  * @file wifi.hpp
3  *
4  * @brief Wifi settings plugin.
5  *
6  * Connman-based wifi settings plugin.
7  *
8  * @author Ossama Othman @<ossama.othman@@intel.com@>
9  *
10  * @copyright @par
11  * Copyright 2012, 2013 Intel Corporation All Rights Reserved.
12  * @par
13  * This library is free software; you can redistribute it and/or
14  * modify it under the terms of the GNU Lesser General Public
15  * License as published by the Free Software Foundation;
16  * version 2.1 of the License.
17  * @par
18  * This library is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
21  * Lesser General Public License for more details.
22  * @par
23  * You should have received a copy of the GNU Lesser General Public
24  * License along with this library; if not, write to the Free Software
25  * Foundation, Inc., 51 Franklin Street, Fifth Floor,
26  * Boston, MA  02110-1301  USA
27  *
28  * @note This header is internal.  Settings provider plugin implementors
29  *       should write their own library/symbol export macros as
30  *       needed.
31  */
32
33
34 #ifndef IVI_SETTINGS_CONNMAN_WIFI_HPP
35 #define IVI_SETTINGS_CONNMAN_WIFI_HPP
36
37 #include <settingsd/plugin.hpp>
38
39 #include "technology.hpp"
40
41
42 namespace ivi
43 {
44   namespace settings
45   {
46     class response_callback;
47
48     /**
49      * @class wifi
50      *
51      * @brief Connman-based wifi settings.
52      *
53      * This class implements all connman-based wifi settings.
54      */
55     class wifi : public plugin
56     {
57     public:
58
59       /// Constructor.
60       wifi();
61
62       /// Destructor.
63       virtual ~wifi();
64
65       /**
66        * @name Settings Plugin API
67        *
68        * Interface defined by the @c ivi::settings::plugin abstract
69        * base class.
70        *
71        * @see settingsd/plugin.hpp
72        */
73       //@{
74       virtual std::string const & id() const;
75       virtual void handle_request(std::string request,
76                                   response_callback response);
77       //@}
78
79     private:
80
81       /// Underlying connman proxy.
82       technology technology_;
83
84     };
85
86   }
87 }
88
89
90 #endif  /* IVI_SETTINGS_CONNMAN_WIFI_HPP */
91
92
93 // Local Variables:
94 // mode:c++
95 // c-basic-offset:2
96 // indent-tabs-mode: nil
97 // End:
98