clean up for 2.0 beta
[platform/core/multimedia/libmm-player.git] / src / include / mm_player_attrs.h
1 /*
2  * libmm-player
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: JongHyuk Choi <jhchoi.choi@samsung.com>, YeJin Cho <cho.yejin@samsung.com>, YoungHwan An <younghwan_.an@samsung.com>
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21
22 #ifndef __MM_PLAYER_ATTRS_H__
23 #define __MM_PLAYER_ATTRS_H__
24
25 #ifdef __cplusplus
26         extern "C" {
27 #endif
28
29 /**
30  * This function set values of attributes.
31  *
32  * @param[in]   handle                  Handle of player.
33  * @param[in]   err_atr_name            Name of attribute that is failed (NULL can be set if it's not require to check. )
34  * @param[in]   attribute_name  Name of the first attribute to set
35  * @param[in]   args_list                       List of attributes and values
36  * @return      This function returns zero on success, or negative value with error code.
37  * @remarks
38  * @see         _mmplayer_get_attribute()
39  *
40  */
41 int _mmplayer_set_attribute(MMHandleType handle,  char **err_atr_name, const char *attribute_name, va_list args_list);
42 /**
43  * This function get values of attributes.
44  *
45  * @param[in]   handle                  Handle of player.
46  * @param[in]   err_atr_name            Name of attribute that is failed (NULL can be set if it's not require to check. )
47  * @param[in]   attribute_name  Name of the first attribute to set
48  * @param[in]   args_list                       List of attributes and values
49  * @return      This function returns zero on success, or negative value with error code.
50  * @remarks
51  * @see         _mmplayer_set_attribute()
52  *
53  */
54 int _mmplayer_get_attribute(MMHandleType handle,  char **err_atr_name, const char *attribute_name, va_list args_list);
55 /**
56  * This function get configuration values of attribute.
57  *
58  * @param[in]   handle                  Handle of player.
59  * @param[in]   attribute_name  Name of the first attribute to set
60  * @param[in]   info                            Configuration values
61  * @return      This function returns zero on success, or negative value with error code.
62  * @remarks
63  * @see
64  *
65  */
66 int _mmplayer_get_attribute_info(MMHandleType handle,  const char *attribute_name, MMPlayerAttrsInfo *info);
67 /**
68  * This function allocates structure of attributes and sets initial values.
69  *
70  * @param[in]   handle          Handle of player.
71  * @return      This function returns allocated structure of attributes.
72  * @remarks
73  * @see         _mmplayer_deconstruct_attribute()
74  *
75  */
76 MMHandleType _mmplayer_construct_attribute(MMHandleType handle);
77 /**
78  * This function release allocated attributes.
79  *
80  * @param[in]   handle          Handle of player.
81  * @return      This function returns true on success or false on failure.
82  * @remarks
83  * @see         _mmplayer_construct_attribute()
84  *
85  */
86 bool _mmplayer_deconstruct_attribute(MMHandleType handle);
87
88 #ifdef __cplusplus
89         }
90 #endif
91
92 #endif /* __MM_PLAYER_ATTRS_H__ */