<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_75) on Mon May 18 03:56:46 EDT 2015 -->
<title>Uses of Package org.eclipse.emf.compare.match.eobject (EMF Compare API Specification)</title>
<meta name="date" content="2015-05-18">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Uses of Package org.eclipse.emf.compare.match.eobject (EMF Compare API Specification)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="navBarCell1Rev">Use</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><span style='font-size:small'><b>EMF Compare</b><br>3.2.0.201505180755</span></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/emf/compare/match/eobject/package-use.html" target="_top">Frames</a></li>
<li><a href="package-use.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Uses of Package org.eclipse.emf.compare.match.eobject" class="title">Uses of Package<br>org.eclipse.emf.compare.match.eobject</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
<caption><span>Packages that use <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="#org.eclipse.emf.compare.match">org.eclipse.emf.compare.match</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.eclipse.emf.compare.match.eobject">org.eclipse.emf.compare.match.eobject</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.eclipse.emf.compare.match.eobject.internal">org.eclipse.emf.compare.match.eobject.internal</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.eclipse.emf.compare.match.impl">org.eclipse.emf.compare.match.impl</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.eclipse.emf.compare.rcp">org.eclipse.emf.compare.rcp</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.eclipse.emf.compare.rcp.internal.match">org.eclipse.emf.compare.rcp.internal.match</a></td>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.eclipse.emf.compare.match">
<!--   -->
</a>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a> used by <a href="../../../../../../org/eclipse/emf/compare/match/package-summary.html">org.eclipse.emf.compare.match</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/IEObjectMatcher.html#org.eclipse.emf.compare.match">IEObjectMatcher</a>
<div class="block">An <a href="../../../../../../org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html" title="interface in org.eclipse.emf.compare.match.eobject"><code>IEObjectMatcher</code></a> will be used by the default implementation of the
 <a href="../../../../../../org/eclipse/emf/compare/match/DefaultMatchEngine.html" title="class in org.eclipse.emf.compare.match"><code>DefaultMatchEngine</code></a> in order to determine the mappings between three
 lists of EObjects coming from the left, right and origin sides.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.Registry.html#org.eclipse.emf.compare.match">WeightProvider.Descriptor.Registry</a>
<div class="block">Registry of weight provider descriptors.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.eclipse.emf.compare.match.eobject">
<!--   -->
</a>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a> used by <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/AbstractWeightProvider.html#org.eclipse.emf.compare.match.eobject">AbstractWeightProvider</a>
<div class="block">Abstract implementation which is parameterized to set weights based on features, to ignore features and
 consider "name" features as more important.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/DefaultWeightProvider.html#org.eclipse.emf.compare.match.eobject">DefaultWeightProvider</a>
<div class="block">The default implementation of <a href="../../../../../../org/eclipse/emf/compare/match/eobject/WeightProvider.html" title="interface in org.eclipse.emf.compare.match.eobject"><code>WeightProvider</code></a> applicable to
 all objects.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/EditionDistance.html#org.eclipse.emf.compare.match.eobject">EditionDistance</a>
<div class="block">This distance function implementation will actually compare the given EObject.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/EditionDistance.Builder.html#org.eclipse.emf.compare.match.eobject">EditionDistance.Builder</a>
<div class="block">Builder class to configure an EditionDistance instance.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/EObjectIndex.Side.html#org.eclipse.emf.compare.match.eobject">EObjectIndex.Side</a>
<div class="block">An enumeration used in the API to specify sides.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/IEObjectMatcher.html#org.eclipse.emf.compare.match.eobject">IEObjectMatcher</a>
<div class="block">An <a href="../../../../../../org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html" title="interface in org.eclipse.emf.compare.match.eobject"><code>IEObjectMatcher</code></a> will be used by the default implementation of the
 <a href="../../../../../../org/eclipse/emf/compare/match/DefaultMatchEngine.html" title="class in org.eclipse.emf.compare.match"><code>DefaultMatchEngine</code></a> in order to determine the mappings between three
 lists of EObjects coming from the left, right and origin sides.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/ProximityEObjectMatcher.DistanceFunction.html#org.eclipse.emf.compare.match.eobject">ProximityEObjectMatcher.DistanceFunction</a>
<div class="block">This represent a distance function used by the <a href="../../../../../../org/eclipse/emf/compare/match/eobject/ProximityEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject"><code>ProximityEObjectMatcher</code></a> to compare EObjects and
 retrieve the closest EObject from one side to another.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/ScopeQuery.html#org.eclipse.emf.compare.match.eobject">ScopeQuery</a>
<div class="block">A class implementing this contract should have the ability to query the scope and tell, from a given
 EObject, if it is in the scope or not.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.html#org.eclipse.emf.compare.match.eobject">WeightProvider</a>
<div class="block">Provide the weight to consider while comparing EObjects by their content.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.html#org.eclipse.emf.compare.match.eobject">WeightProvider.Descriptor</a>
<div class="block">Wrapper describing the given weight provider.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.Registry.html#org.eclipse.emf.compare.match.eobject">WeightProvider.Descriptor.Registry</a>
<div class="block">Registry of weight provider descriptors.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.eclipse.emf.compare.match.eobject.internal">
<!--   -->
</a>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a> used by <a href="../../../../../../org/eclipse/emf/compare/match/eobject/internal/package-summary.html">org.eclipse.emf.compare.match.eobject.internal</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/EObjectIndex.html#org.eclipse.emf.compare.match.eobject.internal">EObjectIndex</a>
<div class="block">An EObjectIndex has for responsability to store/remove EObjects and return the closest EObject from another
 one (each one being registered with a different Side.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/EObjectIndex.Side.html#org.eclipse.emf.compare.match.eobject.internal">EObjectIndex.Side</a>
<div class="block">An enumeration used in the API to specify sides.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/ProximityEObjectMatcher.DistanceFunction.html#org.eclipse.emf.compare.match.eobject.internal">ProximityEObjectMatcher.DistanceFunction</a>
<div class="block">This represent a distance function used by the <a href="../../../../../../org/eclipse/emf/compare/match/eobject/ProximityEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject"><code>ProximityEObjectMatcher</code></a> to compare EObjects and
 retrieve the closest EObject from one side to another.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/ScopeQuery.html#org.eclipse.emf.compare.match.eobject.internal">ScopeQuery</a>
<div class="block">A class implementing this contract should have the ability to query the scope and tell, from a given
 EObject, if it is in the scope or not.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.html#org.eclipse.emf.compare.match.eobject.internal">WeightProvider</a>
<div class="block">Provide the weight to consider while comparing EObjects by their content.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.html#org.eclipse.emf.compare.match.eobject.internal">WeightProvider.Descriptor</a>
<div class="block">Wrapper describing the given weight provider.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.eclipse.emf.compare.match.impl">
<!--   -->
</a>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a> used by <a href="../../../../../../org/eclipse/emf/compare/match/impl/package-summary.html">org.eclipse.emf.compare.match.impl</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/IEObjectMatcher.html#org.eclipse.emf.compare.match.impl">IEObjectMatcher</a>
<div class="block">An <a href="../../../../../../org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html" title="interface in org.eclipse.emf.compare.match.eobject"><code>IEObjectMatcher</code></a> will be used by the default implementation of the
 <a href="../../../../../../org/eclipse/emf/compare/match/DefaultMatchEngine.html" title="class in org.eclipse.emf.compare.match"><code>DefaultMatchEngine</code></a> in order to determine the mappings between three
 lists of EObjects coming from the left, right and origin sides.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.Registry.html#org.eclipse.emf.compare.match.impl">WeightProvider.Descriptor.Registry</a>
<div class="block">Registry of weight provider descriptors.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.eclipse.emf.compare.rcp">
<!--   -->
</a>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a> used by <a href="../../../../../../org/eclipse/emf/compare/rcp/package-summary.html">org.eclipse.emf.compare.rcp</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.Registry.html#org.eclipse.emf.compare.rcp">WeightProvider.Descriptor.Registry</a>
<div class="block">Registry of weight provider descriptors.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.eclipse.emf.compare.rcp.internal.match">
<!--   -->
</a>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../../org/eclipse/emf/compare/match/eobject/package-summary.html">org.eclipse.emf.compare.match.eobject</a> used by <a href="../../../../../../org/eclipse/emf/compare/rcp/internal/match/package-summary.html">org.eclipse.emf.compare.rcp.internal.match</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.html#org.eclipse.emf.compare.rcp.internal.match">WeightProvider</a>
<div class="block">Provide the weight to consider while comparing EObjects by their content.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.html#org.eclipse.emf.compare.rcp.internal.match">WeightProvider.Descriptor</a>
<div class="block">Wrapper describing the given weight provider.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../org/eclipse/emf/compare/match/eobject/class-use/WeightProvider.Descriptor.Registry.html#org.eclipse.emf.compare.rcp.internal.match">WeightProvider.Descriptor.Registry</a>
<div class="block">Registry of weight provider descriptors.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="navBarCell1Rev">Use</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><span style='font-size:small'><b>EMF Compare</b><br>3.2.0.201505180755</span></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/emf/compare/match/eobject/package-use.html" target="_top">Frames</a></li>
<li><a href="package-use.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><br><span style='font-size:small;float:right'>Copyright (c) 2006, 2014 Obeo and others. All rights reserved.</span></small></p>
</body>
</html>
