interface_help.h 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. #include <rtdef.h>
  2. #include <interface_kernel.h>
  3. extern rt_shell_t ishell;
  4. #define SHELL() ishell
  5. #define IKSERVICE() (SHELL()->i_kservice)
  6. #define ITHREAD() (SHELL()->i_thread)
  7. #define ISEM() (SHELL()->i_sem)
  8. #define IMUTEX() (SHELL()->i_mutex)
  9. #define IEVENT() (SHELL()->i_event)
  10. #define IMB() (SHELL()->i_mb)
  11. #define IMQ() (SHELL()->i_mq)
  12. #define IMP() (SHELL()->i_mp)
  13. #define IHEAP() (SHELL()->i_heap)
  14. #define IDEVICE() (SHELL()->i_device)
  15. #define ITIMER() (SHELL()->i_timer)
  16. /* kernel service */
  17. #define rt_kprintf IKSERVICE()->rt_kprintf
  18. /* thread */
  19. #define rt_thread_init ITHREAD()->rt_thread_init
  20. #define rt_thread_create ITHREAD()->rt_thread_create
  21. #define rt_thread_detach ITHREAD()->rt_thread_detach
  22. #define rt_thread_find ITHREAD()->rt_thread_find
  23. #define rt_thread_self ITHREAD()->rt_thread_self
  24. #define rt_thread_startup ITHREAD()->rt_thread_startup
  25. #define rt_thread_delete ITHREAD()->rt_thread_delete
  26. #define rt_thread_yield ITHREAD()->rt_thread_yield
  27. #define rt_thread_delay ITHREAD()->rt_thread_delay
  28. #define rt_thread_control ITHREAD()->rt_thread_control
  29. #define rt_thread_suspend ITHREAD()->rt_thread_suspend
  30. #define rt_thread_resume ITHREAD()->rt_thread_resume
  31. #define rt_thread_timeout ITHREAD()->rt_thread_timeout
  32. /* semaphore */
  33. #define rt_sem_init ISEM()->rt_sem_init
  34. #define rt_sem_detach ISEM()->rt_sem_detach
  35. #define rt_sem_create ISEM()->rt_sem_create
  36. #define rt_sem_delete ISEM()->rt_sem_delete
  37. #define rt_sem_take ISEM()->rt_sem_take
  38. #define rt_sem_trytake ISEM()->rt_sem_trytake
  39. #define rt_sem_release ISEM()->rt_sem_release
  40. #define rt_sem_control ISEM()->rt_sem_control
  41. /* mutex */
  42. #define rt_mutex_init IMUTEX()->rt_mutex_init
  43. #define rt_mutex_detach IMUTEX()->rt_mutex_detach
  44. #define rt_mutex_create IMUTEX()->rt_mutex_create
  45. #define rt_mutex_delete IMUTEX()->rt_mutex_delete
  46. #define rt_mutex_take IMUTEX()->rt_mutex_take
  47. #define rt_mutex_trytake IMUTEX()->rt_mutex_trytake
  48. #define rt_mutex_release IMUTEX()->rt_mutex_release
  49. #define rt_mutex_control IMUTEX()->rt_mutex_control
  50. /* event */
  51. #define rt_event_init IEVENT()->rt_event_init
  52. #define rt_event_detach IEVENT()->rt_event_detach
  53. #define rt_event_create IEVENT()->rt_event_create
  54. #define rt_event_delete IEVENT()->rt_event_delete
  55. #define rt_event_send IEVENT()->rt_event_send
  56. #define rt_event_recv IEVENT()->rt_event_recv
  57. #define rt_event_control IEVENT()->rt_event_control
  58. /* mailbox */
  59. #define rt_mb_init IMB()->rt_mb_init
  60. #define rt_mb_detach IMB()->rt_mb_detach
  61. #define rt_mb_create IMB()->rt_mb_create
  62. #define rt_mb_delete IMB()->rt_mb_delete
  63. #define rt_mb_send IMB()->rt_mb_send
  64. #define rt_mb_recv IMB()->rt_mb_recv
  65. #define rt_mb_control IMB()->rt_mb_control
  66. /* message queue interface */
  67. #define rt_mq_init IMQ()->rt_mq_init
  68. #define rt_mq_detach IMQ()->rt_mq_detach
  69. #define rt_mq_create IMQ()->rt_mq_create
  70. #define rt_mq_delete IMQ()->rt_mq_delete
  71. #define rt_mq_send IMQ()->rt_mq_send
  72. #define rt_mq_urgent IMQ()->rt_mq_urgent
  73. #define rt_mq_recv IMQ()->rt_mq_recv
  74. #define rt_mq_control IMQ()->rt_mq_control
  75. /* memory pool */
  76. #define rt_mp_init IMP()->rt_mp_init
  77. #define rt_mp_detach IMP()->rt_mp_detach
  78. #define rt_mp_create IMP()->rt_mp_create
  79. #define rt_mp_delete IMP()->rt_mp_delete
  80. #define rt_mp_alloc IMP()->rt_mp_alloc
  81. #define rt_mp_free IMP()->rt_mp_free
  82. /* heap memory */
  83. #define rt_malloc IHEAP()->rt_malloc
  84. #define rt_free IHEAP()->rt_free
  85. #define rt_realloc IHEAP()->rt_realloc
  86. #define rt_calloc IHEAP()->rt_calloc
  87. /* device */
  88. #define rt_device_register IDEVICE()->rt_device_register
  89. #define rt_device_unregister IDEVICE()->rt_device_unregister
  90. #define rt_device_init_all IDEVICE()->rt_device_init_all
  91. #define rt_device_find IDEVICE()->rt_device_find
  92. #define rt_device_init IDEVICE()->rt_device_init
  93. #define rt_device_open IDEVICE()->rt_device_open
  94. #define rt_device_close IDEVICE()->rt_device_close
  95. #define rt_device_read IDEVICE()->rt_device_read
  96. #define rt_device_write IDEVICE()->rt_device_write
  97. #define rt_device_control IDEVICE()->rt_device_control
  98. #define rt_device_set_rx_indicate IDEVICE()->rt_device_set_rx_indicate
  99. #define rt_device_set_tx_complete IDEVICE()->rt_device_set_tx_complete
  100. /* timer */
  101. #define rt_tick_get ITIMER()->rt_tick_get
  102. #define rt_system_timer_init ITIMER()->rt_system_timer_init
  103. #define rt_timer_init ITIMER()->rt_timer_init
  104. #define rt_timer_detach ITIMER()->rt_timer_detach
  105. #define rt_timer_create ITIMER()->rt_timer_create
  106. #define rt_timer_delete ITIMER()->rt_timer_delete
  107. #define rt_timer_start ITIMER()->rt_timer_start
  108. #define rt_timer_stop ITIMER()->rt_timer_stop
  109. #define rt_timer_control ITIMER()->rt_timer_control
  110. #define rt_tick_from_millisecond ITIMER()->rt_tick_from_millisecond
  111. #define rt_system_timer_thread_init ITIMER()->rt_system_timer_thread_init