/** @file SimpleEncoderBuffer.h @brief 文件打包:包文件系统 第一版测试
* Copyright (c) 2007,北京金刚游科技有限公司 * All rights reserved. * * 当前版本:2009-04-03 * 作 者:KingKong * 完成日期:2009-04-03 * * 取代版本: * 作 者: * 完成日期:*/ #include "ConvertBuffer.h" #define SIMPLE_ENCODER_BUFFER( ch ) ( ( ( ch & 0x0f ) << 4 ) | ( ( ch & 0xf0 ) >> 4 ) ) class CSimpleEncoderBuffer : public CConvertBuffer { public: CSimpleEncoderBuffer(void); ~CSimpleEncoderBuffer(void); virtual bool Create(); virtual void Destroy(); static CSimpleEncoderBuffer& GetInstance(); virtual bool DoConvertBuffer(const BYTE * szBuffer, UINT nBufferSize, BYTE * pDestBuffer, UINT nDecryptBufferSize); static inline bool ConvertBuffer(const BYTE * szBuffer, UINT nBufferSize, BYTE * pDestBuffer, UINT nDecryptBufferSize) { if (NULL == szBuffer) { return false; } if ( nDecryptBufferSize > nBufferSize ) { return false; } if (NULL == pDestBuffer) { return false; } for ( UINT nIndex = 0; nIndex < nDecryptBufferSize; nIndex ++ ) { pDestBuffer[nIndex] = SIMPLE_ENCODER_BUFFER( szBuffer[nIndex] ); } return true; } private: };