132 char *nul_term = NULL;
134 int state = atoi(nul_term);
137 if (state != srv_data->
state) {
180 demo_adapter->
context = context;
185 if ((rc =
hpd_module_add_option(context,
"num-lamps",
"count", 0,
"Number of lamps to create. Default 1.")))
188 *data = demo_adapter;
333 for (
int i = 0; i < demo_adapter->
num_lamps; i++) {
396 if (strcmp(name,
"num-lamps") == 0) {
static hpd_status_t demo_adapter_set_value(hpd_request_t *req, demo_adapter_srv_t *srv_data)
[changed]
enum hpd_status hpd_status_t
const hpd_module_t * context
hpd_error_t hpd_service_set_actions(hpd_service_t *service,...)
static hpd_error_t demo_adapter_create_adapter(hpd_t *hpd, demo_adapter_t *demo_adapter)
[on_destroy]
static hpd_error_t demo_adapter_on_stop(void *data, hpd_t *hpd)
[on_start]
hpd_error_t hpd_response_alloc(hpd_response_t **response, hpd_request_t *request, hpd_status_t status)
[hpd_request_t functions]
#define HPD_SPRINTF_ALLOC(DST, FMT,...)
hpd_error_t hpd_adapter_attach(hpd_t *hpd, hpd_adapter_t *adapter)
static hpd_status_t demo_adapter_send_value(hpd_request_t *req, demo_adapter_srv_t *srv_data)
[definition]
hpd_error_t hpd_parameter_attach(hpd_service_t *service, hpd_parameter_t *parameter)
hpd_error_t hpd_device_free(hpd_device_t *device)
hpd_error_t hpd_module_add_option(const hpd_module_t *context, const char *name, const char *arg, int flags, const char *doc)
[hpd_t functions]
hpd_error_t hpd_value_get_body(const hpd_value_t *value, const char **body, size_t *len)
static hpd_status_t demo_adapter_on_put(void *data, hpd_request_t *req)
[on_get]
hpd_error_t hpd_request_get_service(const hpd_request_t *req, const hpd_service_id_t **id)
[hpd_parameter_t functions]
static hpd_error_t demo_adapter_on_parse_opt(void *data, const char *name, const char *arg)
[on_stop]
static hpd_error_t demo_adapter_on_create(void **data, const hpd_module_t *context)
[types]
hpd_error_t hpd_parameter_free(hpd_parameter_t *parameter)
hpd_error_t hpd_service_set_data(hpd_service_t *service, void *data, hpd_free_f on_free)
static hpd_error_t demo_adapter_create_parameter(demo_adapter_t *demo_adapter, hpd_service_t *service)
[create_adapter]
struct hpd_module_def hpd_demo_adapter_def
[file]
hpd_error_t hpd_adapter_detach(const hpd_adapter_id_t *id, hpd_adapter_t **adapter)
#define HPD_STR_N_CPY(DST, SRC, LEN)
static hpd_error_t demo_adapter_on_destroy(void *data)
[on_create]
hpd_error_t hpd_adapter_id_alloc(hpd_adapter_id_t **id, hpd_t *hpd, const char *aid)
[log functions]
hpd_error_t hpd_device_alloc(hpd_device_t **device, const char *id)
[hpd_adapter_t functions]
hpd_error_t hpd_response_set_value(hpd_response_t *response, hpd_value_t *value)
#define HPD_LOG_INFO(CONTEXT, FMT,...)
#define HPD_CALLOC(PTR, NUM, CAST)
Allocates and zeros a structure.
demo_adapter_t * demo_adapter
hpd_error_t hpd_module_get_id(const hpd_module_t *context, const char **id)
hpd_error_t hpd_adapter_alloc(hpd_adapter_t **adapter, const char *id)
[hpd_adapter_t functions]
static hpd_error_t demo_adapter_on_start(void *data, hpd_t *hpd)
[create_lamp]
hpd_error_t hpd_device_attach(const hpd_adapter_id_t *id, hpd_device_t *device)
enum hpd_error hpd_error_t
#define HPD_LOG_RETURN_E_ALLOC(CONTEXT)
hpd_error_t hpd_service_free(hpd_service_t *service)
static hpd_error_t demo_adapter_create_service(demo_adapter_t *demo_adapter, hpd_device_t *device)
[create_parameter]
[Application API Callbacks]
#define HPD_LOG_RETURN_E_SNPRINTF(CONTEXT)
hpd_adapter_id_t * adapter_id
hpd_error_t hpd_respond(hpd_response_t *response)
hpd_error_t hpd_device_set_attr(hpd_device_t *device, const char *key, const char *val)
static hpd_error_t demo_adapter_send_changed(const hpd_service_id_t *service_id, demo_adapter_srv_t *srv_data)
[send]
hpd_error_t hpd_value_free(hpd_value_t *value)
static const char *const HPD_ATTR_TYPE
Default attribute key for types.
state
The possible states of a request.
static hpd_error_t demo_adapter_create_lamp(demo_adapter_t *demo_adapter, const char *id)
[create_service]
hpd_error_t hpd_adapter_id_free(hpd_adapter_id_t *id)
hpd_error_t hpd_adapter_free(hpd_adapter_t *adapter)
static hpd_status_t demo_adapter_on_get(void *data, hpd_request_t *req)
[set]
hpd_error_t hpd_service_alloc(hpd_service_t **service, const char *id)
[hpd_device_t functions]
hpd_error_t hpd_service_attach(hpd_device_t *device, hpd_service_t *service)
hpd_error_t hpd_adapter_set_attr(hpd_adapter_t *adapter, const char *key, const char *val)
hpd_error_t hpd_value_allocf(hpd_value_t **value, const char *fmt,...)
hpd_error_t hpd_response_free(hpd_response_t *response)
hpd_error_t hpd_request_get_value(const hpd_request_t *req, const hpd_value_t **value)
#define HPD_LOG_ERROR(CONTEXT, FMT,...)
hpd_error_t hpd_parameter_alloc(hpd_parameter_t **parameter, const char *id)
[hpd_service_t functions]
hpd_error_t hpd_changed(const hpd_service_id_t *id, hpd_value_t *val)
[hpd_response_t functions]