26 #ifndef MICROPY_INCLUDED_PY_STREAM_H 27 #define MICROPY_INCLUDED_PY_STREAM_H 32 #define MP_STREAM_ERROR ((mp_uint_t)-1) 35 #define MP_STREAM_FLUSH (1) 36 #define MP_STREAM_SEEK (2) 37 #define MP_STREAM_POLL (3) 39 #define MP_STREAM_TIMEOUT (5) // Get/set timeout (single op) 40 #define MP_STREAM_GET_OPTS (6) // Get stream options 41 #define MP_STREAM_SET_OPTS (7) // Set stream options 42 #define MP_STREAM_GET_DATA_OPTS (8) // Get data/message options 43 #define MP_STREAM_SET_DATA_OPTS (9) // Set data/message options 46 #define MP_STREAM_POLL_RD (0x0001) 47 #define MP_STREAM_POLL_WR (0x0004) 48 #define MP_STREAM_POLL_ERR (0x0008) 49 #define MP_STREAM_POLL_HUP (0x0010) 61 #define MP_SEEK_SET (0) 62 #define MP_SEEK_CUR (1) 63 #define MP_SEEK_END (2) 78 #define MP_STREAM_OP_READ (1) 79 #define MP_STREAM_OP_WRITE (2) 80 #define MP_STREAM_OP_IOCTL (4) 91 #define MP_STREAM_RW_READ 0 92 #define MP_STREAM_RW_WRITE 2 93 #define MP_STREAM_RW_ONCE 1 95 #define mp_stream_write_exactly(stream, buf, size, err) mp_stream_rw(stream, (byte*)buf, size, err, MP_STREAM_RW_WRITE) 96 #define mp_stream_read_exactly(stream, buf, size, err) mp_stream_rw(stream, buf, size, err, MP_STREAM_RW_READ) 100 #if MICROPY_STREAMS_POSIX_API 102 ssize_t mp_stream_posix_write(
mp_obj_t stream,
const void *buf,
size_t len);
104 off_t mp_stream_posix_lseek(
mp_obj_t stream, off_t offset,
int whence);
105 int mp_stream_posix_fsync(
mp_obj_t stream);
108 #if MICROPY_STREAMS_NON_BLOCK 109 #define mp_is_nonblocking_error(errno) ((errno) == EAGAIN || (errno) == EWOULDBLOCK) 111 #define mp_is_nonblocking_error(errno) (0) 114 #endif // MICROPY_INCLUDED_PY_STREAM_H
MP_DECLARE_CONST_FUN_OBJ_2(mp_stream_write1_obj)
mp_uint_t mp_stream_rw(mp_obj_t stream, void *buf, mp_uint_t size, int *errcode, byte flags)
const mp_stream_p_t * mp_get_stream_raise(mp_obj_t self_in, int flags)
MP_DECLARE_CONST_FUN_OBJ_1(mp_stream_unbuffered_readlines_obj)
MP_DECLARE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_read_obj)
mp_obj_t mp_stream_unbuffered_iter(mp_obj_t self)
void mp_stream_write_adaptor(void *self, const char *buf, size_t len)
mp_obj_t mp_stream_close(mp_obj_t stream)
mp_obj_t mp_stream_write(mp_obj_t self_in, const void *buf, size_t len, byte flags)