<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (16) -->
<title>TraceFile (OpenJ9 JDK 16)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: module: openj9.traceformat, package: com.ibm.jvm.trace, class: TraceFile">
<meta name="generator" content="javadoc/ClassWriterImpl">
<meta name="keywords" content="com.ibm.jvm.trace.TraceFile class">
<meta name="keywords" content="addTraceBuffer()">
<meta name="keywords" content="addTraceFileHeader()">
<meta name="keywords" content="getHeaderInfo()">
<meta name="keywords" content="getTraceThreads()">
<meta name="keywords" content="getGlobalChronologicalTracePointIterator()">
<meta name="keywords" content="getNextTracePoint()">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar.top">
<div class="skip-nav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<div class="about-language"><div style="margin-top: 9px;"><strong>OpenJ9 JDK 16</strong></div></div>
<ul id="navbar.top.firstrow" class="nav-list" 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="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/TraceFile.html">Use</a></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>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip.navbar.top">
<!--   -->
</span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="module-label-in-type">Module</span>&nbsp;<a href="../../../../module-summary.html">openj9.traceformat</a></div>
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.ibm.jvm.trace</a></div>
<h1 title="Class TraceFile" class="title">Class TraceFile</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">java.lang.Object</a>
<div class="inheritance">com.ibm.jvm.trace.TraceFile</div>
</div>
<section class="description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">TraceFile</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor.summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><span class="member-name-link"><a href="#%3Cinit%3E()">TraceFile</a></span>()</code></div>
<div class="col-last even-row-color">
<div class="block">Create an empty TraceFile object to which TraceBuffers and a TraceFileHeader can 
 be added.</div>
</div>
<div class="col-constructor-name odd-row-color"><code><span class="member-name-link"><a href="#%3Cinit%3E(java.lang.String)">TraceFile</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;traceFileNameURI)</code></div>
<div class="col-last odd-row-color">
<div class="block">Create a TraceFile object for a binary trace file.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method.summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addTraceBuffer(byte%5B%5D)">addTraceBuffer</a></span>&#8203;(byte[]&nbsp;traceBuffer)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Add a byte representation of a binary trace buffer to the current TraceFile.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addTraceFileHeader(byte%5B%5D)">addTraceFileHeader</a></span>&#8203;(byte[]&nbsp;traceFileHeader)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Add a binary representation of a TraceFileHeader to the current TraceFile.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getGlobalChronologicalTracePointIterator()">getGlobalChronologicalTracePointIterator</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get a TracePoint Iterator for the current TraceFile.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="TraceFileHeader.html" title="interface in com.ibm.jvm.trace">TraceFileHeader</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getHeaderInfo()">getHeaderInfo</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the object representation of the current TraceFile's TraceFileHeader</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="TracePoint.html" title="interface in com.ibm.jvm.trace">TracePoint</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getNextTracePoint()">getNextTracePoint</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get a tracepoint from the trace file.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="TraceThread.html" title="interface in com.ibm.jvm.trace">TraceThread</a>[]</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getTraceThreads()">getTraceThreads</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get an array representing all of the traced threads in the current TraceFile.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods.inherited.from.class.java.lang.Object">Methods declared in class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link" target="_blank">clone</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link" target="_blank">equals</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link" target="_blank">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link" target="_blank">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link" target="_blank">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link" target="_blank">notify</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link" target="_blank">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link" target="_blank">toString</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link" target="_blank">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor.detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(java.lang.String)">
<h3>TraceFile</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">TraceFile</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;traceFileNameURI)</span></div>
<div class="block">Create a TraceFile object for a binary trace file.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>traceFileNameURI</code> - a URI of the binary trace file to open and format.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>TraceFile</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">TraceFile</span>()</div>
<div class="block">Create an empty TraceFile object to which TraceBuffers and a TraceFileHeader can 
 be added.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method.detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="addTraceBuffer(byte[])">
<h3>addTraceBuffer</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">addTraceBuffer</span>&#8203;<span class="parameters">(byte[]&nbsp;traceBuffer)</span>
                       throws <span class="exceptions">com.ibm.jvm.trace.InvalidTraceBufferException</span></div>
<div class="block">Add a byte representation of a binary trace buffer to the current TraceFile.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>traceBuffer</code> - an array of bytes containing the traceBuffer to be added.
 The traceBuffer must have the precise length of the complete traceBuffer, and
 the traceBuffer must be exactly as generated by the trace engine of an IBM Java
 VM. The byte array must not contain any padding.</dd>
<dt>Returns:</dt>
<dd>true on success, false on failure to add the buffer to the current TraceFile.</dd>
<dt>Throws:</dt>
<dd><code>com.ibm.jvm.trace.InvalidTraceBufferException</code> - if the byte array does not contain a valid 
 binary trace buffer.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addTraceFileHeader(byte[])">
<h3>addTraceFileHeader</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">addTraceFileHeader</span>&#8203;<span class="parameters">(byte[]&nbsp;traceFileHeader)</span>
                           throws <span class="exceptions">com.ibm.jvm.trace.InvalidTraceFileHeaderException</span></div>
<div class="block">Add a binary representation of a TraceFileHeader to the current TraceFile.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>traceFileHeader</code> - a byte array containing precisely a TraceFileHeader as 
 generated by the IBM Java VM trace engine. The byte array must not contain
 any padding.</dd>
<dt>Returns:</dt>
<dd>true if the header is added, false if a header has already been added.</dd>
<dt>Throws:</dt>
<dd><code>com.ibm.jvm.trace.InvalidTraceFileHeaderException</code> - if the byte array does not contain a valid
 binary trace file header.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getHeaderInfo()">
<h3>getHeaderInfo</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="TraceFileHeader.html" title="interface in com.ibm.jvm.trace">TraceFileHeader</a></span>&nbsp;<span class="element-name">getHeaderInfo</span>()</div>
<div class="block">Get the object representation of the current TraceFile's TraceFileHeader</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>a TraceFileHeader object representing the current TraceFile's TraceFileHeader,
 or null if the current TraceFile does not contain a valid TraceFileHeader.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getTraceThreads()">
<h3>getTraceThreads</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="TraceThread.html" title="interface in com.ibm.jvm.trace">TraceThread</a>[]</span>&nbsp;<span class="element-name">getTraceThreads</span>()</div>
<div class="block">Get an array representing all of the traced threads in the current TraceFile.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>an array of TraceThread objects, containing one TraceThread object per 
 thread found in the current TraceFile, or null if the current TraceFile does
 not contain any traced threads.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getGlobalChronologicalTracePointIterator()">
<h3>getGlobalChronologicalTracePointIterator</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getGlobalChronologicalTracePointIterator</span>()</div>
<div class="block">Get a TracePoint Iterator for the current TraceFile.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>an Iterator that can be used to walk every TracePoint in the current
 TraceFile in chronological order. The iterator can be used a single time only, 
 since it consumes the data as it walks it. Requesting an Iterator for a 
 consumed TraceFile with return an empty Iterator. An empty Iterator will also
 be returned in cases where the current TraceFile does not contain any TracePoints.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getNextTracePoint()">
<h3>getNextTracePoint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="TracePoint.html" title="interface in com.ibm.jvm.trace">TracePoint</a></span>&nbsp;<span class="element-name">getNextTracePoint</span>()</div>
<div class="block">Get a tracepoint from the trace file.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the next trace point for this file.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><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>
</div>
</div>
</body>
</html>
