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.
|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1997.
//
// File: IWBreak.hxx
//
// Contents: Korean Word Breaker
//
// Classes: CWordBreaker
//
// History: 09-Sep-1997 WeibZ Created
//
//----------------------------------------------------------------------------
#ifndef __IWBREAK_HXX__
#define __IWBREAK_HXX__
//+---------------------------------------------------------------------------
//
// Class: CWordBreaker
//
// Purpose: Break text into phrases and words (Infosoft's wordbreaker)
//
//----------------------------------------------------------------------------
class CWordBreaker : public IWordBreaker { public:
//
// From IUnknown
//
virtual SCODE STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject );
virtual ULONG STDMETHODCALLTYPE AddRef();
virtual ULONG STDMETHODCALLTYPE Release();
// From IWordBreaker
//
virtual SCODE STDMETHODCALLTYPE Init( BOOL fQuery, ULONG ulMaxTokenSize, BOOL *pfLicense );
virtual SCODE STDMETHODCALLTYPE BreakText( TEXT_SOURCE *pTextSource, IWordSink *pWordSink, IPhraseSink *pPhraseSink );
virtual SCODE STDMETHODCALLTYPE ComposePhrase( WCHAR const *pwcNoun, ULONG cwcNoun, WCHAR const *pwcModifier, ULONG cwcModifier, ULONG ulAttachmentType, WCHAR *pwcPhrase, ULONG *pcwcPhrase );
virtual SCODE STDMETHODCALLTYPE GetLicenseToUse( const WCHAR **ppwcsLicense );
// Local methods
//
CWordBreaker( LCID lcid );
private:
~CWordBreaker();
void Tokenize( unsigned cwc, BOOL bMoreText, TEXT_SOURCE *pTextSource, WT *Type);
BOOL ProcessTokens( TEXT_SOURCE *pTextSource, WT Type, IWordSink *pWordSink, IPhraseSink *pPhraseSink );
long _cRefs; LCID _lcid; BOOL _fQuery; ULONG _ulMaxTokenSize;
DWORD _cchTextProcessed;
};
#define VERBCHAR 0xB2E4 // it will be appended to the root form of a Verb.
#endif // __IWBREAK_HXX__
|