1 /*******************************************************************************
2 * Copyright 2019 Samsung Electronics 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.
16 *******************************************************************************/
18 #ifndef __ORCHESTRATION_CLIENT_H__
19 #define __ORCHESTRATION_CLIENT_H__
30 ORCH_CLIENT_ERROR_NONE = 0,
31 ORCH_CLIENT_ERROR_INVALID_PARAMETER,
32 ORCH_CLIENT_ERROR_FAULT,
33 } orchestration_client_state_e;
37 ORCHESTRATION_SERVICE_STATUS_STARTED = 0,
38 ORCHESTRATION_SERVICE_STATUS_COMPLETED,
39 ORCHESTRATION_SERVICE_STATUS_FAILED,
40 ORCHESTRATION_SERVICE_STATUS_UNDEFINED_ERROR,
41 } orchestration_service_status_e;
43 #define MAX_SVC_INFO_NUM 3
53 service_info_s services[MAX_SVC_INFO_NUM];
54 } orchestration_service_info_s;
61 } orchestration_devicelist_s;
67 } orchestration_device_capability_s;
69 typedef void (*orchestration_changed_service_status_cb)(orchestration_service_status_e staus, void *user_data);
71 orchestration_client_state_e orchestration_get_devicelist(char *service_name,
73 orchestration_devicelist_s** deviceList);
75 orchestration_client_state_e orchestration_read_capability(char *ip, orchestration_device_capability_s **device_capability);
77 orchestration_client_state_e orchestration_write_capability(char *capability);
79 orchestration_client_state_e orchestration_request_service(char *app_name,
81 orchestration_service_info_s service_info,
82 orchestration_changed_service_status_cb cb,
85 orchestration_client_state_e orchestration_request_service_on_device(char *app_name,
87 orchestration_service_info_s service_info,
89 orchestration_changed_service_status_cb cb,
96 #endif /* __ORCHESTRATION_CLIENT_H__ */