2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FSysIScreenEventListener.h
20 * @brief This is the header file of the %IScreenEventListener interface.
22 * This header file contains the declarations of the %IScreenEventListener interface.
25 #ifndef _FSYS_ISCREEN_EVENT_LISTENER_H_
26 #define _FSYS_ISCREEN_EVENT_LISTENER_H_
28 #include <FBaseResult.h>
29 #include <FBaseRtIEventListener.h>
31 namespace Tizen { namespace System
35 * @interface IScreenEventListener
36 * @brief This interface is the listener of the screen event.
40 * The %IScreenEventListener interface must be registered and implemented by an application to receive screen events from the system.
43 class _OSP_EXPORT_ IScreenEventListener
44 : public virtual Tizen::Base::Runtime::IEventListener
48 * Called when the screen turns on. @n
49 * Gets the released resources or resumes the operations that were paused or stopped in OnScreenOff().
53 virtual void OnScreenOn(void) = 0;
56 * Called when the screen turns off. @n
57 * Unless there is a strong reason to do otherwise, release resources (such as 3D, media, and sensors) to allow the device to enter the sleep mode to save the battery.
58 * Invoking a lengthy asynchronous method within this listener method can be risky, because it is not guaranteed to invoke a callback before the device enters the sleep mode.
59 * Similarly, do not perform lengthy operations in this listener method. All operations must be quick ones.
63 virtual void OnScreenOff(void) = 0;
66 * Called when the screen brightness is changed.
70 * @param[in] brightness Screen brightness between @c 0 to @c 10.
72 virtual void OnScreenBrightnessChanged(int brightness) {}
77 // This method is for internal use only.
78 // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
81 virtual void OnIScreenEventListener_Reserved1(void) {}
84 // This method is for internal use only.
85 // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
88 virtual void OnIScreenEventListener_Reserved2(void) {}
90 }; // IScreenEventListener
94 #endif // _FSYS_ISCREEN_EVENT_LISTENER_H_