LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
Events.cpp
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
// NAUTITIA
7
//
8
// jys 11-JUL-2002
9
//
10
// Events is a string of events. Class of characters and other
11
// events are in the form of printable bytes. Class Events
12
// holds events which are of the same effect.
13
14
#include "
Events.h
"
15
#include "
CharChart.h
"
16
#include "
common/misc/Exceptions.h
"
17
#include "
common/Data/strwstrtools.h
"
18
19
#include <string>
20
21
using namespace
Lima::Common::Misc
;
22
23
namespace
Lima
24
{
25
namespace
LinguisticProcessing
26
{
27
namespace
FlatTokenizer
28
{
29
30
Events::Events
(std::shared_ptr<CharChart> chart) :
std
::vector<const
CharClass
*>(),
31
m_chart(chart)
32
{
33
}
34
35
Events::~Events
() {}
36
37
void
Events::addEventNamed
(
const
LimaString
& eventName)
38
{
39
push_back(m_chart->classNamed(eventName));
40
}
41
42
bool
Events::isRecognized
(
const
Lima::LimaChar
& event)
const
43
{
44
#ifdef DEBUG_LP
45
TOKENIZERLOGINIT
;
46
#endif
47
for
(uint64_t i = 0; i < size(); i++)
48
{
49
// LDEBUG << "Events::isRecognized("<<i<<","<<event<<") ; size=" << size();
50
const
CharClass
* eventClass = m_chart->charClass(event);
51
while
(eventClass != 0)
52
{
53
#ifdef DEBUG_LP
54
LDEBUG
<<
"| | | test event '"
<< eventClass->
name
()
55
<<
"' on '"
<< ((*this)[i]==0?
""
:(*this)[i]->name()) <<
"'"
;
56
#endif
57
if
( (*
this
)[i] == eventClass )
58
{
59
return
true
;
60
}
61
eventClass = eventClass->
superClass
();
62
}
63
}
64
return
false
;
65
}
66
67
}
//namespace FlatTokenizer
68
}
// namespace LinguisticProcessing
69
}
// namespace Lima
CharChart.h
Exceptions.h
Events.h
LDEBUG
#define LDEBUG
Definition
LimaCommon.h:157
TOKENIZERLOGINIT
#define TOKENIZERLOGINIT
Definition
LinguisticProcessingCommon.h:97
Lima::LinguisticProcessing::FlatTokenizer::CharClass
Definition
CharClass.h:20
Lima::LinguisticProcessing::FlatTokenizer::CharClass::superClass
const CharClass * superClass() const
Definition
CharClass.h:28
Lima::LinguisticProcessing::FlatTokenizer::CharClass::name
const Lima::LimaString & name() const
Definition
CharClass.h:27
Lima::LinguisticProcessing::FlatTokenizer::Events::isRecognized
bool isRecognized(const Lima::LimaChar &event) const
Definition
Events.cpp:42
Lima::LinguisticProcessing::FlatTokenizer::Events::Events
Events(std::shared_ptr< CharChart > chart)
Definition
Events.cpp:30
Lima::LinguisticProcessing::FlatTokenizer::Events::addEventNamed
void addEventNamed(const LimaString &eventName)
Definition
Events.cpp:37
Lima::LinguisticProcessing::FlatTokenizer::Events::~Events
virtual ~Events()
Definition
Events.cpp:35
Lima::Common::Misc
Definition
genericDocumentProperties.cpp:29
Lima
NAUTITIA.
Definition
AmosePluginsManager.h:15
Lima::LimaChar
QChar LimaChar
Definition
LimaString.h:30
Lima::LimaString
QString LimaString
Definition
LimaString.h:33
std
STL namespace.
strwstrtools.h
lima_linguisticprocessing
src
linguisticProcessing
core
FlatTokenizer
Events.cpp
Generated by
1.9.8