include/df/linuxpost.hpp

00001 extern "C" uint32 _StartApp();
00002 
00003 extern "C" void _linux_init_thread(Thread *);
00004 extern "C" void _linux_sigpoll_fd(uint32); //SIGPOLL occured but no code specified
00005 extern "C" void _linux_sigpoll();  //SIGPOLL occured but no fd/code specified
00006 extern "C" void _linux_dispatch_timer(PTR);
00007 extern "C" Window *_linux_find_window(int);
00008 extern "C" void _linux_disable_signals();
00009 extern "C" void _linux_enable_signals();
00010 extern "C" void _linux_time_t_2_Time(uint32, Time&);
00011 extern "C" uint32 _linux_Time_2_time_t(Time&);
00012 extern "C" uint32 _linux_fork();
00013 
00014 #ifdef _SERVICE
00015 #define STARTAPP(x,y)   \
00016   x MainInstance; \
00017   uint32 _StartApp() {    \
00018     uint32 id = _linux_fork(); \
00019     if (id) return 0; \
00020     MainInstance.ThreadHandle=SystemCode::GetCurrentThreadHandle(); \
00021     MainInstance.ThreadID=SystemCode::GetCurrentThreadId();   \
00022     MainInstance.ThreadMainParam = y;                  \
00023     SystemData->MainThread = &MainInstance;  \
00024     _linux_init_thread(&MainInstance); \
00025     return MainInstance.__StartThread(); \
00026   }
00027 #else
00028 #define STARTAPP(x,y)   \
00029   x MainInstance; \
00030   uint32 _StartApp() {    \
00031     MainInstance.ThreadHandle=SystemCode::GetCurrentThreadHandle(); \
00032     MainInstance.ThreadID=SystemCode::GetCurrentThreadId();   \
00033     MainInstance.ThreadMainParam = y;                  \
00034     SystemData->MainThread = &MainInstance;  \
00035     _linux_init_thread(&MainInstance); \
00036     return MainInstance.__StartThread(); \
00037   }
00038 #endif

Generated on Mon Mar 5 09:49:14 2007 for DigiForce by  doxygen 1.4.7