Add EXTENDED_INTERNAL type for extended internal storage
[platform/core/system/libstorage.git] / include / storage-experimental.h
1 /*
2  * storage
3  * Copyright (c) 2016 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 #ifndef __STORAGE_EXPERIMENTAL_H__
20 #define __STORAGE_EXPERIMENTAL_H__
21
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25
26
27 /**
28  * @addtogroup CAPI_SYSTEM_STORAGE_MODULE
29  * @{
30  */
31
32 #include <tizen.h>
33
34 #define STORAGE_ERROR_NO_DEVICE TIZEN_ERROR_NO_SUCH_DEVICE
35
36 /**
37  * @brief Get the type and the kind of external device for given storage id.
38  *
39  * @since_tizen 3.0
40  *
41  * @param[in] storage_id The storage id
42  * @param[out] type The storage @a type (internal or external).
43  * @param[out] dev The storage device for external storage. If @a type is #STORAGE_TYPE_INTERNAL, then value of @a dev should be ignored.
44  *
45  * @return @c 0 on success,
46  *         otherwise a negative error value
47  *
48  * @retval #STORAGE_ERROR_NONE               Successful
49  * @retval #STORAGE_ERROR_INVALID_PARAMETER  Invalid parameter
50  * @retval #STORAGE_ERROR_OUT_OF_MEMORY      Out of memory
51  * @retval #STORAGE_ERROR_NO_DEVICE          No such device
52  */
53 int storage_get_type_dev(int storage_id, storage_type_e *type, storage_dev_e *dev);
54
55 /**
56  * @}
57  */
58
59 #ifdef __cplusplus
60 }
61 #endif
62 #endif /* __STORAGE_EXPERIMENTAL_H__ */