00001 #line 325 "./lpsrc/flx_posix_demux.ipk"
00002 #ifndef __FLX_DEMUX_PFILEIO_H__
00003 #define __FLX_DEMUX_PFILEIO_H__
00004 #include <flx_demux_config.hpp>
00005
00006 #include "demux_demuxer.hpp"
00007 #include "pthread_sleep_queue.hpp"
00008 #include "pthread_mutex.hpp"
00009
00010
00011 #include "pthread_work_fifo.hpp"
00012 namespace flx { namespace demux {
00013
00014
00015
00016
00017
00018
00019 class DEMUX_EXTERN fileio_request : public flx::pthread::worker_task
00020 {
00021 long offset;
00022
00023 int fd;
00024 bool read_flag;
00025
00026 int err;
00027 public:
00028
00029 sel_param pb;
00030
00031 virtual ~fileio_request();
00032 fileio_request();
00033 fileio_request(int f, char* buf, long len, long off, bool rd);
00034
00035 virtual void doit();
00036 };
00037
00038 }}
00039 #endif // __PFILEIO__
00040