Index: core/src/fxcodec/codec/fx_codec_fax.cpp |
diff --git a/core/src/fxcodec/codec/fx_codec_fax.cpp b/core/src/fxcodec/codec/fx_codec_fax.cpp |
index 869751e05bbf4139cf8253f6b8b4df20209052e5..40502362d5bd2ad4de5c7c5e21e04de3be8f8c1b 100644 |
--- a/core/src/fxcodec/codec/fx_codec_fax.cpp |
+++ b/core/src/fxcodec/codec/fx_codec_fax.cpp |
@@ -48,7 +48,7 @@ int _FindBit(const uint8_t* data_buf, int max_pos, int start_pos, int bit) |
if (start_pos >= max_pos) { |
return max_pos; |
} |
- FX_LPCBYTE leading_pos = bit ? OneLeadPos : ZeroLeadPos; |
+ const uint8_t* leading_pos = bit ? OneLeadPos : ZeroLeadPos; |
if (start_pos % 8) { |
uint8_t data = data_buf[start_pos / 8]; |
if (bit) { |
@@ -100,7 +100,7 @@ void _FaxG4FindB1B2(const uint8_t* ref_buf, int columns, int a0, FX_BOOL a0color |
} |
b2 = _FindBit(ref_buf, columns, b1 + 1, first_bit); |
} |
-void _FaxFillBits(FX_LPBYTE dest_buf, int columns, int startpos, int endpos) |
+void _FaxFillBits(uint8_t* dest_buf, int columns, int startpos, int endpos) |
{ |
if (startpos < 0) { |
startpos = 0; |
@@ -375,7 +375,7 @@ static const uint8_t FaxWhiteRunIns[] = { |
0x1f, 2560 % 256, 2560 / 256, |
0xff, |
}; |
-int _FaxGetRun(FX_LPCBYTE ins_array, const uint8_t* src_buf, int& bitpos, int bitsize) |
+int _FaxGetRun(const uint8_t* ins_array, const uint8_t* src_buf, int& bitpos, int bitsize) |
{ |
FX_DWORD code = 0; |
int ins_off = 0; |
@@ -400,7 +400,7 @@ int _FaxGetRun(FX_LPCBYTE ins_array, const uint8_t* src_buf, int& bitpos, int bi |
} |
} |
} |
-FX_BOOL _FaxG4GetRow(const uint8_t* src_buf, int bitsize, int& bitpos, FX_LPBYTE dest_buf, const uint8_t* ref_buf, int columns) |
+FX_BOOL _FaxG4GetRow(const uint8_t* src_buf, int bitsize, int& bitpos, uint8_t* dest_buf, const uint8_t* ref_buf, int columns) |
{ |
int a0 = -1, a0color = 1; |
while (1) { |
@@ -536,7 +536,7 @@ FX_BOOL _FaxSkipEOL(const uint8_t* src_buf, int bitsize, int& bitpos) |
} |
return FALSE; |
} |
-FX_BOOL _FaxGet1DLine(const uint8_t* src_buf, int bitsize, int& bitpos, FX_LPBYTE dest_buf, int columns) |
+FX_BOOL _FaxGet1DLine(const uint8_t* src_buf, int bitsize, int& bitpos, uint8_t* dest_buf, int columns) |
{ |
int color = TRUE; |
int startpos = 0; |
@@ -577,17 +577,18 @@ class CCodec_FaxDecoder : public CCodec_ScanlineDecoder |
public: |
CCodec_FaxDecoder(); |
virtual ~CCodec_FaxDecoder(); |
- FX_BOOL Create(FX_LPCBYTE src_buf, FX_DWORD src_size, int width, int height, |
+ FX_BOOL Create(const uint8_t* src_buf, FX_DWORD src_size, int width, int height, |
int K, FX_BOOL EndOfLine, FX_BOOL EncodedByteAlign, FX_BOOL BlackIs1, int Columns, int Rows); |
virtual void v_DownScale(int dest_width, int dest_height) {} |
virtual FX_BOOL v_Rewind(); |
- virtual FX_LPBYTE v_GetNextLine(); |
+ virtual uint8_t* v_GetNextLine(); |
virtual FX_DWORD GetSrcOffset(); |
int m_Encoding, m_bEndOfLine, m_bByteAlign, m_bBlack; |
int bitpos; |
- FX_LPCBYTE m_pSrcBuf; |
+ const uint8_t* m_pSrcBuf; |
FX_DWORD m_SrcSize; |
- FX_LPBYTE m_pScanlineBuf, m_pRefBuf; |
+ uint8_t* m_pScanlineBuf; |
+ uint8_t* m_pRefBuf; |
}; |
CCodec_FaxDecoder::CCodec_FaxDecoder() |
{ |
@@ -603,7 +604,7 @@ CCodec_FaxDecoder::~CCodec_FaxDecoder() |
FX_Free(m_pRefBuf); |
} |
} |
-FX_BOOL CCodec_FaxDecoder::Create(FX_LPCBYTE src_buf, FX_DWORD src_size, int width, int height, |
+FX_BOOL CCodec_FaxDecoder::Create(const uint8_t* src_buf, FX_DWORD src_size, int width, int height, |
int K, FX_BOOL EndOfLine, FX_BOOL EncodedByteAlign, FX_BOOL BlackIs1, int Columns, int Rows) |
{ |
m_Encoding = K; |
@@ -636,7 +637,7 @@ FX_BOOL CCodec_FaxDecoder::v_Rewind() |
bitpos = 0; |
return TRUE; |
} |
-FX_LPBYTE CCodec_FaxDecoder::v_GetNextLine() |
+uint8_t* CCodec_FaxDecoder::v_GetNextLine() |
{ |
int bitsize = m_SrcSize * 8; |
_FaxSkipEOL(m_pSrcBuf, bitsize, bitpos); |
@@ -693,16 +694,16 @@ FX_DWORD CCodec_FaxDecoder::GetSrcOffset() |
return ret; |
} |
extern "C" { |
- void _FaxG4Decode(void*, FX_LPCBYTE src_buf, FX_DWORD src_size, int* pbitpos, FX_LPBYTE dest_buf, int width, int height, int pitch) |
+ void _FaxG4Decode(void*, const uint8_t* src_buf, FX_DWORD src_size, int* pbitpos, uint8_t* dest_buf, int width, int height, int pitch) |
{ |
if (pitch == 0) { |
pitch = (width + 7) / 8; |
} |
- FX_LPBYTE ref_buf = FX_Alloc(uint8_t, pitch); |
+ uint8_t* ref_buf = FX_Alloc(uint8_t, pitch); |
FXSYS_memset8(ref_buf, 0xff, pitch); |
int bitpos = *pbitpos; |
for (int iRow = 0; iRow < height; iRow ++) { |
- FX_LPBYTE line_buf = dest_buf + iRow * pitch; |
+ uint8_t* line_buf = dest_buf + iRow * pitch; |
FXSYS_memset8(line_buf, 0xff, pitch); |
_FaxG4GetRow(src_buf, src_size << 3, bitpos, line_buf, ref_buf, width); |
FXSYS_memcpy32(ref_buf, line_buf, pitch); |
@@ -836,7 +837,7 @@ static const uint8_t WhiteRunMarkup[80] = { |
0x1e, 12, |
0x1f, 12, |
}; |
-static void _AddBitStream(FX_LPBYTE dest_buf, int& dest_bitpos, int data, int bitlen) |
+static void _AddBitStream(uint8_t* dest_buf, int& dest_bitpos, int data, int bitlen) |
{ |
for (int i = bitlen - 1; i >= 0; i --) { |
if (data & (1 << i)) { |
@@ -845,7 +846,7 @@ static void _AddBitStream(FX_LPBYTE dest_buf, int& dest_bitpos, int data, int bi |
dest_bitpos ++; |
} |
} |
-static void _FaxEncodeRun(FX_LPBYTE dest_buf, int& dest_bitpos, int run, FX_BOOL bWhite) |
+static void _FaxEncodeRun(uint8_t* dest_buf, int& dest_bitpos, int run, FX_BOOL bWhite) |
{ |
while (run >= 2560) { |
_AddBitStream(dest_buf, dest_bitpos, 0x1f, 12); |
@@ -853,16 +854,16 @@ static void _FaxEncodeRun(FX_LPBYTE dest_buf, int& dest_bitpos, int run, FX_BOOL |
} |
if (run >= 64) { |
int markup = run - run % 64; |
- FX_LPCBYTE p = bWhite ? WhiteRunMarkup : BlackRunMarkup; |
+ const uint8_t* p = bWhite ? WhiteRunMarkup : BlackRunMarkup; |
p += (markup / 64 - 1) * 2; |
_AddBitStream(dest_buf, dest_bitpos, *p, p[1]); |
} |
run %= 64; |
- FX_LPCBYTE p = bWhite ? WhiteRunTerminator : BlackRunTerminator; |
+ const uint8_t* p = bWhite ? WhiteRunTerminator : BlackRunTerminator; |
p += run * 2; |
_AddBitStream(dest_buf, dest_bitpos, *p, p[1]); |
} |
-static void _FaxEncode2DLine(FX_LPBYTE dest_buf, int& dest_bitpos, FX_LPCBYTE src_buf, FX_LPCBYTE ref_buf, int cols) |
+static void _FaxEncode2DLine(uint8_t* dest_buf, int& dest_bitpos, const uint8_t* src_buf, const uint8_t* ref_buf, int cols) |
{ |
int a0 = -1, a0color = 1; |
while (1) { |
@@ -920,16 +921,17 @@ static void _FaxEncode2DLine(FX_LPBYTE dest_buf, int& dest_bitpos, FX_LPCBYTE sr |
class CCodec_FaxEncoder |
{ |
public: |
- CCodec_FaxEncoder(FX_LPCBYTE src_buf, int width, int height, int pitch); |
+ CCodec_FaxEncoder(const uint8_t* src_buf, int width, int height, int pitch); |
~CCodec_FaxEncoder(); |
- void Encode(FX_LPBYTE& dest_buf, FX_DWORD& dest_size); |
- void Encode2DLine(FX_LPCBYTE scan_line); |
+ void Encode(uint8_t*& dest_buf, FX_DWORD& dest_size); |
+ void Encode2DLine(const uint8_t* scan_line); |
CFX_BinaryBuf m_DestBuf; |
- FX_LPBYTE m_pRefLine, m_pLineBuf; |
+ uint8_t* m_pRefLine; |
+ uint8_t* m_pLineBuf; |
int m_Cols, m_Rows, m_Pitch; |
- FX_LPCBYTE m_pSrcBuf; |
+ const uint8_t* m_pSrcBuf; |
}; |
-CCodec_FaxEncoder::CCodec_FaxEncoder(FX_LPCBYTE src_buf, int width, int height, int pitch) |
+CCodec_FaxEncoder::CCodec_FaxEncoder(const uint8_t* src_buf, int width, int height, int pitch) |
{ |
m_pSrcBuf = src_buf; |
m_Cols = width; |
@@ -949,12 +951,12 @@ CCodec_FaxEncoder::~CCodec_FaxEncoder() |
FX_Free(m_pLineBuf); |
} |
} |
-void CCodec_FaxEncoder::Encode(FX_LPBYTE& dest_buf, FX_DWORD& dest_size) |
+void CCodec_FaxEncoder::Encode(uint8_t*& dest_buf, FX_DWORD& dest_size) |
{ |
int dest_bitpos = 0; |
uint8_t last_byte = 0; |
for (int i = 0; i < m_Rows; i ++) { |
- FX_LPCBYTE scan_line = m_pSrcBuf + i * m_Pitch; |
+ const uint8_t* scan_line = m_pSrcBuf + i * m_Pitch; |
FXSYS_memset32(m_pLineBuf, 0, m_Pitch * 8); |
m_pLineBuf[0] = last_byte; |
_FaxEncode2DLine(m_pLineBuf, dest_bitpos, scan_line, m_pRefLine, m_Cols); |
@@ -970,13 +972,13 @@ void CCodec_FaxEncoder::Encode(FX_LPBYTE& dest_buf, FX_DWORD& dest_size) |
dest_size = m_DestBuf.GetSize(); |
m_DestBuf.DetachBuffer(); |
} |
-FX_BOOL CCodec_FaxModule::Encode(FX_LPCBYTE src_buf, int width, int height, int pitch, FX_LPBYTE& dest_buf, FX_DWORD& dest_size) |
+FX_BOOL CCodec_FaxModule::Encode(const uint8_t* src_buf, int width, int height, int pitch, uint8_t*& dest_buf, FX_DWORD& dest_size) |
{ |
CCodec_FaxEncoder encoder(src_buf, width, height, pitch); |
encoder.Encode(dest_buf, dest_size); |
return TRUE; |
} |
-ICodec_ScanlineDecoder* CCodec_FaxModule::CreateDecoder(FX_LPCBYTE src_buf, FX_DWORD src_size, int width, int height, |
+ICodec_ScanlineDecoder* CCodec_FaxModule::CreateDecoder(const uint8_t* src_buf, FX_DWORD src_size, int width, int height, |
int K, FX_BOOL EndOfLine, FX_BOOL EncodedByteAlign, FX_BOOL BlackIs1, int Columns, int Rows) |
{ |
CCodec_FaxDecoder* pDecoder = new CCodec_FaxDecoder; |