Merge "Update deprecated libprivilege-control API functions." into tizen
[platform/framework/native/appfw.git] / inc / FSysIBatteryEventListener.h
1 //
2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
3 //
4 // Licensed under the Apache License, Version 2.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //     http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16
17 /**
18  * @file        FSysIBatteryEventListener.h
19  * @brief       This is the header file for the %IBatteryEventListener interface.
20  *
21  * This header file contains the declarations of the %IBatteryEventListener interface.
22  */
23
24 #ifndef _FSYS_IBATTERY_EVENT_LISTENER_H_
25 #define _FSYS_IBATTERY_EVENT_LISTENER_H_
26
27 #include <FBaseResult.h>
28 #include <FBaseRtIEventListener.h>
29
30 namespace Tizen { namespace System
31 {
32
33 /**
34  * @interface   IBatteryEventListener
35  * @brief               This interface is the listener of the battery event.
36  *
37  * @since       2.0
38  *
39  * The %IBatteryEventListener interface must be registered and implemented by an application to receive battery events from the system.
40  */
41
42 class _OSP_EXPORT_ IBatteryEventListener
43         : public virtual Tizen::Base::Runtime::IEventListener
44 {
45 public:
46         /**
47          * This is the destructor for this class. @n
48          * This polymorphic destructor should be overridden if required. @n
49          * This way, the destructors of the derived classes are called when the destructor of this interface is called.
50          *
51          * @since       2.0
52          */
53
54         virtual ~IBatteryEventListener(void) {}
55         /**
56          * Called when the battery level is changed.
57          *
58          * @since       2.0
59          *
60          * @param[in]   percentage              The changed battery level
61          * @remarks     The resolution of the level is @c 5%. The range of the level is @c 0 (Minimum) to @c 100 (Maximum).
62          */
63         virtual void OnBatteryLevelChangedInPercentage(int percentage) = 0;
64
65 protected:
66         //
67         // This method is for internal use only.
68         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
69         //
70         // @since 2.0
71         virtual void OnIBatteryEventListener_Reserved1(void) {};
72
73         //
74         // This method is for internal use only.
75         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
76         //
77         // @since 2.0
78         virtual void OnIBatteryEventListener_Reserved2(void) {};
79
80         //
81         // This method is for internal use only.
82         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
83         //
84         // @since 2.0
85         virtual void OnIBatteryEventListener_Reserved3(void) {};
86
87 }; // IBatteryEventListener
88
89 } } // Tizen::System
90
91 #endif // _FSYS_IALARM_EVENT_LISTENER_H_