Tizen 2.1 base
[apps/native/sample/BasicApp.git] / project / inc / BasicApp.h
1 //
2 // Tizen C++ SDK
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Flora License, Version 1.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
8 //
9 //     http://floralicense.org/license/
10 //
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.
16 //
17
18 #ifndef _BASIC_APP_H_
19 #define _BASIC_APP_H_
20
21 #include <FApp.h>
22 #include <FBase.h>
23 #include <FSystem.h>
24
25 //application must inherit from Application class
26 //which provides basic features necessary to define an application.
27
28 class BasicApp
29         : public Tizen::App::Application
30         , public Tizen::System::IScreenEventListener
31 {
32 public:
33         //[HelloWorld] application must have a factory method that creates an instance of itself.
34         static Tizen::App::Application* CreateInstance(void);
35
36 public:
37         BasicApp(void);
38         virtual ~BasicApp(void);
39
40         // Called when the application is initializing.
41         virtual bool OnAppInitializing(Tizen::App::AppRegistry& appRegistry);
42
43         //Called when the application is terminating.
44         virtual bool OnAppTerminating(Tizen::App::AppRegistry& appRegistry, bool forcedTermination = false);
45
46         //Called when the application's frame moves to the top of the screen.
47         virtual void OnForeground(void);
48
49         //Called when this application's frame is moved from top of the screen to the background.
50         virtual void OnBackground(void);
51
52         //Called when the system memory is not sufficient to run the application any further.
53         virtual void OnLowMemory(void);
54
55         // Called when the battery level changes.
56         virtual void OnBatteryLevelChanged(Tizen::System::BatteryLevel batteryLevel);
57
58         // Called when the screen turns on.
59         virtual void OnScreenOn (void);
60
61         // Called when the screen turns off.
62         virtual void OnScreenOff (void);
63 };
64
65 #endif