⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 kservice.h.svn-base

📁 RT-Thread是发展中的下一代微内核嵌入式实时操作系统
💻 SVN-BASE
字号:
/* * File      : kservice.h * This file is part of RT-Thread RTOS * COPYRIGHT (C) 2006, RT-Thread Development Team * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at * http://openlab.rt-thread.com/license/LICENSE * * Change Logs: * Date           Author       Notes * 2006-03-16     Bernard      the first version * 2006-09-07     Bernard      move the kservice APIs to rtthread.h * 2007-06-27     Bernard      fix the rt_list_remove bug */#ifndef __RT_SERVICE_H__#define __RT_SERVICE_H__#include <rtthread.h>#ifdef __cplusplusextern "C" {#endif/** * @brief initialize a list * * @param l list to be initialized */rt_inline void rt_list_init(rt_list_t *l){	l->next = l->prev = l;}/** * @brief insert a node after a list * * @param l list to insert it * @param n new node to be inserted */rt_inline void rt_list_insert_after(rt_list_t *l, rt_list_t *n){	l->next->prev = n;	n->next = l->next;	l->next = n;	n->prev = l;}/** * @brief insert a node before a list  * * @param n new node to be inserted * @param l list to insert it */rt_inline void rt_list_insert_before(rt_list_t *l, rt_list_t *n){	l->prev->next = n;	n->prev = l->prev;	l->prev = n;	n->next = l;}/** * @brief remove node from list. * @param n the node to remove from the list. */rt_inline void rt_list_remove(rt_list_t *n){	n->next->prev = n->prev;	n->prev->next = n->next;	n->next = n->prev = n;}/** * @brief tests whether a list is empty * @param l the list to test. */rt_inline int rt_list_isempty(const rt_list_t *l){	return l->next == l;}/** * @brief get the struct for this entry * @param node the entry point * @param type the type of structure * @param member the name of list in structure */#define rt_list_entry(node, type, member) \    ((type *)((char *)(node) - (unsigned long)(&((type *)0)->member)))#ifdef __cplusplus}#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -