LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
MultiLevelAnalysisDictionaryEntry.h
Go to the documentation of this file.
1// Copyright 2002-2013 CEA LIST
2// SPDX-FileCopyrightText: 2022 CEA LIST <gael.de-chalendar@cea.fr>
3//
4// SPDX-License-Identifier: MIT
5
6/***************************************************************************
7 * Copyright (C) 2004-2012 by CEA LIST *
8 * *
9 ***************************************************************************/
10#ifndef LIMA_LINGUISTICPROCESSING_ANALYSISDICTMULTILEVELANALYSISDICTIONARYENTRY_H
11#define LIMA_LINGUISTICPROCESSING_ANALYSISDICTMULTILEVELANALYSISDICTIONARYENTRY_H
12
13#include "AnalysisDictExport.h"
15#include "DictionaryData.h"
16
17namespace Lima
18{
19
20namespace LinguisticProcessing
21{
22
23namespace AnalysisDict
24{
25
26class MultiLevelAnalysisDictionaryEntryPrivate;
31{
33public:
34
35 struct LevelData
36 {
37 LevelData() : startEntryData(0),endEntryData(0),keys(0),dicoData(0),mainKeys(false) {};
38 unsigned char* startEntryData;
39 unsigned char* endEntryData;
40 std::shared_ptr<Lima::Common::AbstractAccessByString> keys;
43 };
44
46 StringsPoolIndex formId,
47 bool isFinal,
48 bool isEmpty,
49 bool hasLingInfos,
50 bool hasConcatenated,
51 bool hasAccentedForm,
52 const std::vector<LevelData>& data,
54
55
57
60
61 virtual AbstractDictionaryEntry* clone() override;
62 virtual void parseAccentedForms(AbstractDictionaryEntryHandler* handler) const override;
63 virtual void parseConcatenated(AbstractDictionaryEntryHandler* handler) const override;
64 virtual void parseLingInfos(AbstractDictionaryEntryHandler* handler) const override;
65
66
67private:
69};
70
71}
72
73}
74
75}
76
77#endif
#define LIMA_ANALYSISDICT_EXPORT
void parseConcatenated(std::vector< ConcatenatedLevelState > &data, Lima::FsaStringsPool *sp, AbstractDictionaryEntryHandler *handler)
void parseLingInfos(std::vector< LingInfoLevelState > &data, Lima::FsaStringsPool *sp, AbstractDictionaryEntryHandler *handler)
NAUTITIA.