![]() |
libzmq master
The Intelligent Transport Layer
|
00001 /* 00002 Copyright (c) 2010-2011 250bpm s.r.o. 00003 Copyright (c) 2007-2009 iMatix Corporation 00004 Copyright (c) 2007-2011 Other contributors as noted in the AUTHORS file 00005 00006 This file is part of 0MQ. 00007 00008 0MQ is free software; you can redistribute it and/or modify it under 00009 the terms of the GNU Lesser General Public License as published by 00010 the Free Software Foundation; either version 3 of the License, or 00011 (at your option) any later version. 00012 00013 0MQ is distributed in the hope that it will be useful, 00014 but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 GNU Lesser General Public License for more details. 00017 00018 You should have received a copy of the GNU Lesser General Public License 00019 along with this program. If not, see <http://www.gnu.org/licenses/>. 00020 */ 00021 00022 #ifndef __ZMQ_POLLER_HPP_INCLUDED__ 00023 #define __ZMQ_POLLER_HPP_INCLUDED__ 00024 00025 #include "platform.hpp" 00026 00027 #if defined ZMQ_FORCE_SELECT 00028 #define ZMQ_USE_SELECT 00029 #include "select.hpp" 00030 #elif defined ZMQ_FORCE_POLL 00031 #define ZMQ_USE_POLL 00032 #include "poll.hpp" 00033 #elif defined ZMQ_FORCE_EPOLL 00034 #define ZMQ_USE_EPOLL 00035 #include "epoll.hpp" 00036 #elif defined ZMQ_FORCE_DEVPOLL 00037 #define ZMQ_USE_DEVPOLL 00038 #include "devpoll.hpp" 00039 #elif defined ZMQ_FORCE_KQUEUE 00040 #define ZMQ_USE_KQUEUE 00041 #include "kqueue.hpp" 00042 #elif defined ZMQ_HAVE_LINUX 00043 #define ZMQ_USE_EPOLL 00044 #include "epoll.hpp" 00045 #elif defined ZMQ_HAVE_WINDOWS 00046 #define ZMQ_USE_SELECT 00047 #include "select.hpp" 00048 #elif defined ZMQ_HAVE_FREEBSD 00049 #define ZMQ_USE_KQUEUE 00050 #include "kqueue.hpp" 00051 #elif defined ZMQ_HAVE_OPENBSD 00052 #define ZMQ_USE_KQUEUE 00053 #include "kqueue.hpp" 00054 #elif defined ZMQ_HAVE_NETBSD 00055 #define ZMQ_USE_KQUEUE 00056 #include "kqueue.hpp" 00057 #elif defined ZMQ_HAVE_SOLARIS 00058 #define ZMQ_USE_DEVPOLL 00059 #include "devpoll.hpp" 00060 #elif defined ZMQ_HAVE_OSX 00061 #define ZMQ_USE_KQUEUE 00062 #include "kqueue.hpp" 00063 #elif defined ZMQ_HAVE_QNXNTO 00064 #define ZMQ_USE_POLL 00065 #include "poll.hpp" 00066 #elif defined ZMQ_HAVE_AIX 00067 #define ZMQ_USE_POLL 00068 #include "poll.hpp" 00069 #elif defined ZMQ_HAVE_HPUX 00070 #define ZMQ_USE_DEVPOLL 00071 #include "devpoll.hpp" 00072 #elif defined ZMQ_HAVE_OPENVMS 00073 #define ZMQ_USE_SELECT 00074 #include "select.hpp" 00075 #elif defined ZMQ_HAVE_CYGWIN 00076 #define ZMQ_USE_SELECT 00077 #include "select.hpp" 00078 #else 00079 #error Unsupported platform 00080 #endif 00081 00082 #endif