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

📄 node.h

📁 一种用于编译时头文件的缓存处理缓存源代码,使用起来就像C/C++编译器的缓存预处理器,简化该功能相应的环境改变时对内核的影响。
💻 H
字号:
/********************************************************************
	created:	2008/01/23
	filename: 	node.h
	author:		Lichuang
                
	purpose:    
*********************************************************************/

#ifndef __NODE_H__
#define __NODE_H__

#include "ccache.h"

#ifndef USE_LIST
enum color_t
{
    RED,
    BLACK
};
#endif

typedef struct node_t
{
    int index;
    int hashindex;
    int keysize;
    int datasize;
    int lrunext, lruprev;

#ifdef USE_LIST
    int next, prev;
#else    
    color_t color;
    int parent, left, right;
#endif

    char end[0];
}node_t;

int getfreenode(ccache_t* cache, cmpfun cmp, delfun fun);

#define NODE_KEY(node)      ((char*)&((node)->end[0]))
#define NODE_DATA(node)     ((char*)&((node)->end[0]) + (node)->keysize)

#define NODE(cache, index)  (node_t*)((char*)&((cache)->data[0]) + (cache)->hashitemtolsize + (cache)->nodesize * (index)) 

#endif /* __NODE_H__ */

⌨️ 快捷键说明

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