Tizen 2.0 Release
[framework/osp/locations.git] / inc / FLocTypes.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
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
8 //
9 //     http://www.apache.org/licenses/LICENSE-2.0
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         FLocTypes.h
20 * @brief        This is the header file for the types and constants in the Locations namespace.
21 *
22 * This header file contains the declarations for the types and constants in the Locations namespace.
23 */
24
25 #ifndef _FLOC_TYPES_H_
26 #define _FLOC_TYPES_H_
27
28 namespace Tizen { namespace Locations
29 {
30 /**
31 * A region ID that identifies a monitoring region registered to LocationProvider.
32 *
33 * @since 2.0
34 */
35 typedef int RegionId;
36
37 /**
38 * @enum CoordinateFormat
39 *
40 * Defines the format for angle representation in degrees, minutes, and seconds.
41 *
42 * @since 2.0
43 */
44 enum CoordinateFormat
45 {
46         COORDINATE_FORMAT_DEGREE_MINUTE = 0, /**< The "DD:MM.mm" format, where DD is degrees, MM is minutes, and mm is decimal fraction of a minute */
47         COORDINATE_FORMAT_DEGREE_MINUTE_SECOND, /**< The "DD:MM:SS.ss" format, where DD is degrees, MM is minutes, SS is seconds, and ss is decimal fraction of a second */
48 };
49
50 /**
51 * @enum LocationAccuracy
52 *
53 * Defines the accuracy of the location.
54 *
55 * @since 2.0
56 */
57 enum LocationAccuracy
58 {
59         LOC_ACCURACY_INVALID = 0, /**< Invalid accuracy @n The location provider uses this value when the location is not available. */
60         LOC_ACCURACY_FINEST, /**< The accuracy of the location is the finest that the location provider provides */
61         LOC_ACCURACY_TEN_METERS, /**< The accuracy of the location is under 10 meters */
62         LOC_ACCURACY_HUNDRED_METERS, /**< The accuracy of the location is under 100 meters */
63         LOC_ACCURACY_ONE_KILOMETER, /**< The accuracy of the location is under 1 kilometer */
64         LOC_ACCURACY_ANY, /**< The accuracy of the location can be anything that the location provider provides */
65 };
66
67 /**
68 * @enum LocationServiceStatus
69 *
70 * Defines the location service status that the location provider provides.
71 *
72 * @since 2.0
73 */
74 enum LocationServiceStatus
75 {
76         LOC_SVC_STATUS_IDLE = 0, /**< The status of the location service is idle */
77         LOC_SVC_STATUS_RUNNING, /**< The location provider is successfully running the requested service */
78         LOC_SVC_STATUS_PAUSED, /**< The location provider has paused the location service */
79         LOC_SVC_STATUS_DENIED, /**< The location provider is unable to provide services because the user restricted the use of location service */
80         LOC_SVC_STATUS_NOT_FIXED, /**< The location provider is trying to run the service by fixing the current location */
81 };
82 }} // Tizen::Locations
83 #endif // _FLOC_TYPES_H_