From 5211e7ff8fbd9dd7737fa5c0d83b505bbba0c893 Mon Sep 17 00:00:00 2001 From: qiuyiuestc Date: Sun, 11 Apr 2010 16:44:54 +0000 Subject: add module feature git-svn-id: https://rt-thread.googlecode.com/svn/trunk@604 bbd45198-f89e-11dd-88c7-29a3b14d5316 --- include/rtthread.h | 44 ++++++++++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 16 deletions(-) (limited to 'include/rtthread.h') diff --git a/include/rtthread.h b/include/rtthread.h index 9cf3e49978..b3d6621e22 100644 --- a/include/rtthread.h +++ b/include/rtthread.h @@ -14,6 +14,8 @@ * 2006-08-10 Bernard add version information * 2007-01-28 Bernard rename RT_OBJECT_Class_Static to RT_Object_Class_Static * 2007-03-03 Bernard clean up the definitions to rtdef.h + * 2010-04-11 yi.qiu add module feature + */ #ifndef __RT_THREAD_H__ @@ -25,6 +27,16 @@ extern "C" { #endif +#if defined(__CC_ARM) +#ifdef RT_USING_MODULE +#define RTT_API __declspec(dllimport) +#else +#define RTT_API __declspec(dllexport) +#endif +#elif defined(__GNUC__) +#define RTT_API +#endif + /** * @addtogroup KernelObject */ @@ -91,27 +103,27 @@ void rt_timer_timeout_sethook(void (*hook)(struct rt_timer* timer)); /* * thread interface */ -rt_err_t rt_thread_init(struct rt_thread* thread, +RTT_API rt_err_t rt_thread_init(struct rt_thread* thread, const char* name, void (*entry)(void* parameter), void* parameter, void* stack_start, rt_uint32_t stack_size, rt_uint8_t priority, rt_uint32_t tick); -rt_err_t rt_thread_detach(rt_thread_t thread); -rt_thread_t rt_thread_create (const char* name, +RTT_API rt_err_t rt_thread_detach(rt_thread_t thread); +RTT_API rt_thread_t rt_thread_create (const char* name, void (*entry)(void* parameter), void* parameter, rt_uint32_t stack_size, rt_uint8_t priority, rt_uint32_t tick); -rt_thread_t rt_thread_self(void); -rt_thread_t rt_thread_find(char* name); -rt_err_t rt_thread_startup(rt_thread_t thread); -rt_err_t rt_thread_delete(rt_thread_t thread); - -rt_err_t rt_thread_yield(void); -rt_err_t rt_thread_delay(rt_tick_t tick); -rt_err_t rt_thread_control(rt_thread_t thread, rt_uint8_t cmd, void* arg); -rt_err_t rt_thread_suspend(rt_thread_t thread); -rt_err_t rt_thread_resume(rt_thread_t thread); -void rt_thread_timeout(void* parameter); +RTT_API rt_thread_t rt_thread_self(void); +RTT_API rt_thread_t rt_thread_find(char* name); +RTT_API rt_err_t rt_thread_startup(rt_thread_t thread); +RTT_API rt_err_t rt_thread_delete(rt_thread_t thread); + +RTT_API rt_err_t rt_thread_yield(void); +RTT_API rt_err_t rt_thread_delay(rt_tick_t tick); +RTT_API rt_err_t rt_thread_control(rt_thread_t thread, rt_uint8_t cmd, void* arg); +RTT_API rt_err_t rt_thread_suspend(rt_thread_t thread); +RTT_API rt_err_t rt_thread_resume(rt_thread_t thread); +RTT_API void rt_thread_timeout(void* parameter); /* * idle thread interface @@ -312,8 +324,8 @@ void rt_interrupt_leave(void); rt_int32_t rt_sprintf(char *buf ,const char *format,...); rt_int32_t rt_vsprintf(char *dest, const char *format, va_list arg_ptr); rt_int32_t rt_sprintf(char *buf ,const char *format,...); -rt_int32_t rt_snprintf(char *buf, rt_size_t size, const char *format, ...); - +rt_int32_t rt_snprintf(char *buf, rt_size_t size, const char *format, ...); + rt_device_t rt_console_set_device(const char* name); void rt_kprintf(const char *fmt, ...); -- cgit v1.3.1