www.pudn.com > 人体步态跟踪识别bate版.rar > DIBAPI.H
// dibapi.h
//
//程序的头文件,里面包含了所有的函数
// 和相应的对象
#ifndef _INC_DIBAPI
#define _INC_DIBAPI
/* 一个DIB 句柄*/
DECLARE_HANDLE(HDIB);
/* DIB 版本号 */
#define PALVERSION 0x300
/* Dib 头标记 - 用来将DIBs写入文件*/
#define DIB_HEADER_MARKER ((WORD) ('M' << 8) | 'B')
/* DIB 宏*/
#define IS_WIN30_DIB(lpbi) ((*(LPDWORD)(lpbi)) == sizeof(BITMAPINFOHEADER))
#define RECTWIDTH(lpRect) ((lpRect)->right - (lpRect)->left)
#define RECTHEIGHT(lpRect) ((lpRect)->bottom - (lpRect)->top)
//由于DIB的每行都被填充到一个四字节边界,因此需要经常计算每行所实际占用的位数。
//定义宏WIDTHBYTES将一个数与四字节对齐,便于计算DIB行的存储长度。
#define WIDTHBYTES(bits) (((bits) + 31) / 32 * 4)
/* 使用的函数原型 */
BOOL PaintDIB (HDC, LPRECT, HDIB, LPRECT, CPalette* pPal);
BOOL CreateDIBPalette(HDIB hDIB, CPalette* cPal);
LPSTR FindDIBBits (LPSTR lpbi);
DWORD DIBWidth (LPSTR lpDIB);
DWORD DIBHeight (LPSTR lpDIB);
WORD PaletteSize (LPSTR lpbi);
WORD DIBNumColors (LPSTR lpbi);
HGLOBAL CopyHandle (HGLOBAL h);
BOOL SaveDIB (HDIB hDib, CFile& file);
HDIB ReadDIBFile(CFile& file);
HDIB LoadDIB(CFile& file);
double DoubleModule(double num1,double num2);
void FindHumanWindows(HDIB hDIB,CPoint p1,CPoint p2);
#endif //!_INC_DIBAPI