#ifndef ZIVUOS_PIPE_H_INCLUDED #define ZIVUOS_PIPE_H_INCLUDED #include #include #include "porttypes.h" typedef struct zv_pipe_s { void *content; bool changed; } zv_pipe_t; zv_pipe_t * zv_pipe_create(); void zv_pipe_init(zv_pipe_t *); void zv_pipe_delete(zv_pipe_t *); bool zv_pipe_is_changed(zv_pipe_t *); intptr_t zv_pipe_read_number(zv_pipe_t *); void * zv_pipe_read_content(zv_pipe_t *); void zv_pipe_write_number(zv_pipe_t *, intptr_t); void zv_pipe_write_content(zv_pipe_t *, void *); #ifdef USING_NAMESPACE_ZV #define pipe_is_changed zv_pipe_is_changed #define pipe_create zv_pipe_create #define pipe_init zv_pipe_init #define pipe_delete zv_pipe_delete #define pipe_read_number zv_pipe_read_number #define pipe_read_content zv_pipe_read_content #define pipe_write_number zv_pipe_write_number #define pipe_write_content zv_pipe_write_content typedef zv_pipe_t pipe_t; #endif #endif