@@ -48,9 +48,11 @@ void rt_object_init(struct rt_object *object,
4848 enum rt_object_class_type type ,
4949 const char * name );
5050void rt_object_detach (rt_object_t object );
51+ #ifdef RT_USING_HEAP
5152rt_object_t rt_object_allocate (enum rt_object_class_type type ,
5253 const char * name );
5354void rt_object_delete (rt_object_t object );
55+ #endif
5456rt_bool_t rt_object_is_systemobject (rt_object_t object );
5557rt_uint8_t rt_object_get_type (rt_object_t object );
5658rt_object_t rt_object_find (const char * name , rt_uint8_t type );
@@ -90,12 +92,14 @@ void rt_timer_init(rt_timer_t timer,
9092 rt_tick_t time ,
9193 rt_uint8_t flag );
9294rt_err_t rt_timer_detach (rt_timer_t timer );
95+ #ifdef RT_USING_HEAP
9396rt_timer_t rt_timer_create (const char * name ,
9497 void (* timeout )(void * parameter ),
9598 void * parameter ,
9699 rt_tick_t time ,
97100 rt_uint8_t flag );
98101rt_err_t rt_timer_delete (rt_timer_t timer );
102+ #endif
99103rt_err_t rt_timer_start (rt_timer_t timer );
100104rt_err_t rt_timer_stop (rt_timer_t timer );
101105rt_err_t rt_timer_control (rt_timer_t timer , int cmd , void * arg );
@@ -128,24 +132,26 @@ rt_err_t rt_thread_init(struct rt_thread *thread,
128132 rt_uint8_t priority ,
129133 rt_uint32_t tick );
130134rt_err_t rt_thread_detach (rt_thread_t thread );
135+ #ifdef RT_USING_HEAP
131136rt_thread_t rt_thread_create (const char * name ,
132137 void (* entry )(void * parameter ),
133138 void * parameter ,
134139 rt_uint32_t stack_size ,
135140 rt_uint8_t priority ,
136141 rt_uint32_t tick );
142+ rt_err_t rt_thread_delete (rt_thread_t thread );
143+ #endif
137144rt_thread_t rt_thread_self (void );
138145rt_thread_t rt_thread_find (char * name );
139146rt_err_t rt_thread_startup (rt_thread_t thread );
140- rt_err_t rt_thread_delete (rt_thread_t thread );
141-
142147rt_err_t rt_thread_yield (void );
143148rt_err_t rt_thread_delay (rt_tick_t tick );
144149rt_err_t rt_thread_delay_until (rt_tick_t * tick , rt_tick_t inc_tick );
145150rt_err_t rt_thread_mdelay (rt_int32_t ms );
146151rt_err_t rt_thread_control (rt_thread_t thread , int cmd , void * arg );
147152rt_err_t rt_thread_suspend (rt_thread_t thread );
148153rt_err_t rt_thread_resume (rt_thread_t thread );
154+ void rt_thread_exit (void );
149155void rt_thread_timeout (void * parameter );
150156
151157#ifdef RT_USING_SIGNALS
@@ -228,10 +234,12 @@ rt_err_t rt_mp_init(struct rt_mempool *mp,
228234 rt_size_t size ,
229235 rt_size_t block_size );
230236rt_err_t rt_mp_detach (struct rt_mempool * mp );
237+ #ifdef RT_USING_HEAP
231238rt_mp_t rt_mp_create (const char * name ,
232239 rt_size_t block_count ,
233240 rt_size_t block_size );
234241rt_err_t rt_mp_delete (rt_mp_t mp );
242+ #endif
235243
236244void * rt_mp_alloc (rt_mp_t mp , rt_int32_t time );
237245void rt_mp_free (void * block );
@@ -303,8 +311,10 @@ rt_err_t rt_sem_init(rt_sem_t sem,
303311 rt_uint32_t value ,
304312 rt_uint8_t flag );
305313rt_err_t rt_sem_detach (rt_sem_t sem );
314+ #ifdef RT_USING_HEAP
306315rt_sem_t rt_sem_create (const char * name , rt_uint32_t value , rt_uint8_t flag );
307316rt_err_t rt_sem_delete (rt_sem_t sem );
317+ #endif
308318
309319rt_err_t rt_sem_take (rt_sem_t sem , rt_int32_t time );
310320rt_err_t rt_sem_trytake (rt_sem_t sem );
@@ -318,8 +328,10 @@ rt_err_t rt_sem_control(rt_sem_t sem, int cmd, void *arg);
318328 */
319329rt_err_t rt_mutex_init (rt_mutex_t mutex , const char * name , rt_uint8_t flag );
320330rt_err_t rt_mutex_detach (rt_mutex_t mutex );
331+ #ifdef RT_USING_HEAP
321332rt_mutex_t rt_mutex_create (const char * name , rt_uint8_t flag );
322333rt_err_t rt_mutex_delete (rt_mutex_t mutex );
334+ #endif
323335
324336rt_err_t rt_mutex_take (rt_mutex_t mutex , rt_int32_t time );
325337rt_err_t rt_mutex_release (rt_mutex_t mutex );
@@ -332,8 +344,10 @@ rt_err_t rt_mutex_control(rt_mutex_t mutex, int cmd, void *arg);
332344 */
333345rt_err_t rt_event_init (rt_event_t event , const char * name , rt_uint8_t flag );
334346rt_err_t rt_event_detach (rt_event_t event );
347+ #ifdef RT_USING_HEAP
335348rt_event_t rt_event_create (const char * name , rt_uint8_t flag );
336349rt_err_t rt_event_delete (rt_event_t event );
350+ #endif
337351
338352rt_err_t rt_event_send (rt_event_t event , rt_uint32_t set );
339353rt_err_t rt_event_recv (rt_event_t event ,
@@ -354,8 +368,10 @@ rt_err_t rt_mb_init(rt_mailbox_t mb,
354368 rt_size_t size ,
355369 rt_uint8_t flag );
356370rt_err_t rt_mb_detach (rt_mailbox_t mb );
371+ #ifdef RT_USING_HEAP
357372rt_mailbox_t rt_mb_create (const char * name , rt_size_t size , rt_uint8_t flag );
358373rt_err_t rt_mb_delete (rt_mailbox_t mb );
374+ #endif
359375
360376rt_err_t rt_mb_send (rt_mailbox_t mb , rt_ubase_t value );
361377rt_err_t rt_mb_send_wait (rt_mailbox_t mb ,
@@ -376,11 +392,13 @@ rt_err_t rt_mq_init(rt_mq_t mq,
376392 rt_size_t pool_size ,
377393 rt_uint8_t flag );
378394rt_err_t rt_mq_detach (rt_mq_t mq );
395+ #ifdef RT_USING_HEAP
379396rt_mq_t rt_mq_create (const char * name ,
380397 rt_size_t msg_size ,
381398 rt_size_t max_msgs ,
382399 rt_uint8_t flag );
383400rt_err_t rt_mq_delete (rt_mq_t mq );
401+ #endif
384402
385403rt_err_t rt_mq_send (rt_mq_t mq , const void * buffer , rt_size_t size );
386404rt_err_t rt_mq_send_wait (rt_mq_t mq ,
@@ -435,8 +453,10 @@ rt_err_t rt_device_register(rt_device_t dev,
435453 rt_uint16_t flags );
436454rt_err_t rt_device_unregister (rt_device_t dev );
437455
456+ #ifdef RT_USING_HEAP
438457rt_device_t rt_device_create (int type , int attach_size );
439458void rt_device_destroy (rt_device_t device );
459+ #endif
440460
441461rt_err_t
442462rt_device_set_rx_indicate (rt_device_t dev ,
0 commit comments