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

📄 define.h

📁 24位真彩色转256色,24位真彩色转256色
💻 H
字号:
#ifndef __GENERALPLUS_OCTREE_DEFINE_H_20080711__
#define __GENERALPLUS_OCTREE_DEFINE_H_20080711__

/*==== Windows data type define =============================
typedef		unsigned char		BYTE ;
typedef		unsigned long		DWORD	 ;	
typedef		long				HRESULT	;	
typedef		int                 BOOL;

#ifndef		FALSE
#define		FALSE               0
#endif

#ifndef		TRUE
#define		TRUE                1
#endif

//==== Windows data type define ===========================*/

//==== Error code define =============================
#define	MAKE_USER_ERROR(code)		(0x0E << 28) | (code & 0xFFFF)	

#define ERROR_INVALID_PARAM				MAKE_USER_ERROR(1)
#define	ERROR_OCTREE_DEPTH_OVER			MAKE_USER_ERROR(2)
#define	ERROR_OCTREE_INITIALIZED		MAKE_USER_ERROR(3)
#define	ERROR_MEMORY_FAIL				MAKE_USER_ERROR(4)
#define	ERROR_OCTREE_NOT_INITIALIZE		MAKE_USER_ERROR(5)
#define	ERROR_PALETTE_INITIALIZED		MAKE_USER_ERROR(6)
#define	ERROR_PALETTE_OVERFLOW			MAKE_USER_ERROR(7)
#define	ERROR_PALETTE_NOT_INITIALIZE	MAKE_USER_ERROR(8)
#define	ERROR_OPEN_FILE_FAIL			MAKE_USER_ERROR(9)
#define	ERROR_FORMAT_UNSUPPORT			MAKE_USER_ERROR(10)


//==== Error code define =============================


typedef struct tagColor
{
	BYTE	byRed ;
	BYTE	byGreen ;
	BYTE	byBlue ;
	BYTE	byReserved ;
}S_Color ;

typedef struct tagPalette
{
	S_Color *	psClrData;
	DWORD		dwItemCount;
}S_Palette;

// node of octree .
typedef struct tagNode
{
	DWORD	dwCounter ;
	
	DWORD	dwRedSum ;
	DWORD	dwGreenSum ;
	DWORD	dwBlueSum ;

	tagNode	*	psChild[8];
	tagNode *	psNext ;

	BOOL	bLeafNode ;

	tagNode()
	{
		dwCounter = 0 ;
		dwRedSum	  = 0 ;
		dwGreenSum	  = 0 ;
		dwBlueSum	  = 0 ;

		bLeafNode = FALSE ;

		for(int i=0;i<8;i++)
		{
			psChild[i] = NULL ;
		}

		psNext = NULL ;
	}

}S_Node ;


#endif

⌨️ 快捷键说明

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