<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.5) on Tue Jan 21 20:13:53 EST 2020 -->
<title>W-Index (PTP API Specification)</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="dc.created" content="2020-01-21">
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../script.js"></script>
<script type="text/javascript" src="../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../jquery/jquery-3.4.1.js"></script>
<script type="text/javascript" src="../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="W-Index (PTP API Specification)";
        }
    }
    catch(err) {
    }
//-->
var pathtoroot = "../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../index.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="../overview-tree.html">Tree</a></li>
<li><a href="../deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><b>PTP</b><br>Release 7.0</div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<main role="main">
<div class="contentContainer"><a href="index-1.html">A</a>&nbsp;<a href="index-2.html">B</a>&nbsp;<a href="index-3.html">C</a>&nbsp;<a href="index-4.html">D</a>&nbsp;<a href="index-5.html">E</a>&nbsp;<a href="index-6.html">F</a>&nbsp;<a href="index-7.html">G</a>&nbsp;<a href="index-8.html">H</a>&nbsp;<a href="index-9.html">I</a>&nbsp;<a href="index-10.html">J</a>&nbsp;<a href="index-11.html">L</a>&nbsp;<a href="index-12.html">M</a>&nbsp;<a href="index-13.html">N</a>&nbsp;<a href="index-14.html">O</a>&nbsp;<a href="index-15.html">P</a>&nbsp;<a href="index-16.html">Q</a>&nbsp;<a href="index-17.html">R</a>&nbsp;<a href="index-18.html">S</a>&nbsp;<a href="index-19.html">T</a>&nbsp;<a href="index-20.html">U</a>&nbsp;<a href="index-21.html">V</a>&nbsp;<a href="index-22.html">W</a>&nbsp;<a href="index-23.html">X</a>&nbsp;<br><a href="../allclasses-index.html">All&nbsp;Classes</a>&nbsp;<a href="../allpackages-index.html">All&nbsp;Packages</a><a id="I:W">
<!--   -->
</a>
<h2 class="title">W</h2>
<dl>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/rdt/sync/core/SyncFlag.html#WAIT_FOR_LR">WAIT_FOR_LR</a></span> - org.eclipse.ptp.rdt.sync.core.<a href="../org/eclipse/ptp/rdt/sync/core/SyncFlag.html" title="enum in org.eclipse.ptp.rdt.sync.core">SyncFlag</a></dt>
<dd>
<div class="block">Wait only</div>
</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/rdt/sync/core/SyncFlag.html#WAIT_FOR_LR_ONLY">WAIT_FOR_LR_ONLY</a></span> - Static variable in enum org.eclipse.ptp.rdt.sync.core.<a href="../org/eclipse/ptp/rdt/sync/core/SyncFlag.html" title="enum in org.eclipse.ptp.rdt.sync.core">SyncFlag</a></dt>
<dd>
<div class="block">Convenience flag set for sync'ing on the wait for pending requests.</div>
</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/debug/core/pdi/request/IPDIInternalEventRequest.html#waitUntilCompleted(org.eclipse.ptp.debug.core.TaskSet)">waitUntilCompleted(TaskSet)</a></span> - Method in interface org.eclipse.ptp.debug.core.pdi.request.<a href="../org/eclipse/ptp/debug/core/pdi/request/IPDIInternalEventRequest.html" title="interface in org.eclipse.ptp.debug.core.pdi.request">IPDIInternalEventRequest</a></dt>
<dd>
<div class="block">Wait until completed</div>
</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/debug/core/pdi/request/IPDIInternalEventRequest.html#waitUntilCompleted(org.eclipse.ptp.debug.core.TaskSet,org.eclipse.core.runtime.IProgressMonitor)">waitUntilCompleted(TaskSet, IProgressMonitor)</a></span> - Method in interface org.eclipse.ptp.debug.core.pdi.request.<a href="../org/eclipse/ptp/debug/core/pdi/request/IPDIInternalEventRequest.html" title="interface in org.eclipse.ptp.debug.core.pdi.request">IPDIInternalEventRequest</a></dt>
<dd>
<div class="block">Wait until completed.</div>
</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/debug/core/model/IPDebugElementStatus.html#WARNING">WARNING</a></span> - Static variable in interface org.eclipse.ptp.debug.core.model.<a href="../org/eclipse/ptp/debug/core/model/IPDebugElementStatus.html" title="interface in org.eclipse.ptp.debug.core.model">IPDebugElementStatus</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/pldt/common/ScanReturn.html#wasError()">wasError()</a></span> - Method in class org.eclipse.ptp.pldt.common.<a href="../org/eclipse/ptp/pldt/common/ScanReturn.html" title="class in org.eclipse.ptp.pldt.common">ScanReturn</a></dt>
<dd>
<div class="block">was an error found during the artifact analysis?</div>
</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/debug/core/IPBreakpointManager.html#watchpointOutOfScope(org.eclipse.ptp.debug.core.TaskSet,org.eclipse.ptp.debug.core.pdi.model.IPDIWatchpoint)">watchpointOutOfScope(TaskSet, IPDIWatchpoint)</a></span> - Method in interface org.eclipse.ptp.debug.core.<a href="../org/eclipse/ptp/debug/core/IPBreakpointManager.html" title="interface in org.eclipse.ptp.debug.core">IPBreakpointManager</a></dt>
<dd>
<div class="block">Notify that a watchpoint is out of scope</div>
</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/etfw/toolopts/ExternalToolProcess.Parametric.html#weakScaling">weakScaling</a></span> - Variable in class org.eclipse.ptp.etfw.toolopts.<a href="../org/eclipse/ptp/etfw/toolopts/ExternalToolProcess.Parametric.html" title="class in org.eclipse.ptp.etfw.toolopts">ExternalToolProcess.Parametric</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/etfw/toolopts/ToolPane.MakeBrowseListener.html#widgetSelected(org.eclipse.swt.events.SelectionEvent)">widgetSelected(SelectionEvent)</a></span> - Method in class org.eclipse.ptp.etfw.toolopts.<a href="../org/eclipse/ptp/etfw/toolopts/ToolPane.MakeBrowseListener.html" title="class in org.eclipse.ptp.etfw.toolopts">ToolPane.MakeBrowseListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/etfw/toolopts/ToolPaneListener.html#widgetSelected(org.eclipse.swt.events.SelectionEvent)">widgetSelected(SelectionEvent)</a></span> - Method in class org.eclipse.ptp.etfw.toolopts.<a href="../org/eclipse/ptp/etfw/toolopts/ToolPaneListener.html" title="class in org.eclipse.ptp.etfw.toolopts">ToolPaneListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/pldt/common/actions/RunAnalyseHandlerBase.html#window">window</a></span> - Variable in class org.eclipse.ptp.pldt.common.actions.<a href="../org/eclipse/ptp/pldt/common/actions/RunAnalyseHandlerBase.html" title="class in org.eclipse.ptp.pldt.common.actions">RunAnalyseHandlerBase</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/rdt/sync/core/RecursiveSubMonitor.html#worked(int)">worked(int)</a></span> - Method in class org.eclipse.ptp.rdt.sync.core.<a href="../org/eclipse/ptp/rdt/sync/core/RecursiveSubMonitor.html" title="class in org.eclipse.ptp.rdt.sync.core">RecursiveSubMonitor</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/debug/core/model/IPWatchpoint.html#WRITE">WRITE</a></span> - Static variable in interface org.eclipse.ptp.debug.core.model.<a href="../org/eclipse/ptp/debug/core/model/IPWatchpoint.html" title="interface in org.eclipse.ptp.debug.core.model">IPWatchpoint</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../org/eclipse/ptp/debug/core/pdi/model/IPDIWatchpoint.html#WRITE">WRITE</a></span> - Static variable in interface org.eclipse.ptp.debug.core.pdi.model.<a href="../org/eclipse/ptp/debug/core/pdi/model/IPDIWatchpoint.html" title="interface in org.eclipse.ptp.debug.core.pdi.model">IPDIWatchpoint</a></dt>
<dd>
<div class="block">Write value</div>
</dd>
</dl>
<a href="index-1.html">A</a>&nbsp;<a href="index-2.html">B</a>&nbsp;<a href="index-3.html">C</a>&nbsp;<a href="index-4.html">D</a>&nbsp;<a href="index-5.html">E</a>&nbsp;<a href="index-6.html">F</a>&nbsp;<a href="index-7.html">G</a>&nbsp;<a href="index-8.html">H</a>&nbsp;<a href="index-9.html">I</a>&nbsp;<a href="index-10.html">J</a>&nbsp;<a href="index-11.html">L</a>&nbsp;<a href="index-12.html">M</a>&nbsp;<a href="index-13.html">N</a>&nbsp;<a href="index-14.html">O</a>&nbsp;<a href="index-15.html">P</a>&nbsp;<a href="index-16.html">Q</a>&nbsp;<a href="index-17.html">R</a>&nbsp;<a href="index-18.html">S</a>&nbsp;<a href="index-19.html">T</a>&nbsp;<a href="index-20.html">U</a>&nbsp;<a href="index-21.html">V</a>&nbsp;<a href="index-22.html">W</a>&nbsp;<a href="index-23.html">X</a>&nbsp;<br><a href="../allclasses-index.html">All&nbsp;Classes</a>&nbsp;<a href="../allpackages-index.html">All&nbsp;Packages</a></div>
</main>
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../index.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="../overview-tree.html">Tree</a></li>
<li><a href="../deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><b>PTP</b><br>Release 7.0</div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../allclasses.html">All&nbsp;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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright (c) 2011 IBM Corporation and others. All Rights Reserved.</small></p>
</footer>
</body>
</html>
