Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#include "convbase.h"
class CInccHzGbIn : public CINetCodeConverter { private: BOOL (CInccHzGbIn::*m_pfnConv)(UCHAR tc); BOOL (CInccHzGbIn::*m_pfnCleanUp)(); BOOL m_fGBMode; UCHAR m_tcLeadByte; UINT m_nESCBytes; /* # bytes of ESC sequence */
public: CInccHzGbIn(); CInccHzGbIn(UINT uCodePage, int nCodeSet); ~CInccHzGbIn() {} virtual HRESULT ConvertChar(UCHAR tc, int cchSrc=-1); virtual BOOL CleanUp(); virtual int GetUnconvertBytes(); virtual DWORD GetConvertMode(); virtual void SetConvertMode(DWORD mode);
private: void Reset(); BOOL ConvMain(UCHAR tc); BOOL CleanUpMain(); BOOL ConvTilde(UCHAR tc); BOOL CleanUpTilde(); BOOL ConvDoubleByte(UCHAR tc); BOOL CleanUpDoubleByte(); };
class CInccHzGbOut : public CINetCodeConverter { private: BOOL m_fDoubleByte; UCHAR m_tcLeadByte; BOOL m_fGBMode; DWORD _dwFlag; WCHAR *_lpFallBack;
public: CInccHzGbOut(UINT uCodePage, int nCodeSet, DWORD dwFlag, WCHAR *lpFallBack); ~CInccHzGbOut() {} virtual HRESULT ConvertChar(UCHAR tc, int cchSrc=-1); virtual BOOL CleanUp(); virtual int GetUnconvertBytes(); virtual DWORD GetConvertMode(); virtual void SetConvertMode(DWORD mode); private: void Reset(); };
|