LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
WordSenseUnit.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#ifndef LIMA_WORDSENSEDISAMBIGUATION_WORDSENSEUNIT_H
7#define LIMA_WORDSENSEDISAMBIGUATION_WORDSENSEUNIT_H
8
10#include <set>
11#include <string>
12#include "CommonTypedefs.h"
13
14
15
16namespace Lima
17{
18namespace LinguisticProcessing
19{
20namespace WordSenseDisambiguation
21{
22
24{
25 public :
26 WordSenseUnit() = default;
27 ~WordSenseUnit() = default;
28
29 WordSenseUnit(uint senseId,
30 uint64_t parentLemmaId,
31 Mode mode,
32 std::string& senseTag,
33 std::set<uint64_t>& sensesMembersIds,
34 int freq=0);
35
36 WordSenseUnit(const WordSenseUnit& wsu) = default;
37 WordSenseUnit& operator=(const WordSenseUnit& wsu) = default;
38
39
40 friend LIMA_WORDSENSEANALYSIS_EXPORT std::ostream& operator << (std::ostream& os, const WordSenseUnit& wsu);
41
42 uint64_t parentLemmaId();
43 uint64_t senseId();
44 std::string senseTag();
45 std::set<uint64_t>& senseMembersIds();
46 Mode mode();
47
48 uint64_t parentLemmaId() const ;
49 uint64_t senseId() const ;
50 const std::string& senseTag() const ;
51 const std::set<uint64_t>& senseMembersIds() const ;
52 Mode mode() const ;
53
54 bool operator<(const WordSenseUnit& wsu) const
55 {
56 if (m_mode==wsu.mode()) return (m_senseId<wsu.senseId());
57 return m_mode<wsu.mode();
58 };
59
60// bool operator==(const WordSenseUnit& wsu) const
61// {
62// return (m_mode==wsu.mode() && m_senseId==wsu.senseId());
63// };
64
65
66
67 protected :
70 uint64_t m_senseId;
71 std::string m_senseTag;
72 std::set<uint64_t> m_senseMembersIds;
73 int m_freq;
74};
75
77{
78 return m_parentLemmaId;
79}
80inline uint64_t WordSenseUnit::senseId()
81{
82 return m_senseId;
83}
84inline std::string WordSenseUnit::senseTag()
85{
86 return m_senseTag;
87}
88inline std::set<uint64_t>& WordSenseUnit::senseMembersIds()
89{
90 return m_senseMembersIds;
91}
93{
94 return m_mode;
95}
96inline uint64_t WordSenseUnit::parentLemmaId() const
97{
98 return m_parentLemmaId;
99}
100inline uint64_t WordSenseUnit::senseId() const
101{
102 return m_senseId;
103}
104inline const std::string& WordSenseUnit::senseTag() const
105{
106 return m_senseTag;
107}
108inline const std::set<uint64_t>& WordSenseUnit::senseMembersIds() const
109{
110 return m_senseMembersIds;
111}
113{
114 return m_mode;
115}
116
117
118
119} // namespace WordSenseDisambiguation
120} // namespace LinguisticProcessing
121} // namespace Lima
122
123#endif // LIMA_WORDSENSEDISAMBIGUATION_WORDSENSEUNIT_H
QDebug & operator<<(QDebug &qd, const std::string &str)
Definition QsLog.cpp:39
#define LIMA_WORDSENSEANALYSIS_EXPORT
WordSenseUnit & operator=(const WordSenseUnit &wsu)=default
NAUTITIA.