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

📄 datablkint.cpp

📁 jpeg 2000 压缩算法源代码 核心ebcot
💻 CPP
字号:
aLength=0;
	m_nSkipMSBP=0;

}

CDataBlkByte::~CDataBlkByte()
{
	delete []m_pubData;

}

CDataBlkByte::CDataBlkByte(int nBlkWidth, int nBlkHeight)
{
	 m_pubData=0;
	
	m_pubData=new BYTE [nBlkWidth*nBlkHeight];

	memset(m_pubData,0,nBlkWidth*nBlkHeight*sizeof(BYTE));


	m_eDataType=TYPE_BYTE;
	m_nWidth=nBlkWidth;
	m_nHeight=nBlkHeight;
	m_nSkipMSBP=0;


}

void * CDataBlkByte::GetData()
{
	return m_pubData;

}

void * CDataBlkByte::GetDataCopy(int nWidth, int nHeight)
{
	BYTE *pubData=new BYTE[nWidth*nHeight];
	memcpy(pubData,m_pubData,nWidth*nHeight*sizeof(BYTE));
	return pubData;



}

BYTE * CDataBlkByte::GetDataByte()
{
	return m_pubData;

}

void CDataBlkByte::SetData(void *pData)
{
	if (m_pubData)
	{
		delete []m_pubData;
		m_pubData=0;
	}

	m_pubData=(BYTE *)pData;


}

void CDataBlkByte::SetDataCopy(void *pData, int nOffset, int nWidth, int nHeight)
{
	if (m_nWidth<nWidth||m_nHeight<nHeight)
	{
		printf("can contain the data!\n");
		exit(0);
	}
	if (!m_pubData)
	{
		m_pubData=new BYTE[m_nWidth*m_nHeight];

	}

	BYTE *pubData=(BYTE *)pData;
	BYTE *pcbData=m_pubData+nOffset;
		
    int i;
	for (i=0;i<nHeight;i++)
	{
		memcpy(pcbData,pubData,nWidth*sizeof(BYTE));
		pcbData+=m_nWidth;
		pubData+=nWidth;
	}



}

void CDataBlkByte::SetDataCopy(void *pData, int nOffset, int nWidth, int nHeight, int nDataWidth)
{
	BYTE *pubData=(BYTE *)pData;
	BYTE *pcbData=pubData+nOffset;
	if (m_pubData)
		delete []m_pubData;
	
	m_pubData=new BYTE[nWidth*nHeight];
	BYTE *m_pcbData=m_pubData;

    int i;
	for (i=0;i<nHeight;i++)
	{
		memcpy(m_pcbData,pcbData,nWidth*sizeof(BYTE));
		m_pcbData+=nWidth;
		pcbData+=nDataWidth;
	}





}

void CDataBlkByte::SetSkipMSBP(int nSkipMSBP)
{
	m_nSkipMSBP=nSkipMSBP;

}

int CDataBlkByte::GetSkipMSBP()
{
	return m_nSkipMSBP;

}

int CDataBlkByte::GetCodedLength()
{
	return m_nCodedDataLength;

}

void CDataBlkByte::SetCodedLength(int nCodedLength)
{

	m_nCodedDataLength=nCodedLength;
}

⌨️ 快捷键说明

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