www.pudn.com > NETINFO.rar > EmailDecode.h
#ifndef _EMAILDECODE_H_
#define _EMAILDECODE_H_
class CTransferDecoder
{
public:
CTransferDecoder(){};
virtual ~CTransferDecoder(){};
virtual BOOL Decode(const char* input, int inputStrlen, char* output,
int outputBufSize, int* outLength) = 0;
};
class C7bit8bitTranferDecoder:public CTransferDecoder
{
public:
C7bit8bitTranferDecoder(){};
virtual ~C7bit8bitTranferDecoder(){};
virtual BOOL Decode(const char* input, int inputStrlen, char* output,
int outputBufSize, int* outLength);
};
class CQPTranferDecoder:public CTransferDecoder
{
public:
CQPTranferDecoder(){};
virtual ~CQPTranferDecoder(){};
virtual BOOL Decode(const char* input, int inputStrlen, char* output,
int outputBufSize, int* outLength);
};
class CBase64TranferDecoder:public CTransferDecoder
{
public:
CBase64TranferDecoder(){memset(m_szRemain, 0, sizeof(m_szRemain));};
virtual ~CBase64TranferDecoder(){};
virtual BOOL Decode(const char* input, int inputStrlen, char* output,
int outputBufSize, int* outLength);
private:
char m_szRemain[4];
};
BOOL HeaderDecode(const char* input, int inputStrlen, char* output,
int outputBufSize, int *outLength);
#endif