|
/* This file is a part of SmartLexicon, a multi-lingual dictionary engine.
Copyright (C) 2005, Kostas Giannakakis
SmartLexicon is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
SmartLexicon is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with SmartLexicon; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#pragma once
#include "LexSourceFileBase.h"
#include "textfile.h"
#include <vector>
using std::vector;
class CLexSourceFileText : public CLexSourceFileBase
{
public:
CLexSourceFileText(void);
~CLexSourceFileText(void);
static CLexSourceFileBase* CreateNew() {return (new CLexSourceFileText);};
BOOL Open(const CString& aName);
BOOL Analyse();
BOOL IsOpen();
BOOL IsReady() { return(ready);};
int GetLineCount() {return(lineCount);};
int GetSize() {return(size);};
void GetName(CString& aName) { aName = name;};
void SetSeparator(const CString& aSeparator ) { separator = aSeparator;};
BOOL GetLineAt(int index, CString& line);
void GetWordEntryAt(int index, vector<WordEntry> &v);
CString GetHeadWord(int index);
CString GetHeadWord(int index, CString& wordToSearch);
CString GetHeadWordLabel(int index, CString& wordToSearch);
void SeekToBegin();
BOOL ReadLine(CString &line);
BOOL ReadLineFromOffset(CString &line, int offset);
void ReadLine(CString &line, int n);
protected:
CFile file;
CTextFileRead *textFileRead;
vector<int> lineToByteOffsetVector;
CString currentLine;
int prevLineRead;
private:
CString separator;
};
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.