LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
AnalysisDico.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) 2003 by CEA *
8 * author Olivier MESNARD olivier.mesnard@cea.fr *
9 * *
10 * composed dictionnary *
11 ***************************************************************************/
12#ifndef COMMON_ANALYSISDICO_ANALYSISDICO_HPP
13#define COMMON_ANALYSISDICO_ANALYSISDICO_HPP
14
15
16#include "common/LimaCommon.h"
17
18// accessMethod
20
22
23namespace Lima {
24namespace LinguisticProcessing {
25namespace AnalysisDict {
26
27/*
28 * typename accessMethod: class with following method:
29 * accessMethod(bool keyOrderingIsForward)
30 * int getIndex(const basic_string<Lima::LimaChar>& key) const;
31 * uint64_t getSize() const;
32 * void read(keyFileName);
33 *
34 */
35
36// Example : analysis dictionary
37// typedef Lima::Common::FsaAccess::FsaAccessSpare16 accessMethod;
38// AnalysisDico<accessMethod>
39
41
42template <typename accessMethod>
43class AnalysisDico : public Lima::Common::StringMap::IndirectDataDico<accessMethod, analysisDicoEntry> {
44public:
45 AnalysisDico(bool trie_direction_fwd=true);
47/*
48 std::pair<ComposedDict16_subword_iterator, ComposedDict16_subword_iterator>
49 getSubWordEntries(
50 const int offset,
51 const LimaString& key ) const;
52*/
53 void setDicoCode(Lima::LinguisticProcessing::Dictionary::DictionaryCode* dicoCode) {
54 m_dicoCode=dicoCode;
55 }
56protected:
57 virtual void fillIndex2Data();
58 Lima::LinguisticProcessing::Dictionary::DictionaryCode *m_dicoCode;
60};
61
62} // namespace AnalysisDict
63} // namespace LinguisticProcessing
64} // namespace Lima
65
66#include "linguisticProcessing/core/AnalysisDict/AnalysisDico.tcc"
67
68#endif //COMMON_ANALYSISDICO_ANALYSISDICO_HPP
Lima::LinguisticProcessing::Dictionary::DictionaryCode * m_dicoCode
analysisDicoEntry getEntry(const Lima::LimaString &word) const
void setDicoCode(Lima::LinguisticProcessing::Dictionary::DictionaryCode *dicoCode)
Lima::LinguisticProcessing::Dictionary::DictionaryEntry analysisDicoEntry
NAUTITIA.
QString LimaString
Definition LimaString.h:33