📄 iblock.h
字号:
#ifndef IBLOCK_H
#define IBLOCK_H
/*--marcos--------------------------------------------------------------*/
/* SYSTEM source */
#define M_CLOSESYS_C (0x00010000)
#define M_IBLOCK_C (0x00020000)
#define M_MANTEN_C (0x00030000)
#define M_DRVEVENT_C (0x00040000)
#define M_SYSLOG_C (0x00050000)
#define M_ISUP_C (0x00060000)
#define M_SPSMS_C (0x00070000)
/* source end */
#define MINBLOCKSIZE 128
#define MAXBLOCKSIZE 8192+MINBLOCKSIZE
#ifndef DEFAULT_BUF_LEN
#define DEFAULT_BUF_LEN 4096
#endif
#define IBLOCKNUM (MAXBLOCKSIZE)/MINBLOCKSIZE
/*--variables--------------------------------------------------------------*/
extern int blkprint;
/*--constants and types----------------------------------------------------*/
typedef struct QueueSTR {
int count;
int total;
CriticalSection cs;
void * tail;
} QueueType;
#ifdef WIN32
#pragma pack(push,1)
#endif
#ifdef iRMX
#pragma align(QueueMemberSTR = 1)
#endif
#ifdef LINUX
#pragma pack(push,1)
#endif
typedef struct QueueMemberSTR {
struct QueueMemberSTR * next;
char buf[60];
} QueueMemberType;
#ifdef WIN32
#pragma pack(pop)
#endif
#ifdef LINUX
#pragma pack(pop)
#endif
#ifdef WIN32
#define QHSIZE (int) (&((QueueMemberType *)0)->buf)
#endif
#ifdef iRMX
#define QHSIZE (int) (&((QueueMemberType near *)0)->buf)
#endif
#ifdef LINUX
#define QHSIZE (int) (&((QueueMemberType *)0)->buf)
#endif
/*--function prototypes----------------------------------------------------*/
extern void * GetIdleBlockChk(unsigned int len, unsigned int no);
#define GetIdleBlock(l,no) GetIdleBlockChk(l,(no|__LINE__))
extern int InitQueue(QueueType *q);
extern void * DelMember(QueueType *q);
extern void AddMember(QueueType * q, void * m);
extern unsigned int MemberNumber(QueueType * q);
extern void * PeekFirstMember(QueueType * q);
extern int DetachMember(QueueType * q, void * p);
extern int InitIdleBlock(void);
extern int PutIdleBlock(void * ptr);
extern void * GetBlockInfo(void);
extern int BlockSize(void * ptr);
extern void CleanIblockTable(void);
extern void WritePeriodLog_Memory_Own(void);
extern void CheckMemoryFun(void* para);
#endif /* IBLOCK_H */
/*--------------------------------END OF FILE------------------------------*/
/* v0.1_2000.09.12 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -