2 * Copyright (c) 2011-2018 Samsung Electronics Co., Ltd All Rights Reserved
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 #ifndef __VOICE_CONTROL_MANAGER_INTERNAL_H__
19 #define __VOICE_CONTROL_MANAGER_INTERNAL_H__
21 #include <voice_control_command.h>
22 #include <voice_control_command_expand.h>
23 #include <voice_control_common.h>
31 VC_SYSTEM_VOLUME_EVENT_CHANGE_FOR_NEARFIELD,
32 VC_SYSTEM_VOLUME_EVENT_CHANGE_FOR_FARFIELD
33 } vc_system_volume_event_e;
35 #define VC_SERVICE_STATE_UPDATING 5 /**< 'Updating' state */
38 * @brief Sets demandable client list.
40 * @param[in] rule demandable client list rule path
42 * @return 0 on success, otherwise a negative error value
43 * @retval #VC_ERROR_NONE Successful
44 * @retval #VC_ERROR_INVALID_PARAMETER Invalid parameter
45 * @retval #VC_ERROR_INVALID_STATE Invalid state
46 * @retval #VC_ERROR_OPERATION_FAILED Operation failure
47 * @retval #VC_ERROR_PERMISSION_DENIED Permission denied
48 * @retval #VC_ERROR_NOT_SUPPORTED VC not supported
50 * @pre The state should be #VC_STATE_READY.
52 * @see vc_mgr_get_demandable_client_rule()
54 int vc_mgr_set_demandable_client_rule(const char* rule);
57 * @brief Gets demandable client list.
59 * @return 0 on success, otherwise a negative error value
60 * @retval #VC_ERROR_NONE Successful
61 * @retval #VC_ERROR_INVALID_STATE Invalid state
62 * @retval #VC_ERROR_PERMISSION_DENIED Permission denied
63 * @retval #VC_ERROR_NOT_SUPPORTED VC not supported
65 * @pre The state should be #VC_STATE_READY.
67 * @see vc_mgr_set_demandable_client_rule()
69 int vc_mgr_unset_demandable_client_rule(void);
72 * @brief Sets domain such as agent or device type.
75 * @param[in] domain Available agent or device type
77 * @return 0 on success, otherwise a negative error value
78 * @retval #VC_ERROR_NONE Successful
79 * @retval #VC_ERROR_INVALID_PARAMETER Invalid parameter
80 * @retval #VC_ERROR_INVALID_STATE Invalid state
81 * @retval #VC_ERROR_PERMISSION_DENIED Permission denied
82 * @retval #VC_ERROR_NOT_SUPPORTED VC not supported
84 * @pre The service state should be #VC_SERVICE_STATE_READY.
86 int vc_mgr_set_domain(const char* domain);
89 * @brief Changes system volume.
93 int vc_mgr_change_system_volume(vc_system_volume_event_e volume_event);
96 * @brief Recover system volume.
100 int vc_mgr_recover_system_volume();
110 #endif /* __VOICE_CONTROL_MANAGER_INTERNAL_H__ */