2018-10-29 11:06:58 +08:00
|
|
|
/*
|
2021-03-08 18:19:04 +08:00
|
|
|
* Copyright (c) 2006-2021, RT-Thread Development Team
|
2018-10-29 11:06:58 +08:00
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
|
|
*
|
|
|
|
* Change Logs:
|
|
|
|
* Date Author Notes
|
|
|
|
*/
|
|
|
|
|
2017-10-17 22:27:06 +08:00
|
|
|
#ifndef DFS_POLL_H__
|
|
|
|
#define DFS_POLL_H__
|
|
|
|
|
|
|
|
#include <rtthread.h>
|
|
|
|
|
|
|
|
#ifdef RT_USING_POSIX
|
|
|
|
#include <sys/time.h> /* for struct timeval */
|
|
|
|
|
2018-11-01 18:20:03 +08:00
|
|
|
#if !defined(POLLIN) && !defined(POLLOUT)
|
2017-10-17 22:27:06 +08:00
|
|
|
#define POLLIN (0x01)
|
|
|
|
#define POLLRDNORM (0x01)
|
|
|
|
#define POLLRDBAND (0x01)
|
|
|
|
#define POLLPRI (0x01)
|
|
|
|
|
|
|
|
#define POLLOUT (0x02)
|
|
|
|
#define POLLWRNORM (0x02)
|
|
|
|
#define POLLWRBAND (0x02)
|
|
|
|
|
|
|
|
#define POLLERR (0x04)
|
|
|
|
#define POLLHUP (0x08)
|
|
|
|
#define POLLNVAL (0x10)
|
|
|
|
|
|
|
|
typedef unsigned int nfds_t;
|
|
|
|
|
|
|
|
struct pollfd
|
|
|
|
{
|
|
|
|
int fd;
|
|
|
|
short events;
|
|
|
|
short revents;
|
|
|
|
};
|
2018-11-02 10:23:29 +08:00
|
|
|
#endif /* !defined(POLLIN) && !defined(POLLOUT) */
|
2017-10-17 22:27:06 +08:00
|
|
|
|
2018-11-01 18:20:03 +08:00
|
|
|
#define POLLMASK_DEFAULT (POLLIN | POLLOUT | POLLRDNORM | POLLWRNORM)
|
|
|
|
int poll(struct pollfd *fds, nfds_t nfds, int timeout);
|
|
|
|
#endif /* RT_USING_POSIX */
|
2017-10-17 22:27:06 +08:00
|
|
|
|
2018-11-01 18:20:03 +08:00
|
|
|
#endif /* DFS_POLL_H__ */
|