5#include <cmrx/interface.h>
105#define COM_NOTIFICATION(name, argname) \
106static int __ ## name ## _handler(SELF, uint32_t argname);\
108static VTABLE struct ComNotificationVMT name ## _vmt = {\
109 &__ ## name ## _handler\
112static struct ComNotification name = {\
117static int __ ## name ## _handler(SELF, uint32_t argname)
143 int (*
read)(SELF, uint8_t * data,
unsigned max_len);
170 int (*
write)(SELF,
const uint8_t * data,
unsigned length);
196 int (*
read)(SELF, uint8_t * data,
unsigned max_len);
199 int (*
write)(SELF,
const uint8_t * data,
unsigned length);
__SYSCALL int CMRX_API() signal(int signo, void(*sighandler)(uint32_t))
Alias for signal_handler.
uint8_t Thread_t
Data type used for thread IDs.
Definition defines.h:72
Methods implemented by the interface of class ComChannel.
Definition com.h:195
void(* set_notify)(SELF, struct ComNotification *listener, uint32_t signal)
Definition com.h:198
bool(* ready)(SELF)
Definition com.h:197
int(* write)(SELF, const uint8_t *data, unsigned length)
Definition com.h:199
int(* read)(SELF, uint8_t *data, unsigned max_len)
Definition com.h:196
bool(* free)(SELF)
Definition com.h:200
Channel - bidirectional communication channel.
Definition com.h:212
const struct ComChannelVMT * vtable
Definition com.h:213
Interface of notification callback.
Definition com.h:125
int(* readable_notify)(SELF, uint32_t id)
Method for notifying external listener of read availability.
Definition com.h:127
Thread_t thread_id
Definition com.h:132
const struct ComNotificationVMT * vtable
Definition com.h:131
Methods implemented by the interface of class ComSink.
Definition com.h:169
int(* write)(SELF, const uint8_t *data, unsigned length)
Definition com.h:170
bool(* free)(SELF)
Definition com.h:171
Sink - write end of simplex channel.
Definition com.h:181
const struct ComSinkVMT * vtable
Definition com.h:182
Methods implemented by the interface of class ComSource.
Definition com.h:142
void(* set_notify)(SELF, struct ComNotification *listener, uint32_t signal)
Definition com.h:145
bool(* ready)(SELF)
Definition com.h:144
int(* read)(SELF, uint8_t *data, unsigned max_len)
Definition com.h:143
Source - read end of simplex channel.
Definition com.h:155
const struct ComSourceVMT * vtable
Definition com.h:156