Release Tizen2.0 beta
[framework/location/libslp-location.git] / location / map-service / location-landmark-ext.h
1 /*
2  * libslp-location
3  *
4  * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Youngae Kang <youngae.kang@samsung.com>, Yunhan Kim <yhan.kim@samsung.com>,
7  *          Genie Kim <daejins.kim@samsung.com>, Minjune Kim <sena06.kim@samsung.com>
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  */
21
22 #ifndef __LOCATION_LANDMARK_EXT_H__
23 #define __LOCATION_LANDMARK_EXT_H__
24
25 #include <location-map-types.h>
26
27 G_BEGIN_DECLS
28
29 /**
30  * @file location-landmark-ext.h
31  * @brief This file contains the extensional definitions and structures related to Landmark.
32  */
33
34 /**
35  * @addtogroup LocationMapServicePOI
36  * @{
37  * @defgroup LocationMapServiceLandmarkExt Location Landmark Ext
38  * @brief This provides Location Landmark Ext APIs
39  * @addtogroup LocationMapServiceLandmarkExt
40  * @{
41  */
42
43 /**
44  * @brief Set the ID of the given #LocationLandmark
45  * @remarks None.
46  * @pre None.
47  * @post None.
48  * @param [in] landmark - a #LocationLandmark
49  * @param [in] id - a guint
50  * @return gboolean
51  * @retval  TRUE if success
52  * @see location_landmark_get_id
53  */
54 gboolean location_landmark_set_id (LocationLandmark *landmark, guint id);
55
56 /**
57  * @brief Set the name of the given #LocationLandmark
58  * @remarks The previous name of the #LocationLandmark will be removed if a name is NULL.
59  * @pre None.
60  * @post None.
61  * @param [in] landmark - a #LocationLandmark
62  * @param [in] name - a gchar
63  * @return gboolean
64  * @retval  TRUE if success
65  * @see location_landmark_get_name
66  */
67 gboolean location_landmark_set_name (LocationLandmark *landmark, const gchar *name);
68
69 /**
70  * @brief Set the position in the given #LocationLandmark
71  * @remarks The previous position of the #LocationLandmark will be removed if a position is NULL.
72  * @pre None.
73  * @post None.
74  * @param [in] landmark - a #LocationLandmark
75  * @param [in] position - a #LocationPosition
76  * @return gboolean
77  * @retval  TRUE if success
78  * @see location_landmark_get_position
79  */
80 gboolean location_landmark_set_position (LocationLandmark *landmark, const LocationPosition *position);
81
82 /**
83  * @brief Set the address of the given #LocationLandmark
84  * @remarks The previous address of the #LocationLandmark will be removed if an addr is NULL.
85  * @pre None.
86  * @post None.
87  * @param [in] landmark - a #LocationLandmark
88  * @param [in] addr - a #LocationAddress
89  * @return gboolean
90  * @retval  TRUE if success
91  * @see location_landmark_get_address
92  */
93 gboolean location_landmark_set_address (LocationLandmark *landmark, const LocationAddress *addr);
94
95 /**
96  * @brief Set the description of the given #LocationLandmark
97  * @remarks The previous description of the #LocationLandmark will be removed if a desc is NULL.
98  * @pre None.
99  * @post None.
100  * @param [in] landmark - a #LocationLandmark
101  * @param [in] desc - a gchar
102  * @return gboolean
103  * @retval  TRUE if success
104  * @see location_landmark_get_description
105  */
106 gboolean location_landmark_set_description (LocationLandmark *landmark, const gchar *desc);
107
108 /**
109  * @brief Set the timestamp of the given #LocationLandmark
110  * @remarks None.
111  * @pre None.
112  * @post None.
113  * @param [in] landmark - a #LocationLandmark
114  * @param [in] timestamp - a guint
115  * @return gboolean
116  * @retval  TRUE if success
117  * @see location_landmark_get_timestamp
118  */
119 gboolean location_landmark_set_timestamp (LocationLandmark *landmark, guint timestamp);
120
121 /**
122  * @brief Set the priority of the given #LocationLandmark
123  * @remarks None.
124  * @pre None.
125  * @post None.
126  * @param [in] landmark - a #LocationLandmark
127  * @param [in] priority - a guint
128  * @return gboolean
129  * @retval  TRUE if success
130  * @see location_landmark_get_priority
131  */
132 gboolean location_landmark_set_priority (LocationLandmark *landmark, guint priority);
133
134 /**
135  * @brief Set the boundary of the given #LocationLandmark
136  * @remarks The previous bounding box of the #LocationLandmark will be removed if a bbox is NULL.
137  * @pre None.
138  * @post None.
139  * @param [in] landmark - a #LocationLandmark
140  * @param [in] bbox - a #LocationBoundary
141  * @return gboolean
142  * @retval  TRUE if success
143  * @see location_landmark_get_bounding_box
144  */
145 gboolean location_landmark_set_bounding_box (LocationLandmark *landmark, const LocationBoundary *bbox);
146
147 /**
148  * @brief Set the author of the given #LocationLandmark
149  * @remarks The previous author of the #LocationLandmark will be removed if a author is NULL.
150  * @pre None.
151  * @post None.
152  * @param [in] landmark - a #LocationLandmark
153  * @param [in] author - a gchar
154  * @return gboolean
155  * @retval  TRUE if success
156  * @see location_landmark_get_author
157  */
158 gboolean location_landmark_set_author (LocationLandmark *landmark, const gchar *author);
159
160 /**
161  * @brief Set the urls of the given #LocationLandmark
162  * @remarks The previous url of the #LocationLandmark will be removed if an url is NULL.
163  * @pre None.
164  * @post None.
165  * @param [in] landmark - a #LocationLandmark
166  * @param [in] url - a GList
167  * @return gboolean
168  * @retval  TRUE if success
169  * @see location_landmark_get_url
170  */
171 gboolean location_landmark_set_url (LocationLandmark *landmark, GList *url);
172
173 /**
174  * @brief Set the categories of the given #LocationLandmark
175  * @remarks The previous categories of the #LocationLandmark will be removed if a category is NULL.
176  * @pre None.
177  * @post None.
178  * @param [in] landmark - a #LocationLandmark
179  * @param [in] category - a GList
180  * @return gboolean
181  * @retval  TRUE if success
182  * @see location_landmark_get_category
183  */
184 gboolean location_landmark_set_category (const LocationLandmark *landmark, GList *category);
185
186 /**
187  * @brief Set the phone number of the given #LocationLandmark
188  * @remarks The previous phone number of the #LocationLandmark will be removed if a number is NULL.
189  * @pre None.
190  * @post None.
191  * @param [in] landmark - a #LocationLandmark
192  * @param [in] number - a gchar
193  * @return gboolean
194  * @retval  TRUE if success
195  * @see location_landmark_get_phone_number
196  */
197 gboolean location_landmark_set_phone_number (const LocationLandmark *landmark, const gchar *number);
198
199 /**
200  * @brief Set the property data of the given #LocationLandmark
201  * @remarks The previous value of the #LocationLandmark matching to key will be removed if a value is NULL.
202  * @pre None.
203  * @post None.
204  * @param [in] landmark - a #LocationLandmark
205  * @param [in] key - a gconstpointer
206  * @param [in] value - a gconstpointer
207  * @return gboolean
208  * @retval  TRUE if success
209  * @see location_landmark_get_property
210  */
211 gboolean location_landmark_set_property (const LocationLandmark *landmark, gconstpointer key, gconstpointer value);
212
213 /**
214  * @brief Set url of the given #LocationLandmarkUrl
215  * @remarks The previous url path of the #LocationLandmarkUrl will be removed if a path is NULL.
216  * @pre None.
217  * @post None.
218  * @param [in] url - a #LocationLandmarkUrl
219  * @param [in] path - a gchar
220  * @return gboolean
221  * @retval  TRUE if success
222  * @see location_landmark_url_get_url_path
223  */
224 gboolean location_landmark_url_set_url_path (LocationLandmarkUrl *url, const gchar *path);
225
226 /**
227  * @brief Set the description of the given #LocationLandmarkUrl
228  * @remarks The previous description of the #LocationLandmarkUrl will be removed if a desc is NULL.
229  * @pre None.
230  * @post None.
231  * @param [in] url - a #LocationLandmarkUrl
232  * @param [in] desc - a gchar
233  * @return gboolean
234  * @retval  TRUE if success
235  * @see location_landmark_url_get_description
236  */
237 gboolean location_landmark_url_set_description (LocationLandmarkUrl *url, const gchar *desc);
238
239 /**
240  * @} @}
241  */
242
243 G_END_DECLS
244
245 #endif
246
247