flx_demux.hpp

00001 #line 24 "./lpsrc/flx_demux.pak"
00002 #ifndef __FLX_DEMUX_H__
00003 #define __FLX_DEMUX_H__
00004 #include <flx_demux_config.hpp>
00005 #include "pthread_thread.hpp"
00006 
00007 #if FLX_WIN32
00008  #include "demux_iocp_demuxer.hpp"
00009  namespace flx { namespace demux {
00010    typedef iocp_demuxer flx_demuxer_t;
00011  }}
00012 #elif FLX_HAVE_KQUEUE_DEMUXER
00013  #include "demux_kqueue_demuxer.hpp"
00014   namespace flx { namespace demux {
00015     typedef kqueue_demuxer flx_demuxer_t;
00016   }}
00017 #elif FLX_HAVE_EVTPORTS
00018  #include "demux_evtport_demuxer.hpp"
00019   namespace flx { namespace demux {
00020     typedef evtport_demuxer flx_demuxer_t;
00021   }}
00022 #elif FLX_HAVE_EPOLL
00023  #include "demux_epoll_demuxer.hpp"
00024   namespace flx { namespace demux {
00025     typedef epoll_demuxer flx_demuxer_t;
00026   }}
00027 #elif FLX_HAVE_POLL
00028  // NB!: on osx 10.3 poll exists, but is a poor cousin emulation layer on
00029  // top of select. however, 10.3 has kqueues (above), so should be ok...
00030  #include "demux_ts_poll_demuxer.hpp"
00031   namespace flx { namespace demux {
00032     typedef ts_poll_demuxer flx_demuxer_t;
00033   }}
00034 #else
00035  #include "demux_ts_select_demuxer.hpp"
00036   namespace flx { namespace demux {
00037     typedef ts_select_demuxer flx_demuxer_t;
00038   }}
00039 #endif
00040 
00041 
00042 namespace flx { namespace demux {
00043 DEMUX_EXTERN flx_demuxer_t * make_std_demuxer();
00044 }}
00045 
00046 #endif
00047 

Generated on Sun Nov 25 12:27:24 2007 for Felix by  doxygen 1.5.3-20071008