Segment.h
上传用户:chen_dj
上传日期:2013-04-22
资源大小:111k
文件大小:2k
源码类别:

多国语言处理

开发平台:

C/C++

  1. /****************************************************************************
  2.  *
  3.  * Copyright (c) 2000, 2001 
  4.  *     Machine Group
  5.  *     Software Research Lab.
  6.  *     Institute of Computing Tech.
  7.  *     Chinese Academy of Sciences
  8.  *     All rights reserved.
  9.  *
  10.  * This file is the confidential and proprietary property of 
  11.  * Institute of Computing Tech. and the posession or use of this file requires 
  12.  * a written license from the author.
  13.  * Filename: Segment.cpp
  14.  * Abstract:
  15.  *           interface for the CSegment class.
  16.  * Author:   Kevin Zhang 
  17.  *          (zhanghp@software.ict.ac.cn)
  18.  * Date:     2002-4-23
  19.  *
  20.  * Notes:  N-Shortest paths Word segmentation
  21.  *                
  22.  ****************************************************************************/
  23. #if !defined(AFX_SEGMENT_H__76DAE34D_434F_4989_8F00_64F17B5E19ED__INCLUDED_)
  24. #define AFX_SEGMENT_H__76DAE34D_434F_4989_8F00_64F17B5E19ED__INCLUDED_
  25. #if _MSC_VER > 1000
  26. #pragma once
  27. #endif // _MSC_VER > 1000
  28. #include "DynamicArray.h"
  29. #include "..\Utility\Dictionary.h"
  30. #include "SegGraph.h"//The segmentation graph
  31. #define MAX_WORDS 650
  32. #define MAX_SEGMENT_NUM 10
  33. class CSegment  
  34. {
  35. public:
  36. bool GetLastWord(PWORD_RESULT pItem, char *sWordRet);
  37. int GetResultCount(PWORD_RESULT pItem);
  38. bool OptimumSegmet(int nResultCount);
  39. //Word Segmentation based on optimum segmentation graph
  40. //After unknown word recognition
  41. bool Segment(char *sSentence,CDictionary &dictCore,int nResultCount=10);
  42. CSegment();
  43. virtual ~CSegment();
  44. PWORD_RESULT *m_pWordSeg;
  45. int m_nSegmentCount;
  46. //The segmentation result
  47. CDynamicArray m_graphOptimum;//The optimumized segmentation graph
  48. CSegGraph m_graphSeg;//The segmentation graph
  49. protected:
  50. bool IsYearTime(char *sNum);
  51. bool GenerateWord(int ** nSegRoute, int nIndex);
  52. };
  53. #endif // !defined(AFX_SEGMENT_H__76DAE34D_434F_4989_8F00_64F17B5E19ED__INCLUDED_)