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

📄 headerencoder.h

📁 jpeg 2000 压缩算法源代码 核心ebcot
💻 H
字号:
	
			m_pHeadBuffer->writeByte((BYTE)temp);
				
			}
		}
	

}

void CHeaderEncoder::WriteMainCOC(int nComNumber)
{

	bool bPrecinctUsed=false;
	int nPPX=0,nPPY=0;
	
	int nDecLev=m_pEncoderSpec->pWTDecLev->GetCompDef(nComNumber);
	int a=0;

	CSiz PrecinctDef=m_pEncoderSpec->pPrecinctSize->GetPrecinctSiz(-1,nComNumber,nDecLev);

	nPPX=PrecinctDef.GetWidth();
	nPPY=PrecinctDef.GetHeight();



	if ((nPPX!=CPrecinctSizeSpec::PRECINCT_PPX)||(nPPY!=CPrecinctSizeSpec::PRECINCT_PPY))
	{
		bPrecinctUsed=true;
		a=nDecLev+1;
	}


	m_pHeadBuffer->writeWord(COC);

	int nComNums=m_pCodedImgData->GetImgComNums();


	WORD markLenth=8+a;
	if(nComNums<257)
	{
		markLenth+=1;
	    m_pHeadBuffer->writeWord(markLenth);
		m_pHeadBuffer->writeByte((BYTE)nComNumber);

	}
	else
	{
		markLenth+=2;
	    m_pHeadBuffer->writeWord(markLenth);
		m_pHeadBuffer->writeWord((WORD)nComNumber);

	}



	BYTE Scoc=0;

	if (bPrecinctUsed)
	{
		Scoc|=SCOX_PRECINCT_PARTITION;

	}

	m_pHeadBuffer->writeByte(Scoc);

	m_pHeadBuffer->writeByte((BYTE)nDecLev);



	CSiz BlkSizeDef=m_pEncoderSpec->pBlkSize->GetCompDef(nComNumber);

	int BlkWidthDef,BlkHeightDef;
	BlkWidthDef=BlkSizeDef.GetWidth();
	BlkHeightDef=BlkSizeDef.GetHeight();

	BYTE temp=0;
	temp=(BYTE)(BlkWidthDef-2);
	m_pHeadBuffer->writeByte(temp);
	
	temp=(BYTE)(BlkHeightDef-2);
	m_pHeadBuffer->writeByte(temp);


	temp=0;

	if (m_pEncoderSpec->pBypass->GetCompDef(nComNumber))
	{
		temp|=OPT_BYPASS;
	}

	if (m_pEncoderSpec->pMQReset->GetCompDef(nComNumber))
	{
		temp|=OPT_RESET_MQ;

	}
	if (m_pEncoderSpec-

⌨️ 快捷键说明

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