ChibiOS/RT Architecture - Reference Manual - Guides |
I/O channels. More...
Go to the source code of this file.
Data Structures | |
struct | BaseChannelVMT |
BaseChannel virtual methods table. More... | |
struct | BaseChannel |
Base channel class. More... | |
struct | BaseAsynchronousChannelVMT |
BaseAsynchronousChannel virtual methods table. More... | |
struct | BaseAsynchronousChannel |
Base asynchronous channel class. More... | |
Defines | |
#define | _base_channel_methods |
BaseChannel specific methods. | |
#define | _base_channel_data _base_sequential_stream_data |
BaseChannel specific data. | |
#define | chIOPutWouldBlock(ip) ((ip)->vmt->putwouldblock(ip)) |
Channel output check. | |
#define | chIOGetWouldBlock(ip) ((ip)->vmt->getwouldblock(ip)) |
Channel input check. | |
#define | chIOPut(ip, b) ((ip)->vmt->put(ip, b, TIME_INFINITE)) |
Channel blocking byte write. | |
#define | chIOPutTimeout(ip, b, time) ((ip)->vmt->put(ip, b, time)) |
Channel blocking byte write with timeout. | |
#define | chIOGet(ip) ((ip)->vmt->get(ip, TIME_INFINITE)) |
Channel blocking byte read. | |
#define | chIOGetTimeout(ip, time) ((ip)->vmt->get(ip, time)) |
Channel blocking byte read with timeout. | |
#define | chIOWriteTimeout(ip, bp, n, time) ((ip)->vmt->writet(ip, bp, n, time)) |
Channel blocking write with timeout. | |
#define | chIOReadTimeout(ip, bp, n, time) ((ip)->vmt->readt(ip, bp, n, time)) |
Channel blocking read with timeout. | |
#define | _base_asynchronous_channel_methods _base_channel_methods |
BaseAsynchronousChannel specific methods. | |
#define | _base_asynchronous_channel_data |
BaseAsynchronousChannel specific data. | |
#define | chIOGetWriteEventSource(ip) (&((ip)->vmt->oevent)) |
Returns the write event source. | |
#define | chIOGetReadEventSource(ip) (&((ip)->vmt->ievent)) |
Returns the read event source. |
I/O channels.
This header defines abstract interfaces useful to access generic I/O resources in a standardized way.
Definition in file chioch.h.