⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 suffixtree.h

📁 doxygen(一个自动从源代码生成文档的工具)的源代码
💻 H
字号:
/****************************************************************************** * * $Id: suffixtree.h,v 1.8 2001/03/19 19:27:41 root Exp $ * * Copyright (C) 1997-2001 by Dimitri van Heesch. * * Permission to use, copy, modify, and distribute this software and its * documentation under the terms of the GNU General Public License is hereby  * granted. No representations are made about the suitability of this software  * for any purpose. It is provided "as is" without express or implied warranty. * See the GNU General Public License for more details. * * Documents produced by Doxygen are derivative works derived from the * input used in their production; they are not affected by this license. * */#ifndef SUFFIXTREE_H#define SUFFIXTREE_H#include "qtbc.h"#include <qlist.h>#include <qarray.h>#include <qfile.h>class SuffixNodeList;class IndexTree;enum WordRefMasks { WORDINNAME_MASK=4, INNAME_MASK=2, FULLWORD_MASK=1 };enum WordRefBits  { WORDINNAME_BIT=2, INNAME_BIT=1, FULLWORD_BIT=0 };struct WordRef{  int   id;  short freq;  char  flags;};class SuffixNode{  friend class SuffixTree;  friend class IndexNode;  friend class SuffixNodeList;  public:    SuffixNode(const char *);   ~SuffixNode();    int  insert(const char *word,int refId,int inName,int full);    void addReference(int refId,int inName,int fullWord);    void dump(int,const char *);    void resolveForwardReferences(int &offset);    int  size(); // return the size of the tree whose root is this node    bool write(QFile &f);  private:    SuffixNodeList *children;    QArray<WordRef> references;    QCString label;    int branchOffset;    int totalFreq;};class SuffixNodeList : public QList<SuffixNode>{  public:    SuffixNodeList() : QList<SuffixNode>() {}   ~SuffixNodeList() {}    int compareItems(GCI item1,GCI item2);};class SuffixTree{  friend class SuffixNode;  public:    SuffixTree();   ~SuffixTree();    void insertWord(const char *word,int index,bool inName);    void resolveForwardReferences();    void dump();    int size(); // return the size of the (flat) tree in bytes    bool write(QFile &f);    int  numberOfNodes() { return nodes; }  private:    int nodes;    SuffixNode *root;};extern bool writeNumber(QFile &f,int);extern bool writeString(QFile &f,const char *s);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -