LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator Class Reference

Builds possible chains paths between two vertices. More...

#include <linguisticProcessing/core/SyntacticAnalysis/ChainsDisambiguator.h>

Public Member Functions

 ChainsDisambiguator (SyntacticData *data, const LinguisticGraphVertex &s, const LinguisticGraphVertex &t, MediaId language, uint64_t depGraphMaxBranchingFactor)
 Main constructor.
 
 ChainsDisambiguator (const ChainsDisambiguator &cd)
 Copy constructor.
 
virtual ~ChainsDisambiguator ()
 Destructor.
 
ChainsDisambiguator & operator= (const ChainsDisambiguator &cd)
 Affectation operator.
 
void initPaths ()
 create the initial paths
 
void computePaths ()
 compute the paths
 
void applyDisambiguisation ()
 Modify the graph to keep only the selected path.
 

Detailed Description

Builds possible chains paths between two vertices.

This class builds possible chains paths between two vertices, trying to avoid to build useless paths where chains are strictly included in the chains of another path. It disambiguates paths to keep only those that are the best with respect to some criteria (see Path class for these criteria).

Definition at line 201 of file ChainsDisambiguator.h.

Constructor & Destructor Documentation

◆ ChainsDisambiguator() [1/2]

Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator::ChainsDisambiguator ( SyntacticData *  data,
const LinguisticGraphVertex &  s,
const LinguisticGraphVertex &  t,
MediaId  language,
uint64_t  depGraphMaxBranchingFactor 
)

Main constructor.

Search bounds have to be the top and bottom of a diamond graph.

Parameters
dataIN/OUT SyntacticData* the dependency graph and related data
sIN const LinguisticGraphVertex& the top bound of searched part of the graph
tIN const LinguisticGraphVertex& the bottom bound of searched part of the graph
languageIN unsigned char the language id of the analyzed text
depGraphMaxBranchingFactorIN uint64_t Max number of out edges looked at for each node. This is combinatorial explosion limitation parameter.

Definition at line 30 of file ChainsDisambiguator.cpp.

◆ ChainsDisambiguator() [2/2]

Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator::ChainsDisambiguator ( const ChainsDisambiguator &  cd)

Copy constructor.

Definition at line 46 of file ChainsDisambiguator.cpp.

◆ ~ChainsDisambiguator()

virtual Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator::~ChainsDisambiguator ( )
inlinevirtual

Destructor.

Nothing to do

Definition at line 230 of file ChainsDisambiguator.h.

Member Function Documentation

◆ applyDisambiguisation()

void Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator::applyDisambiguisation ( )

Modify the graph to keep only the selected path.

simplify the graph to keep only the selected chains path

Todo:
Modify to be able to keep all equivalent paths with respect to the quality criteria

Definition at line 668 of file ChainsDisambiguator.cpp.

◆ computePaths()

void Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator::computePaths ( )

compute the paths

Definition at line 127 of file ChainsDisambiguator.cpp.

◆ initPaths()

void Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator::initPaths ( )

create the initial paths

Definition at line 70 of file ChainsDisambiguator.cpp.

◆ operator=()

ChainsDisambiguator & Lima::LinguisticProcessing::SyntacticAnalysis::ChainsDisambiguator::operator= ( const ChainsDisambiguator &  cd)

Affectation operator.

Definition at line 57 of file ChainsDisambiguator.cpp.


The documentation for this class was generated from the following files: