memory leak fix
[platform/framework/native/uix.git] / src / FUixSensor_ISensorCore.h
1 // 
2 // Open Service Platform
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://www.tizenopensource.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 /**
19  * @file     FUixSensor_ISensorCore.h
20  * @brief    This is the header file for the %_ISensorCore interface class.
21  *
22  * This header file contains the declarations of the %_ISensorCore interface class.
23  */
24
25 #ifndef _FUIX_SENSOR_INTERNAL_ISENSOR_CORE_H_
26 #define _FUIX_SENSOR_INTERNAL_ISENSOR_CORE_H_
27
28 #include <FBaseDataType.h>
29 #include <FUixSensorSensorTypes.h>
30
31 namespace Tizen { namespace Base
32 {
33 class String;
34 } } // Tizen::Base
35
36 namespace Tizen { namespace Uix { namespace Sensor
37 {
38 class _ISensorCoreEventReceiver;
39
40 class _ISensorCore
41 {
42 public:
43         static bool IsSupported(Tizen::Uix::Sensor::SensorType sensorType);
44         static result GetDescription(Tizen::Uix::Sensor::SensorType sensorType, Tizen::Base::String& description);
45         static result GetVendor(Tizen::Uix::Sensor::SensorType sensorType, Tizen::Base::String& vendor);
46         static result GetModelId(Tizen::Uix::Sensor::SensorType sensorType, Tizen::Base::String& modelId);
47         static result GetMeasurementRange(Tizen::Uix::Sensor::SensorType sensorType, float& min, float& max, float& resolution);
48         static result GetIntervalRange(Tizen::Uix::Sensor::SensorType sensorType, long& min, long& max);
49         static bool IsWakeupSupported(Tizen::Uix::Sensor::SensorType sensorType);
50         static bool IsObjectDetected(float distance);
51
52         static result AddSensorCoreEventReceiver(Tizen::Uix::Sensor::_ISensorCoreEventReceiver& receiver);
53         static result RemoveSensorCoreEventReceiver(Tizen::Uix::Sensor::_ISensorCoreEventReceiver& receiver);
54         static result ResetSensorCoreEventReceivingInterval(Tizen::Uix::Sensor::_ISensorCoreEventReceiver& receiver);
55
56         static result SetWakeupEnabled(Tizen::Uix::Sensor::SensorType sensorType, bool enable);
57
58 private:
59         _ISensorCore(void);
60         ~_ISensorCore(void);
61 }; // _ISensorCore
62 } } }// Tizen::Uix::Sensor
63
64 #endif // _FUIX_SENSOR_INTERNAL_ISENSOR_CORE_H_