LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
SimplificationData.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
17#ifndef LIMA_SYNTACTICANALYSIS_SIMPLIFICATIONDATA_H
18#define LIMA_SYNTACTICANALYSIS_SIMPLIFICATIONDATA_H
19
23
24// To use tuples
25#include "boost/tuple/tuple.hpp"
26 //Comparison operators can be included with:
27#include "boost/tuple/tuple_comparison.hpp"
28// To use tuple input and output operators,
29#include "boost/tuple/tuple_io.hpp"
30
31namespace Lima {
32namespace LinguisticProcessing {
33namespace SyntacticAnalysis {
34
39{
40public:
41
47
48 virtual ~SimplificationData();
49
50 inline const std::list< boost::tuple< LinguisticGraphVertex, LinguisticGraphVertex, Common::MediaticData::SyntacticRelationId > >& subSentBounds() const {return m_subSentBounds;}
51
52 void subSentBounds(const boost::tuple<LinguisticGraphVertex, LinguisticGraphVertex, Common::MediaticData::SyntacticRelationId >& bounds);
53
54 inline void clearBounds() {m_subSentBounds.clear();}
55
56 inline bool simplificationDone() const {return m_simplificationDone;}
57 inline void simplificationDone(bool value) {m_simplificationDone = value;}
58
60
61 std::list< boost::tuple< LinguisticGraphEdge, LinguisticGraphEdge, Common::MediaticData::SyntacticRelationId > >& simplifications(LinguisticGraphVertex sent);
62
63 inline void sentence(LinguisticGraphVertex sent) {m_sentence = sent;}
64
65 inline std::map< std::string, std::vector< LinguisticGraphVertex > >& coordStringsDefs() {return m_coordStringsDefs;}
66 inline std::map< std::string, std::vector< std::vector< LinguisticGraphVertex > > >& coordStrings() {return m_coordStrings;}
67
68private:
69
70 std::list< boost::tuple< LinguisticGraphVertex, LinguisticGraphVertex, Common::MediaticData::SyntacticRelationId > > m_subSentBounds;
71
74 bool m_simplificationDone;
75
76 std::map< LinguisticGraphVertex,
77 std::list< boost::tuple< LinguisticGraphEdge, LinguisticGraphEdge, Common::MediaticData::SyntacticRelationId > > > m_simplifications;
78
79 LinguisticGraphVertex m_sentence;
80
81 std::map< std::string, std::vector< LinguisticGraphVertex > > m_coordStringsDefs;
82 std::map< std::string, std::vector< std::vector< LinguisticGraphVertex > > > m_coordStrings;
83};
84
85} // closing namespace SyntacticAnalysis
86} // closing namespace LinguisticProcessing
87} // closing namespace Lima
88
89#endif // LIMA_SYNTACTICANALYSIS_SIMPLIFICATIONDATA_H
boost::graph_traits< LinguisticGraph >::edge_descriptor LinguisticGraphEdge
typedefs to simplify the access to various graphs elements
LinguisticGraph::vertex_descriptor LinguisticGraphVertex
#define LIMA_SYNTACTICANALYSIS_EXPORT
just for semantics: base class for analysisData
An AnalysisData containing a LinguisticGraph with a language and an id.
const std::list< boost::tuple< LinguisticGraphVertex, LinguisticGraphVertex, Common::MediaticData::SyntacticRelationId > > & subSentBounds() const
std::map< std::string, std::vector< LinguisticGraphVertex > > & coordStringsDefs()
std::map< std::string, std::vector< std::vector< LinguisticGraphVertex > > > & coordStrings()
NAUTITIA.