Rebase code with tizen 2.3 with following additional changes
[platform/core/multimedia/libmm-sound.git] / include / mm_sound_msg.h
1 /*
2  * libmm-sound
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Seungbae Shin <seungbae.shin@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_SOUND_MSG_H__
23 #define __MM_SOUND_MSG_H__
24
25 #include <sys/time.h>
26 #include <unistd.h>
27 #include <mm_ipc.h>
28
29 #define KEY_BASE_PATH   "/tmp"
30 #define RCV_MSG 0x21    /* rcv key */
31 #define SND_MSG 0x24    /* snd key */
32 #define CB_MSG   0x64           /* cb key */
33
34 #define MEMTYPE_SUPPORT_MAX (1024 * 1024) /* 1MB */
35
36 enum {
37         MM_SOUND_MSG_REQ_FILE = 1,
38         MM_SOUND_MSG_REQ_MEMORY = 2,
39         MM_SOUND_MSG_REQ_STOP = 3,
40         MM_SOUND_MSG_RES_FILE = 4,
41         MM_SOUND_MSG_RES_MEMORY = 5,
42         MM_SOUND_MSG_RES_STOP = 6,
43         MM_SOUND_MSG_INF_STOP_CB = 7,
44         MM_SOUND_MSG_RES_ERROR = 8,
45         MM_SOUND_MSG_INF_DESTROY_CB = 9,
46 #ifdef PULSE_CLIENT
47         MM_SOUND_MSG_REQ_GET_AUDIO_ROUTE = 16,
48         MM_SOUND_MSG_RES_GET_AUDIO_ROUTE = 17,
49         MM_SOUND_MSG_REQ_SET_AUDIO_ROUTE = 18,
50         MM_SOUND_MSG_RES_SET_AUDIO_ROUTE = 19,
51 #endif // PULSE_CLIENT
52         MM_SOUND_MSG_REQ_IS_BT_A2DP_ON = 20,
53         MM_SOUND_MSG_RES_IS_BT_A2DP_ON = 21,
54         MM_SOUND_MSG_REQ_DTMF  = 22,
55         MM_SOUND_MSG_RES_DTMF = 23,
56         MM_SOUND_MSG_REQ_IS_ROUTE_AVAILABLE,
57         MM_SOUND_MSG_RES_IS_ROUTE_AVAILABLE,
58         MM_SOUND_MSG_REQ_FOREACH_AVAILABLE_ROUTE_CB,
59         MM_SOUND_MSG_RES_FOREACH_AVAILABLE_ROUTE_CB,
60         MM_SOUND_MSG_INF_FOREACH_AVAILABLE_ROUTE_CB,
61         MM_SOUND_MSG_REQ_SET_ACTIVE_ROUTE,
62         MM_SOUND_MSG_RES_SET_ACTIVE_ROUTE,
63         MM_SOUND_MSG_REQ_SET_ACTIVE_ROUTE_AUTO,
64         MM_SOUND_MSG_RES_SET_ACTIVE_ROUTE_AUTO,
65         MM_SOUND_MSG_REQ_GET_ACTIVE_DEVICE,
66         MM_SOUND_MSG_RES_GET_ACTIVE_DEVICE,
67         MM_SOUND_MSG_REQ_ADD_ACTIVE_DEVICE_CB,
68         MM_SOUND_MSG_RES_ADD_ACTIVE_DEVICE_CB,
69         MM_SOUND_MSG_REQ_REMOVE_ACTIVE_DEVICE_CB,
70         MM_SOUND_MSG_RES_REMOVE_ACTIVE_DEVICE_CB,
71         MM_SOUND_MSG_INF_ACTIVE_DEVICE_CB,
72         MM_SOUND_MSG_REQ_ADD_AVAILABLE_ROUTE_CB,
73         MM_SOUND_MSG_RES_ADD_AVAILABLE_ROUTE_CB,
74         MM_SOUND_MSG_REQ_REMOVE_AVAILABLE_ROUTE_CB,
75         MM_SOUND_MSG_RES_REMOVE_AVAILABLE_ROUTE_CB,
76         MM_SOUND_MSG_INF_AVAILABLE_ROUTE_CB,
77         MM_SOUND_MSG_REQ_ADD_VOLUME_CB,
78         MM_SOUND_MSG_RES_ADD_VOLUME_CB,
79         MM_SOUND_MSG_REQ_REMOVE_VOLUME_CB,
80         MM_SOUND_MSG_RES_REMOVE_VOLUME_CB,
81         MM_SOUND_MSG_INF_VOLUME_CB,
82         MM_SOUND_MSG_REQ_SET_PATH_FOR_ACTIVE_DEVICE,
83         MM_SOUND_MSG_RES_SET_PATH_FOR_ACTIVE_DEVICE,
84         MM_SOUND_MSG_REQ_GET_AUDIO_PATH,
85         MM_SOUND_MSG_RES_GET_AUDIO_PATH,
86         MM_SOUND_MSG_REQ_ADD_DEVICE_CONNECTED_CB,
87         MM_SOUND_MSG_RES_ADD_DEVICE_CONNECTED_CB,
88         MM_SOUND_MSG_REQ_REMOVE_DEVICE_CONNECTED_CB,
89         MM_SOUND_MSG_RES_REMOVE_DEVICE_CONNECTED_CB,
90         MM_SOUND_MSG_INF_DEVICE_CONNECTED_CB,
91         MM_SOUND_MSG_REQ_ADD_DEVICE_INFO_CHANGED_CB,
92         MM_SOUND_MSG_RES_ADD_DEVICE_INFO_CHANGED_CB,
93         MM_SOUND_MSG_REQ_REMOVE_DEVICE_INFO_CHANGED_CB,
94         MM_SOUND_MSG_RES_REMOVE_DEVICE_INFO_CHANGED_CB,
95         MM_SOUND_MSG_INF_DEVICE_INFO_CHANGED_CB,
96         MM_SOUND_MSG_REQ_GET_CONNECTED_DEVICE_LIST,
97         MM_SOUND_MSG_RES_GET_CONNECTED_DEVICE_LIST,
98 };
99
100 #define DSIZE sizeof(mm_ipc_msg_t)-sizeof(long) /* data size for rcv & snd */
101
102 #endif /* __MM_SOUND_MSG_H__  */
103