LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
defaultIdGenerator.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
/************************************************************************
7
*
8
* @file defaultIdGenerator.cpp
9
* @author Besancon Romaric (romaric.besancon@cea.fr)
10
* @date Tue Feb 7 2006
11
* copyright Copyright (C) 2006-2012 by CEA LIST
12
*
13
***********************************************************************/
14
15
#include "
defaultIdGenerator.h
"
16
17
namespace
Lima
{
18
namespace
Common {
19
namespace
BagOfWords {
20
21
class
LIMA_BOW_EXPORT
DefaultIdGeneratorPrivate
22
{
23
friend
class
DefaultIdGenerator
;
24
DefaultIdGeneratorPrivate
(
const
uint64_t lastId);
25
~DefaultIdGeneratorPrivate
();
26
27
uint64_t m_lastId;
28
uint64_t m_simpleTermCount;
29
uint64_t m_compoundTermCount;
30
};
31
32
DefaultIdGeneratorPrivate::DefaultIdGeneratorPrivate(
const
uint64_t lastId) :
33
m_lastId(lastId),
34
m_simpleTermCount(0),
35
m_compoundTermCount(0)
36
{
37
}
38
39
DefaultIdGeneratorPrivate::~DefaultIdGeneratorPrivate()
40
{
41
}
42
43
DefaultIdGenerator::DefaultIdGenerator
(
AbstractLexiconIdGeneratorInformer
* informer,
44
const
uint64_t lastId) :
45
AbstractLexiconIdGenerator
(informer),
46
m_d(new
DefaultIdGeneratorPrivate
(lastId))
47
{
48
}
49
50
DefaultIdGenerator::~DefaultIdGenerator
()
51
{
52
delete
m_d;
53
}
54
55
uint64_t
DefaultIdGenerator::getId
(
const
LimaString
&
/*unused word*/
)
56
{
57
const_cast<
DefaultIdGenerator
*
>
(
this
)->m_d->m_simpleTermCount++;
58
return
const_cast<
DefaultIdGenerator
*
>
(
this
)->m_d->m_lastId++;
59
}
60
61
uint64_t
DefaultIdGenerator::getId
(
const
std::vector<uint64_t>&
/*unused structure*/
)
62
{
63
const_cast<
DefaultIdGenerator
*
>
(
this
)->m_d->m_compoundTermCount++;
64
return
const_cast<
DefaultIdGenerator
*
>
(
this
)->m_d->m_lastId++;
65
}
66
67
uint64_t
DefaultIdGenerator::getSize
()
const
68
{
69
return
m_d->m_simpleTermCount + m_d->m_compoundTermCount;
70
}
71
72
uint64_t
DefaultIdGenerator::getSimpleTermSize
()
const
73
{
74
return
m_d->m_simpleTermCount;
75
}
76
77
}
// end namespace
78
}
// end namespace
79
}
// end namespace
LIMA_BOW_EXPORT
#define LIMA_BOW_EXPORT
Definition
LinguisticProcessingCommon.h:80
Lima::Common::AbstractLexiconIdGeneratorInformer
Definition
AbstractLexiconIdGenerator.h:26
Lima::Common::AbstractLexiconIdGenerator
Definition
AbstractLexiconIdGenerator.h:41
Lima::Common::BagOfWords::DefaultIdGeneratorPrivate
Definition
defaultIdGenerator.cpp:22
Lima::Common::BagOfWords::DefaultIdGenerator
Definition
defaultIdGenerator.h:34
Lima::Common::BagOfWords::DefaultIdGenerator::getSize
uint64_t getSize() const override
Definition
defaultIdGenerator.cpp:67
Lima::Common::BagOfWords::DefaultIdGenerator::~DefaultIdGenerator
~DefaultIdGenerator()
Definition
defaultIdGenerator.cpp:50
Lima::Common::BagOfWords::DefaultIdGenerator::DefaultIdGenerator
DefaultIdGenerator(AbstractLexiconIdGeneratorInformer *informer, const uint64_t lastId=1)
Definition
defaultIdGenerator.cpp:43
Lima::Common::BagOfWords::DefaultIdGenerator::getId
uint64_t getId(const LimaString &) override
Definition
defaultIdGenerator.cpp:55
Lima::Common::BagOfWords::DefaultIdGenerator::getSimpleTermSize
uint64_t getSimpleTermSize() const override
Definition
defaultIdGenerator.cpp:72
defaultIdGenerator.h
Lima
NAUTITIA.
Definition
AmosePluginsManager.h:15
Lima::LimaString
QString LimaString
Definition
LimaString.h:33
lima_linguisticprocessing
src
linguisticProcessing
common
BagOfWords
defaultIdGenerator.cpp
Generated by
1.9.8