<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>com.ibm.j9ddr.corereaders.elf Class Hierarchy (OpenJ9 JDK 11)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<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.5.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="com.ibm.j9ddr.corereaders.elf Class Hierarchy (OpenJ9 JDK 11)";
        }
    }
    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><a href="../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li class="navBarCell1Rev">Tree</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"><div style="margin-top: 9px;"><strong>OpenJ9 JDK 11</strong></div></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="header">
<h1 class="title">Hierarchy For Package com.ibm.j9ddr.corereaders.elf</h1>
<span class="packageHierarchyLabel">Package Hierarchies:</span>
<ul class="horizontal">
<li><a href="../../../../../../overview-tree.html">All Packages</a></li>
</ul>
</div>
<div class="contentContainer">
<section role="region">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank"><span class="typeNameLink">Object</span></a>
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.memory.<a href="../memory/BaseMemoryRange.html" title="class in com.ibm.j9ddr.corereaders.memory"><span class="typeNameLink">BaseMemoryRange</span></a> (implements com.ibm.j9ddr.corereaders.memory.<a href="../memory/IMemoryRange.html" title="interface in com.ibm.j9ddr.corereaders.memory">IMemoryRange</a>)
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.memory.<a href="../memory/ProtectedMemoryRange.html" title="class in com.ibm.j9ddr.corereaders.memory"><span class="typeNameLink">ProtectedMemoryRange</span></a>
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFMemorySource.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFMemorySource</span></a> (implements com.ibm.j9ddr.corereaders.memory.<a href="../memory/IDetailedMemoryRange.html" title="interface in com.ibm.j9ddr.corereaders.memory">IDetailedMemoryRange</a>, com.ibm.j9ddr.corereaders.memory.<a href="../memory/IMemorySource.html" title="interface in com.ibm.j9ddr.corereaders.memory">IMemorySource</a>)</li>
</ul>
</li>
</ul>
</li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFDumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFDumpReader</span></a> (implements com.ibm.j9ddr.corereaders.<a href="../ILibraryDependentCore.html" title="interface in com.ibm.j9ddr.corereaders">ILibraryDependentCore</a>)
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFAArch64DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFAArch64DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFAMD64DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFAMD64DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFARM32DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFARM32DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFIA32DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFIA32DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFPPC32DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFPPC32DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFPPC64DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFPPC64DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFRISCV64DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFRISCV64DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFS39031DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFS39031DumpReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFS39064DumpReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFS39064DumpReader</span></a></li>
</ul>
</li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFDumpReader.LinuxThread.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFDumpReader.LinuxThread</span></a> (implements com.ibm.j9ddr.corereaders.osthread.<a href="../osthread/IOSThread.html" title="interface in com.ibm.j9ddr.corereaders.osthread">IOSThread</a>)</li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFDumpReader.RegisterComparator.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFDumpReader.RegisterComparator</span></a> (implements java.util.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink" target="_blank">Comparator</a>&lt;T&gt;)</li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFDumpReaderFactory.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFDumpReaderFactory</span></a> (implements com.ibm.j9ddr.corereaders.<a href="../ICoreFileReader.html" title="interface in com.ibm.j9ddr.corereaders">ICoreFileReader</a>)</li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELFFileReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELFFileReader</span></a>
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELF32FileReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELF32FileReader</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ELF64FileReader.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ELF64FileReader</span></a></li>
</ul>
</li>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="ProgramHeaderEntry.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">ProgramHeaderEntry</span></a></li>
<li class="circle">com.ibm.j9ddr.corereaders.memory.<a href="../memory/SearchableMemory.html" title="class in com.ibm.j9ddr.corereaders.memory"><span class="typeNameLink">SearchableMemory</span></a> (implements com.ibm.j9ddr.corereaders.memory.<a href="../memory/IMemory.html" title="interface in com.ibm.j9ddr.corereaders.memory">IMemory</a>)
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.memory.<a href="../memory/AbstractMemory.html" title="class in com.ibm.j9ddr.corereaders.memory"><span class="typeNameLink">AbstractMemory</span></a> (implements com.ibm.j9ddr.corereaders.memory.<a href="../memory/IMemory.html" title="interface in com.ibm.j9ddr.corereaders.memory">IMemory</a>)
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.memory.<a href="../memory/ProcessAddressSpace.html" title="class in com.ibm.j9ddr.corereaders.memory"><span class="typeNameLink">ProcessAddressSpace</span></a> (implements com.ibm.j9ddr.corereaders.memory.<a href="../memory/IAddressSpace.html" title="interface in com.ibm.j9ddr.corereaders.memory">IAddressSpace</a>, com.ibm.j9ddr.corereaders.memory.<a href="../memory/IProcess.html" title="interface in com.ibm.j9ddr.corereaders.memory">IProcess</a>)
<ul>
<li class="circle">com.ibm.j9ddr.corereaders.elf.<a href="LinuxProcessAddressSpace.html" title="class in com.ibm.j9ddr.corereaders.elf"><span class="typeNameLink">LinuxProcessAddressSpace</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</section>
</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><a href="../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li class="navBarCell1Rev">Tree</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"><div style="margin-top: 9px;"><strong>OpenJ9 JDK 11</strong></div></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><a href="https://www.eclipse.org/openj9/" target="_blank">Eclipse OpenJ9 website.</a><br> To raise a bug report or suggest an improvement create an <a href="https://github.com/eclipse-openj9/openj9/issues" target="_blank">Eclipse Openj9 issue.</a><br> Copyright &copy; 1998, 2021, IBM Corp. and others.</small></p>
</footer>
</body>
</html>
