<!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_80) on Mon Nov 19 10:38:41 PST 2018 -->
<title>Compression</title>
<meta name="date" content="2018-11-19">
<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="Compression";
    }
//-->
</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="../../../com/digitalpersona/uareu/package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></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>Prev Class</li>
<li><a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/digitalpersona/uareu/Compression.html" target="_top">Frames</a></li>
<li><a href="Compression.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.digitalpersona.uareu</div>
<h2 title="Interface Compression" class="title">Interface Compression</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="strong">Compression</span></pre>
<div class="block">Compression interface.
 <p>
 Compression provides image compression algorithms. Currently available:
  - NIST WSQ algorithm;
  - Aware WSQ, if licensed instance of Aware WSQ 1000 SDK is available.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested_class_summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Interface and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a></strong></code>
<div class="block">Constants describing compression algorithm to use.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.RawImage.html" title="class in com.digitalpersona.uareu">Compression.RawImage</a></strong></code>
<div class="block">Class represents raw image data.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a></code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#CompressFid(com.digitalpersona.uareu.Fid,%20com.digitalpersona.uareu.Compression.CompressionAlgorithm)">CompressFid</a></strong>(<a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a>&nbsp;fid,
           <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)</code>
<div class="block">Compresses FID.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#CompressRaw(byte[],%20int,%20int,%20int,%20int,%20com.digitalpersona.uareu.Compression.CompressionAlgorithm)">CompressRaw</a></strong>(byte[]&nbsp;data,
           int&nbsp;width,
           int&nbsp;height,
           int&nbsp;dpi,
           int&nbsp;bpp,
           <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)</code>
<div class="block">Compresses raw image.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a></code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#ExpandFid(com.digitalpersona.uareu.Fid,%20com.digitalpersona.uareu.Compression.CompressionAlgorithm)">ExpandFid</a></strong>(<a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a>&nbsp;fid,
         <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)</code>
<div class="block">Expands compressed FID.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../com/digitalpersona/uareu/Compression.RawImage.html" title="class in com.digitalpersona.uareu">Compression.RawImage</a></code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#ExpandRaw(byte[],%20com.digitalpersona.uareu.Compression.CompressionAlgorithm)">ExpandRaw</a></strong>(byte[]&nbsp;data,
         <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)</code>
<div class="block">Expands compressed raw image.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#Finish()">Finish</a></strong>()</code>
<div class="block">Ends compression or decompression operation, releases memory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#SetWsqBitrate(int,%20int)">SetWsqBitrate</a></strong>(int&nbsp;bitrate_x100,
             int&nbsp;tolerance_aw)</code>
<div class="block">Sets target bitrate and tolerance for WSQ compression operation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#SetWsqSize(int,%20int)">SetWsqSize</a></strong>(int&nbsp;size,
          int&nbsp;tolerance_aw)</code>
<div class="block">Sets target size and tolerance for WSQ compression operation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/digitalpersona/uareu/Compression.html#Start()">Start</a></strong>()</code>
<div class="block">Starts compression or decompression operation.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="Start()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Start</h4>
<pre>void&nbsp;Start()
           throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Starts compression or decompression operation.
 <p></div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to start operation.</dd></dl>
</li>
</ul>
<a name="Finish()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Finish</h4>
<pre>void&nbsp;Finish()
            throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Ends compression or decompression operation, releases memory.
 <p></div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to finish operation.</dd></dl>
</li>
</ul>
<a name="SetWsqBitrate(int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SetWsqBitrate</h4>
<pre>void&nbsp;SetWsqBitrate(int&nbsp;bitrate_x100,
                 int&nbsp;tolerance_aw)
                   throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Sets target bitrate and tolerance for WSQ compression operation.
 <p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bitrate_x100</code> - Requested bitrate multiplied by 100. For example, to request bitrate of 4.19, pass 419.</dd><dd><code>tolerance_aw</code> - Sets tolerance in percents for the Aware WSQ compression. Range is 1 to 100. If NIST algorithm used this parameter will be ignored.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to set bitrate.</dd></dl>
</li>
</ul>
<a name="SetWsqSize(int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SetWsqSize</h4>
<pre>void&nbsp;SetWsqSize(int&nbsp;size,
              int&nbsp;tolerance_aw)
                throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Sets target size and tolerance for WSQ compression operation.
 <p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>size</code> - Requested size of compressed image.</dd><dd><code>tolerance_aw</code> - Sets tolerance in percents for the Aware WSQ compression. Range is 1 to 100. If NIST algorithm used this parameter will be ignored.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to set bitrate.</dd></dl>
</li>
</ul>
<a name="CompressFid(com.digitalpersona.uareu.Fid, com.digitalpersona.uareu.Compression.CompressionAlgorithm)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CompressFid</h4>
<pre><a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a>&nbsp;CompressFid(<a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a>&nbsp;fid,
              <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)
                throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Compresses FID.
 <p>
 This function attempts to compress FID using Aware WSQ library (WSQ1000) or NIST algorithm. It's necessary to set target bitrate or
 target size before calling CompressFid(). The resulting size likely will differ from the requested size, or bitrate.
 How much the difference will be is dictated by the image, requested size or bitrate and tolerance (only for Aware algorithm).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fid</code> - FID to compress.</dd><dd><code>compression_alg</code> - Compression algorithm to use.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Compressed FID.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to compress FID.</dd></dl>
</li>
</ul>
<a name="CompressRaw(byte[], int, int, int, int, com.digitalpersona.uareu.Compression.CompressionAlgorithm)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CompressRaw</h4>
<pre>byte[]&nbsp;CompressRaw(byte[]&nbsp;data,
                 int&nbsp;width,
                 int&nbsp;height,
                 int&nbsp;dpi,
                 int&nbsp;bpp,
                 <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)
                   throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Compresses raw image.
 <p>
 This function attempts to compress image using Aware WSQ library (WSQ1000) or NIST algorithm. It's necessary to set target bitrate or
 target size before calling CompressRaw(). The resulting size likely will differ from the requested size, or bitrate.
 How much the difference will be is dictated by the image, requested size or bitrate and tolerance (only for Aware algorithm).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>data</code> - Image to compress.</dd><dd><code>width</code> - Width of the image.</dd><dd><code>height</code> - Heght of the image.</dd><dd><code>dpi</code> - Resolution of the image in DPI.</dd><dd><code>bpp</code> - Pixel depth of the image.</dd><dd><code>compression_alg</code> - Compression algorithm to use.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Compressed raw image.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to compress FID.</dd></dl>
</li>
</ul>
<a name="ExpandFid(com.digitalpersona.uareu.Fid, com.digitalpersona.uareu.Compression.CompressionAlgorithm)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ExpandFid</h4>
<pre><a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a>&nbsp;ExpandFid(<a href="../../../com/digitalpersona/uareu/Fid.html" title="interface in com.digitalpersona.uareu">Fid</a>&nbsp;fid,
            <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)
              throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Expands compressed FID.
 <p>
 This function attempts to expand FID using Aware WSQ library (WSQ1000) or NIST algorithm.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fid</code> - FID to expand.</dd><dd><code>compression_alg</code> - Compression algorithm to use.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Expanded FID.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to compress FID.</dd></dl>
</li>
</ul>
<a name="ExpandRaw(byte[], com.digitalpersona.uareu.Compression.CompressionAlgorithm)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ExpandRaw</h4>
<pre><a href="../../../com/digitalpersona/uareu/Compression.RawImage.html" title="class in com.digitalpersona.uareu">Compression.RawImage</a>&nbsp;ExpandRaw(byte[]&nbsp;data,
                             <a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu">Compression.CompressionAlgorithm</a>&nbsp;compression_alg)
                               throws <a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></pre>
<div class="block">Expands compressed raw image.
 <p>
 This function attempts to expand raw image using Aware WSQ library (WSQ1000) or NIST algorithm.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>data</code> - Compressed raw image to expand.</dd><dd><code>compression_alg</code> - Compression algorithm to use.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Expanded raw image.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../com/digitalpersona/uareu/UareUException.html" title="class in com.digitalpersona.uareu">UareUException</a></code> - if failed to compress FID.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= 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="../../../com/digitalpersona/uareu/package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></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>Prev Class</li>
<li><a href="../../../com/digitalpersona/uareu/Compression.CompressionAlgorithm.html" title="enum in com.digitalpersona.uareu"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/digitalpersona/uareu/Compression.html" target="_top">Frames</a></li>
<li><a href="Compression.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
