Tizen IoT Extension SDK 1.0
1.0.1
|
00001 /***************************************************************** 00002 * 00003 * Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved 00004 * 00005 * Licensed under the Apache License, Version 2.0 (the "License"); 00006 * you may not use this file except in compliance with the License. 00007 * You may obtain a copy of the License at 00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.0 00010 * 00011 * Unless required by applicable law or agreed to in writing, software 00012 * distributed under the License is distributed on an "AS IS" BASIS, 00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00014 * See the License for the specific language governing permissions and 00015 * limitations under the License. 00016 * 00017 ******************************************************************/ 00018 00019 00020 #ifndef __SAMSUNG_EXPERIENCE_SERVICE_SMARTTHINGS_PAYLOAD_H__ 00021 #define __SAMSUNG_EXPERIENCE_SERVICE_SMARTTHINGS_PAYLOAD_H__ 00022 00023 #include <stdio.h> 00024 #include <stdlib.h> 00025 #include <stdbool.h> 00026 00027 #ifdef __cplusplus 00028 extern "C" { 00029 #endif 00030 00044 typedef struct smartthings_payload_s *smartthings_payload_h; 00045 00064 int smartthings_payload_create(smartthings_payload_h *payload); 00065 00081 int smartthings_payload_destroy(smartthings_payload_h payload); 00082 00099 int smartthings_payload_set_int(smartthings_payload_h payload, const char *attr_name, int value); 00100 00117 int smartthings_payload_set_bool(smartthings_payload_h payload, const char *attr_name, bool value); 00118 00135 int smartthings_payload_set_double(smartthings_payload_h payload, const char *attr_name, double value); 00136 00153 int smartthings_payload_set_string(smartthings_payload_h payload, const char *attr_name, const char *value); 00154 00173 int smartthings_payload_set_byte_string(smartthings_payload_h payload, const char *attr_name, const char *value, unsigned int length); 00174 00192 int smartthings_payload_set_object(smartthings_payload_h payload, const char *attr_name, smartthings_payload_h value); 00193 00211 int smartthings_payload_set_int_array(smartthings_payload_h payload, const char *attr_name, const int *array, unsigned int length); 00212 00230 int smartthings_payload_set_bool_array(smartthings_payload_h payload, const char *attr_name, const bool *array, unsigned int length); 00231 00249 int smartthings_payload_set_double_array(smartthings_payload_h payload, const char *attr_name, const double *array, unsigned int length); 00250 00268 int smartthings_payload_set_string_array(smartthings_payload_h payload, const char *attr_name, const char **array, unsigned int length); 00269 00288 int smartthings_payload_set_object_array(smartthings_payload_h payload, const char *attr_name, smartthings_payload_h *array, unsigned int length); 00289 00307 int smartthings_payload_add_collection_object(smartthings_payload_h payload, const char *resource_uri, smartthings_payload_h value); 00308 00325 int smartthings_payload_get_int(smartthings_payload_h payload, const char *attr_name, int *value); 00326 00343 int smartthings_payload_get_bool(smartthings_payload_h payload, const char *attr_name, bool *value); 00344 00361 int smartthings_payload_get_double(smartthings_payload_h payload, const char *attr_name, double *value); 00362 00380 int smartthings_payload_get_string(smartthings_payload_h payload, const char *attr_name, char **value); 00381 00400 int smartthings_payload_get_byte_string(smartthings_payload_h payload, const char *attr_name, char **value, unsigned int *length); 00401 00421 int smartthings_payload_get_object(smartthings_payload_h payload, const char *attr_name, smartthings_payload_h *value); 00422 00444 int smartthings_payload_get_int_array(smartthings_payload_h payload, const char *attr_name, int **array, unsigned int *length); 00445 00467 int smartthings_payload_get_bool_array(smartthings_payload_h payload, const char *attr_name, bool **array, unsigned int *length); 00468 00490 int smartthings_payload_get_double_array(smartthings_payload_h payload, const char *attr_name, double **array, unsigned int *length); 00491 00513 int smartthings_payload_get_string_array(smartthings_payload_h payload, const char *attr_name, char ***array, unsigned int *length); 00514 00537 int smartthings_payload_get_object_array(smartthings_payload_h payload, const char *attr_name, smartthings_payload_h **array, unsigned int *length); 00538 00558 int smartthings_payload_get_collection_object(smartthings_payload_h payload, const char *resource_uri, smartthings_payload_h *value); 00559 00573 int smartthings_payload_release_int_array(int *array); 00574 00588 int smartthings_payload_release_bool_array(bool *array); 00589 00603 int smartthings_payload_release_double_array(double *array); 00604 00619 int smartthings_payload_release_string_array(char **array, unsigned int length); 00620 00635 int smartthings_payload_release_object_array(smartthings_payload_h *array, unsigned int length); 00636 00653 int smartthings_payload_release_object(smartthings_payload_h payload); 00654 00659 #ifdef __cplusplus 00660 } 00661 #endif 00662 00663 #endif /* __SAMSUNG_EXPERIENCE_SERVICE_SMARTTHINGS_PAYLOAD_H__ */