Fix API description
[platform/core/api/application.git] / doc / appfw_resource_manager_doc.h
1 /*
2  * Copyright (c) 2015 - 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #ifndef __TIZEN_APPFW_APP_RESOURCE_MANAGER_DOC_H__
18 #define __TIZEN_APPFW_APP_RESOURCE_MANAGER_DOC_H__
19
20 /**
21  * @ingroup CAPI_APPLICATION_MODULE
22  * @defgroup CAPI_RESOURCE_MANAGER_MODULE Resource Manager
23  * @brief The @ref CAPI_RESOURCE_MANAGER_MODULE API provides functions to get/set the common resource for multiple devices.
24  * @section CAPI_RESOURCE_MANAGER_MODULE_HEADER Required Header
25  * \#include <app_resource_manager.h>
26  *
27  * @section CAPI_RESOURCE_MANAGER_MODULE_OVERVIEW Overview
28  * The @ref CAPI_RESOURCE_MANAGER_MODULE API provides functions to use different resources(images, layout, sounds) between each device having different device specifications.
29  * For example, if you want to change button image of the application depending on the device's current language setting, put resource files into different folders which are managed by SDK as the same filename.
30  * Then call app_resource_manager_get() with resource ID described below to get the appropriate resource filepath, then OS will choose resources for specific devices.
31  * You should get the path of the resource file that is managed by the resource manager with app_resource_manager_get() API.
32  * Tizen may remove unnecessary resource files for a certain device, so you may fail to access if you access the resource file with the path that is not recieved with app_resource_manager_get() API.
33  * Make sure app_resource_manager_init() should be called first and app_resource_manager_release should be called after using resource manager.
34  *
35  * @section CAPI_RESOURCE_MANAGER_MODULE_RESOURCE_ID Resource ID
36  * Resource ID is an identifier for specific resource. It consists of sub directories and filename including its extension.
37  * Same resources are located at different locations with same filename for supporting multiple devices.
38  * If you want to get actual filename with given resourceID, refer app_resource_manager_get().
39  *
40  * @section CAPI_RESOURCE_MANAGER_MODULE_RESOURCE_TYPE Resource Type
41  * For now, 4 resource types are supported.
42  * Resource which has same resource type are grouped as folder.
43  * Folder name is irrelevant with its actual resource type.
44  * The managed folders for each type will be generated by SDK tools.
45  * In source codes, you can use resource types listed below.
46  * (Types will be added for further needs)
47  * <table>
48  * <tr>
49  * <th>TYPE</th>
50  * <th>Description</th>
51  * </tr>
52  * <tr>
53  * <td>RSC_TYPE_IMAGE</td>
54  * <td>Image resources.</td>
55  * </tr>
56  * <tr>
57  * <td>RSC_TYPE_LAYOUT</td>
58  * <td>Application's layout to be displayed.</td>
59  * </tr>
60  * <tr>
61  * <td>RSC_TYPE_SOUND</td>
62  * <td>Sound, audio resources.</td>
63  * </tr>
64  * <tr>
65  * <td>RSC_TYPE_BIN</td>
66  * <td>All other resources to be needed, but not specified above.</td>
67  * </tr>
68  * </table>
69  *
70  * @subsection CAPI_RESOURCE_MANAGER_MODULE_MATCHING_ALGORITHM Matching Algorithm
71  *
72  * @image html capi_appfw_application_resource.png "Matching Algorithm"
73  */
74
75 #endif /* __TIZEN_APPFW_APP_RESOURCE_MANAGER_DOC_H__ */
76