<!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 (1.8.0_162) on Thu Feb 01 21:39:12 KST 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>edu.snu.coral.conf Class Hierarchy (Coral Project 0.1-SNAPSHOT API)</title>
<meta name="date" content="2018-02-01">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="edu.snu.coral.conf Class Hierarchy (Coral Project 0.1-SNAPSHOT API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<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>Use</li>
<li class="navBarCell1Rev">Tree</li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../edu/snu/coral/compiler/optimizer/policy/package-tree.html">Prev</a></li>
<li><a href="../../../../edu/snu/coral/driver/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?edu/snu/coral/conf/package-tree.html" target="_top">Frames</a></li>
<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;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 class="title">Hierarchy For Package edu.snu.coral.conf</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">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
<ul>
<li type="circle">org.apache.reef.tang.formats.ConfigurationModuleBuilder
<ul>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf</span></a></li>
</ul>
</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.DAGDirectory.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.DAGDirectory</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.DeployMode.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.DeployMode</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.DriverMemMb.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.DriverMemMb</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.ExecutorCapacity.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.ExecutorCapacity</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.ExecutorId.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.ExecutorId</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.ExecutorJsonContents.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.ExecutorJsonContents</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.ExecutorJsonPath.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.ExecutorJsonPath</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.FileDirectory.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.FileDirectory</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.GlusterVolumeDirectory.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.GlusterVolumeDirectory</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.HashRangeMultiplier.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.HashRangeMultiplier</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.IORequestHandleThreadsTotal.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.IORequestHandleThreadsTotal</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.JobId.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.JobId</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.JVMHeapSlack.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.JVMHeapSlack</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.MaxScheduleAttempt.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.MaxScheduleAttempt</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.OptimizationPolicy.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.OptimizationPolicy</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.PartitionTransportClientNumThreads.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.PartitionTransportClientNumThreads</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.PartitionTransportServerBacklog.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.PartitionTransportServerBacklog</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.PartitionTransportServerNumListeningThreads.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.PartitionTransportServerNumListeningThreads</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.PartitionTransportServerNumWorkingThreads.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.PartitionTransportServerNumWorkingThreads</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.PartitionTransportServerPort.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.PartitionTransportServerPort</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.SchedulerTimeoutMs.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.SchedulerTimeoutMs</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.ScheduleSerThread.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.ScheduleSerThread</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.SerializedDAG.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.SerializedDAG</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.UserMainArguments.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.UserMainArguments</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
<li type="circle">edu.snu.coral.conf.<a href="../../../../edu/snu/coral/conf/JobConf.UserMainClass.html" title="class in edu.snu.coral.conf"><span class="typeNameLink">JobConf.UserMainClass</span></a> (implements org.apache.reef.tang.annotations.Name&lt;T&gt;)</li>
</ul>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<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>Use</li>
<li class="navBarCell1Rev">Tree</li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../edu/snu/coral/compiler/optimizer/policy/package-tree.html">Prev</a></li>
<li><a href="../../../../edu/snu/coral/driver/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?edu/snu/coral/conf/package-tree.html" target="_top">Frames</a></li>
<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.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>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2018. All rights reserved.</small></p>
</body>
</html>
