00001 #line 2604 "./lpsrc/flx_rtl.pak"
00002 #ifndef __FLX_ASYNC__
00003 #define __FLX_ASYNC__
00004 #include "flx_rtl_config.hpp"
00005 #include "flx_rtl.hpp"
00006
00007 #ifdef BUILD_ASYNC
00008 #define ASYNC_EXTERN FLX_EXPORT
00009 #else
00010 #define ASYNC_EXTERN FLX_IMPORT
00011 #endif
00012
00013
00014
00015 class ASYNC_EXTERN async_hooker {
00016 public:
00017 virtual flx::rtl::fthread_t *dequeue()=0;
00018 virtual bool handle_request(void *data, flx::rtl::fthread_t *ss)=0;
00019 virtual ~async_hooker();
00020 };
00021
00022 typedef
00023 async_hooker *
00024 create_async_hooker_t
00025 (
00026 int n0,
00027 int n1,
00028 int m1,
00029 int n2,
00030 int m2
00031 );
00032
00033 extern "C" {
00034 ASYNC_EXTERN async_hooker *
00035 create_async_hooker
00036 (
00037 int n0,
00038 int n1,
00039 int m1,
00040 int n2,
00041 int m2
00042 );
00043 }
00044
00045 #endif
00046