mirror of
https://github.com/aaru-dps/libaaruformat.git
synced 2025-12-16 19:24:40 +00:00
560 lines
45 KiB
HTML
560 lines
45 KiB
HTML
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||
|
|
<head>
|
||
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||
|
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||
|
|
<meta name="generator" content="Doxygen 1.14.0"/>
|
||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||
|
|
<title>libaaruformat: DdtHeader2 Struct Reference</title>
|
||
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||
|
|
<script type="text/javascript" src="jquery.js"></script>
|
||
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
||
|
|
<script type="text/javascript" src="clipboard.js"></script>
|
||
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
||
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
||
|
|
<script type="text/javascript" src="navtree.js"></script>
|
||
|
|
<script type="text/javascript" src="cookie.js"></script>
|
||
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
||
|
|
<script type="text/javascript" src="search/search.js"></script>
|
||
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||
|
|
</head>
|
||
|
|
<body>
|
||
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||
|
|
<div id="titlearea">
|
||
|
|
<table cellspacing="0" cellpadding="0">
|
||
|
|
<tbody>
|
||
|
|
<tr id="projectrow">
|
||
|
|
<td id="projectalign">
|
||
|
|
<div id="projectname">libaaruformat<span id="projectnumber"> 1.0</span>
|
||
|
|
</div>
|
||
|
|
<div id="projectbrief">Aaru Data Preservation Suite - Format Library</div>
|
||
|
|
</td>
|
||
|
|
</tr>
|
||
|
|
</tbody>
|
||
|
|
</table>
|
||
|
|
</div>
|
||
|
|
<!-- end header part -->
|
||
|
|
<!-- Generated by Doxygen 1.14.0 -->
|
||
|
|
<script type="text/javascript">
|
||
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
||
|
|
</script>
|
||
|
|
<script type="text/javascript">
|
||
|
|
$(function() { codefold.init(); });
|
||
|
|
</script>
|
||
|
|
<script type="text/javascript" src="menudata.js"></script>
|
||
|
|
<script type="text/javascript" src="menu.js"></script>
|
||
|
|
<script type="text/javascript">
|
||
|
|
$(function() {
|
||
|
|
initMenu('',true,false,'search.php','Search',true);
|
||
|
|
$(function() { init_search(); });
|
||
|
|
});
|
||
|
|
</script>
|
||
|
|
<div id="main-nav"></div>
|
||
|
|
</div><!-- top -->
|
||
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||
|
|
<div id="nav-tree">
|
||
|
|
<div id="nav-tree-contents">
|
||
|
|
<div id="nav-sync" class="sync"></div>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
||
|
|
class="ui-resizable-handle">
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<script type="text/javascript">
|
||
|
|
$(function(){initNavTree('structDdtHeader2.html','',''); });
|
||
|
|
</script>
|
||
|
|
<div id="container">
|
||
|
|
<div id="doc-content">
|
||
|
|
<!-- window showing the filter options -->
|
||
|
|
<div id="MSearchSelectWindow"
|
||
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- iframe showing the search results (closed by default) -->
|
||
|
|
<div id="MSearchResultsWindow">
|
||
|
|
<div id="MSearchResults">
|
||
|
|
<div class="SRPage">
|
||
|
|
<div id="SRIndex">
|
||
|
|
<div id="SRResults"></div>
|
||
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="header">
|
||
|
|
<div class="headertitle"><div class="title">DdtHeader2 Struct Reference</div></div>
|
||
|
|
</div><!--header-->
|
||
|
|
<div class="contents">
|
||
|
|
|
||
|
|
<p>Header preceding a version 2 hierarchical deduplication table.
|
||
|
|
<a href="#details">More...</a></p>
|
||
|
|
|
||
|
|
<p><code>#include <<a class="el" href="ddt_8h_source.html">aaruformat/structs/ddt.h</a>></code></p>
|
||
|
|
<table class="memberdecls">
|
||
|
|
<tr class="heading"><td colspan="2"><h2 id="header-pub-attribs" class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
|
||
|
|
Data Fields</h2></td></tr>
|
||
|
|
<tr class="memitem:a80a88ec68cd0332a57886ac363bfa4d1" id="r_a80a88ec68cd0332a57886ac363bfa4d1"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a80a88ec68cd0332a57886ac363bfa4d1">identifier</a></td></tr>
|
||
|
|
<tr class="memdesc:a80a88ec68cd0332a57886ac363bfa4d1"><td class="mdescLeft"> </td><td class="mdescRight">Block identifier, must be BlockType::DeDuplicationTable2. <br /></td></tr>
|
||
|
|
<tr class="memitem:a14f9ccf36df63e036d69291182cf7bbb" id="r_a14f9ccf36df63e036d69291182cf7bbb"><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a14f9ccf36df63e036d69291182cf7bbb">type</a></td></tr>
|
||
|
|
<tr class="memdesc:a14f9ccf36df63e036d69291182cf7bbb"><td class="mdescLeft"> </td><td class="mdescRight">Data classification (<a class="el" href="enums_8h.html#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>) for sectors referenced by this table. <br /></td></tr>
|
||
|
|
<tr class="memitem:ad1a27a46df09748a91a9010a630c422e" id="r_ad1a27a46df09748a91a9010a630c422e"><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad1a27a46df09748a91a9010a630c422e">compression</a></td></tr>
|
||
|
|
<tr class="memdesc:ad1a27a46df09748a91a9010a630c422e"><td class="mdescLeft"> </td><td class="mdescRight">Compression algorithm for this table body (<a class="el" href="enums_8h.html#affec749ed88365143745313ae9168263">CompressionType</a>). <br /></td></tr>
|
||
|
|
<tr class="memitem:a68f4825db4e22906af0e55a359360656" id="r_a68f4825db4e22906af0e55a359360656"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a68f4825db4e22906af0e55a359360656">levels</a></td></tr>
|
||
|
|
<tr class="memdesc:a68f4825db4e22906af0e55a359360656"><td class="mdescLeft"> </td><td class="mdescRight">Total number of hierarchy levels (root depth); > 0. <br /></td></tr>
|
||
|
|
<tr class="memitem:ac8ec7921a5651b5107eda4e99b488798" id="r_ac8ec7921a5651b5107eda4e99b488798"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac8ec7921a5651b5107eda4e99b488798">tableLevel</a></td></tr>
|
||
|
|
<tr class="memdesc:ac8ec7921a5651b5107eda4e99b488798"><td class="mdescLeft"> </td><td class="mdescRight">Zero-based level index of this table (0 = root, increases downward). <br /></td></tr>
|
||
|
|
<tr class="memitem:af71423c2a8c7fa89dfd2313b456c57a2" id="r_af71423c2a8c7fa89dfd2313b456c57a2"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#af71423c2a8c7fa89dfd2313b456c57a2">previousLevelOffset</a></td></tr>
|
||
|
|
<tr class="memdesc:af71423c2a8c7fa89dfd2313b456c57a2"><td class="mdescLeft"> </td><td class="mdescRight">Absolute byte offset of the parent (previous) level table; 0 if root. <br /></td></tr>
|
||
|
|
<tr class="memitem:aa4b1416ac0e0585f436513cacf9ebd74" id="r_aa4b1416ac0e0585f436513cacf9ebd74"><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa4b1416ac0e0585f436513cacf9ebd74">negative</a></td></tr>
|
||
|
|
<tr class="memdesc:aa4b1416ac0e0585f436513cacf9ebd74"><td class="mdescLeft"> </td><td class="mdescRight">Leading negative LBA count; added to external L to build internal index. <br /></td></tr>
|
||
|
|
<tr class="memitem:a9571c1d556e33537935bab1edba31135" id="r_a9571c1d556e33537935bab1edba31135"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9571c1d556e33537935bab1edba31135">blocks</a></td></tr>
|
||
|
|
<tr class="memdesc:a9571c1d556e33537935bab1edba31135"><td class="mdescLeft"> </td><td class="mdescRight">Total internal span (negative + usable + overflow) in logical sectors. <br /></td></tr>
|
||
|
|
<tr class="memitem:a2bfa558d9d778ae6b86d52520e278b66" id="r_a2bfa558d9d778ae6b86d52520e278b66"><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a2bfa558d9d778ae6b86d52520e278b66">overflow</a></td></tr>
|
||
|
|
<tr class="memdesc:a2bfa558d9d778ae6b86d52520e278b66"><td class="mdescLeft"> </td><td class="mdescRight">Trailing dumped sectors beyond user area (overflow range), still mapped with entries. <br /></td></tr>
|
||
|
|
<tr class="memitem:a238a2ca31ce0f60af3e59a1cb3e2e73c" id="r_a238a2ca31ce0f60af3e59a1cb3e2e73c"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a238a2ca31ce0f60af3e59a1cb3e2e73c">start</a></td></tr>
|
||
|
|
<tr class="memdesc:a238a2ca31ce0f60af3e59a1cb3e2e73c"><td class="mdescLeft"> </td><td class="mdescRight">Base internal index covered by this table (used for secondary tables; currently informational). <br /></td></tr>
|
||
|
|
<tr class="memitem:aa67b097c3a20f926ede495d27152f1c0" id="r_aa67b097c3a20f926ede495d27152f1c0"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa67b097c3a20f926ede495d27152f1c0">blockAlignmentShift</a></td></tr>
|
||
|
|
<tr class="memdesc:aa67b097c3a20f926ede495d27152f1c0"><td class="mdescLeft"> </td><td class="mdescRight">2^blockAlignmentShift = block alignment boundary in bytes. <br /></td></tr>
|
||
|
|
<tr class="memitem:ad9a2beb3a79bc6c239ba04fe341e0cde" id="r_ad9a2beb3a79bc6c239ba04fe341e0cde"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad9a2beb3a79bc6c239ba04fe341e0cde">dataShift</a></td></tr>
|
||
|
|
<tr class="memdesc:ad9a2beb3a79bc6c239ba04fe341e0cde"><td class="mdescLeft"> </td><td class="mdescRight">2^dataShift = sectors represented per increment in blockIndex field. <br /></td></tr>
|
||
|
|
<tr class="memitem:a8c2110cbb42bde3c0e302d3429024b04" id="r_a8c2110cbb42bde3c0e302d3429024b04"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8c2110cbb42bde3c0e302d3429024b04">tableShift</a></td></tr>
|
||
|
|
<tr class="memdesc:a8c2110cbb42bde3c0e302d3429024b04"><td class="mdescLeft"> </td><td class="mdescRight">2^tableShift = number of logical sectors per primary entry (multi-level only; 0 for single-level or secondary tables). <br /></td></tr>
|
||
|
|
<tr class="memitem:a4e90c22109c3fff37b526a113b094a50" id="r_a4e90c22109c3fff37b526a113b094a50"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4e90c22109c3fff37b526a113b094a50">entries</a></td></tr>
|
||
|
|
<tr class="memdesc:a4e90c22109c3fff37b526a113b094a50"><td class="mdescLeft"> </td><td class="mdescRight">Number of entries contained in (uncompressed) table payload. <br /></td></tr>
|
||
|
|
<tr class="memitem:aee50fc92a9151bd352808b28bccd5045" id="r_aee50fc92a9151bd352808b28bccd5045"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#aee50fc92a9151bd352808b28bccd5045">cmpLength</a></td></tr>
|
||
|
|
<tr class="memdesc:aee50fc92a9151bd352808b28bccd5045"><td class="mdescLeft"> </td><td class="mdescRight">Compressed payload size in bytes. <br /></td></tr>
|
||
|
|
<tr class="memitem:a7266134edef8efc7c449649f3035d189" id="r_a7266134edef8efc7c449649f3035d189"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7266134edef8efc7c449649f3035d189">length</a></td></tr>
|
||
|
|
<tr class="memdesc:a7266134edef8efc7c449649f3035d189"><td class="mdescLeft"> </td><td class="mdescRight">Uncompressed payload size in bytes. <br /></td></tr>
|
||
|
|
<tr class="memitem:a0799563cf99f679ee26840e32d52ca0f" id="r_a0799563cf99f679ee26840e32d52ca0f"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0799563cf99f679ee26840e32d52ca0f">cmpCrc64</a></td></tr>
|
||
|
|
<tr class="memdesc:a0799563cf99f679ee26840e32d52ca0f"><td class="mdescLeft"> </td><td class="mdescRight">CRC64-ECMA of compressed table payload. <br /></td></tr>
|
||
|
|
<tr class="memitem:a4d69e092386cdf3499b17bd6f63a0d8d" id="r_a4d69e092386cdf3499b17bd6f63a0d8d"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4d69e092386cdf3499b17bd6f63a0d8d">crc64</a></td></tr>
|
||
|
|
<tr class="memdesc:a4d69e092386cdf3499b17bd6f63a0d8d"><td class="mdescLeft"> </td><td class="mdescRight">CRC64-ECMA of uncompressed table payload. <br /></td></tr>
|
||
|
|
</table>
|
||
|
|
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
|
||
|
|
<div class="textblock"><p>Header preceding a version 2 hierarchical deduplication table. </p>
|
||
|
|
<p>Version 2 introduces multi-level tables to efficiently address very large images by subdividing the logical address space. Tables at higher levels partition regions; leaves contain direct (block, sector) entry mappings. Navigation uses <a class="el" href="#ac8ec7921a5651b5107eda4e99b488798">tableLevel</a> (0 = root) and <a class="el" href="#a68f4825db4e22906af0e55a359360656">levels</a> (total depth).</p>
|
||
|
|
<p>Logical sector (LBA) mapping (actual implementation in decode_ddt_{single,multi}_level_v2):</p><ol type="1">
|
||
|
|
<li>Let L be the requested logical sector (can be negative externally). Internal index I = L + negative. Valid range: 0 <= I < blocks. (Total user-data sectors often = blocks - negative - overflow.)</li>
|
||
|
|
<li>If tableShift == 0 (single-level): entryIndex = I. Else (multi-level): itemsPerPrimaryEntry = 1 << tableShift primaryIndex = I / itemsPerPrimaryEntry secondaryIndex = I % itemsPerPrimaryEntry The primary table entry at primaryIndex yields a secondary DDT file offset (scaled by 2^blockAlignmentShift), whose table entries are then indexed by secondaryIndex.</li>
|
||
|
|
<li>Read raw DDT entry value E (64-bit).</li>
|
||
|
|
<li>If E == 0: sector_status = SectorStatusNotDumped; offset=block_offset=0. Otherwise extract: statusBits = E >> 60 baseBits = E & 0xFFFFFFFFFFFFFFF sectorOffsetWithinBlock = baseBits & ((1 << dataShift) - 1) blockIndex = baseBits >> dataShift block_offset (bytes) = blockIndex << blockAlignmentShift offset (sector units inside block) = sectorOffsetWithinBlock</li>
|
||
|
|
<li>The consumer combines block_offset, offset, and the (external) logical sector size to locate data.</li>
|
||
|
|
</ol>
|
||
|
|
<p>Field roles:</p><ul>
|
||
|
|
<li>negative: Count of leading negative LBAs supported; added to L to form internal index.</li>
|
||
|
|
<li>overflow: Count of trailing LBAs beyond the user area upper bound that are still dumped and have normal DDT entries (e.g. optical disc lead-out). Symmetrical to 'negative' on the high end.</li>
|
||
|
|
<li>start: For secondary tables, base internal index covered (written when creating new tables). Current decoding logic does not consult this field (future-proof placeholder).</li>
|
||
|
|
<li>blockAlignmentShift: log2 alignment of stored data blocks (byte granularity of block_offset).</li>
|
||
|
|
<li>dataShift: log2 of the number of addressable sectors per increment of blockIndex bitfield unit.</li>
|
||
|
|
<li>tableShift: log2 of number of logical sectors covered by a single primary-table pointer (multi-level only).</li>
|
||
|
|
</ul>
|
||
|
|
<p>Notes & current limitations:</p><ul>
|
||
|
|
<li>User area sector count = blocks - negative - overflow.</li>
|
||
|
|
<li>Valid external LBA range exposed by the image = [-negative, (blocks - negative - 1)].<ul>
|
||
|
|
<li>Negative range: [-negative, -1]</li>
|
||
|
|
<li>User area range: [0, (blocks - negative - overflow - 1)]</li>
|
||
|
|
<li>Overflow range: [(blocks - negative - overflow), (blocks - negative - 1)]</li>
|
||
|
|
</ul>
|
||
|
|
</li>
|
||
|
|
<li>Both negative and overflow ranges are stored with normal DDT entries (if present), enabling complete reproduction of lead-in / lead-out or similar padding regions.</li>
|
||
|
|
<li>start is presently ignored during decoding; integrity checks against it may be added in future revisions.</li>
|
||
|
|
<li>No masking is applied to I besides array bounds; callers must ensure L is within representable range.</li>
|
||
|
|
</ul>
|
||
|
|
<p>Example (Compact Disc): Disc has 360000 user sectors. Lead-in captured as 15000 negative sectors and lead-out as 15000 overflow sectors. negative = 15000 overflow = 15000 user sectors = 360000 blocks (internal span) = negative + user + overflow = 390000 External LBA spans: -15000 .. 374999</p><ul>
|
||
|
|
<li>Negative: -15000 .. -1 (15000 sectors)</li>
|
||
|
|
<li>User: 0 .. 359999 (360000 sectors)</li>
|
||
|
|
<li>Overflow: 360000 .. 374999 (15000 sectors) Internal index I for any external L is I = L + negative. User area sector count reported to callers (ctx->imageInfo.Sectors) = blocks - negative - overflow = 360000. </li>
|
||
|
|
</ul>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00141">141</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
</div><a name="doc-variable-members" id="doc-variable-members"></a><h2 id="header-doc-variable-members" class="groupheader">Field Documentation</h2>
|
||
|
|
<a id="aa67b097c3a20f926ede495d27152f1c0" name="aa67b097c3a20f926ede495d27152f1c0"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa67b097c3a20f926ede495d27152f1c0">◆ </a></span>blockAlignmentShift</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint8_t DdtHeader2::blockAlignmentShift</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>2^blockAlignmentShift = block alignment boundary in bytes. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00154">154</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="write_8c_source.html#l01383">aaruf_close_current_block()</a>, <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00581">decode_ddt_single_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01023">set_ddt_single_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01768">set_ddt_tape()</a>, <a class="el" href="close_8c_source.html#l03812">write_aaru_json_block()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00654">write_checksum_block()</a>, <a class="el" href="close_8c_source.html#l03675">write_cicm_block()</a>, <a class="el" href="close_8c_source.html#l03445">write_dumphw_block()</a>, <a class="el" href="close_8c_source.html#l01808">write_dvd_long_sector_blocks()</a>, <a class="el" href="close_8c_source.html#l02245">write_dvd_title_key_decrypted_block()</a>, <a class="el" href="close_8c_source.html#l03026">write_geometry_block()</a>, <a class="el" href="close_8c_source.html#l03862">write_index_block()</a>, <a class="el" href="close_8c_source.html#l02409">write_media_tags()</a>, <a class="el" href="close_8c_source.html#l03162">write_metadata_block()</a>, <a class="el" href="close_8c_source.html#l00850">write_mode2_subheaders_block()</a>, <a class="el" href="close_8c_source.html#l00966">write_sector_prefix()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01508">write_sector_subchannel()</a>, <a class="el" href="close_8c_source.html#l01088">write_sector_suffix()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, <a class="el" href="close_8c_source.html#l02669">write_tape_file_block()</a>, <a class="el" href="close_8c_source.html#l02901">write_tape_partition_block()</a>, and <a class="el" href="close_8c_source.html#l00798">write_tracks_block()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a9571c1d556e33537935bab1edba31135" name="a9571c1d556e33537935bab1edba31135"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9571c1d556e33537935bab1edba31135">◆ </a></span>blocks</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::blocks</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Total internal span (negative + usable + overflow) in logical sectors. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00150">150</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="metadata_8c_source.html#l03292">aaruf_get_user_sectors()</a>, <a class="el" href="ddt__v2_8c_source.html#l00096">process_ddt_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a0799563cf99f679ee26840e32d52ca0f" name="a0799563cf99f679ee26840e32d52ca0f"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0799563cf99f679ee26840e32d52ca0f">◆ </a></span>cmpCrc64</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::cmpCrc64</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>CRC64-ECMA of compressed table payload. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00161">161</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="verify_8c_source.html#l00130">aaruf_verify_image()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, and <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="aee50fc92a9151bd352808b28bccd5045" name="aee50fc92a9151bd352808b28bccd5045"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aee50fc92a9151bd352808b28bccd5045">◆ </a></span>cmpLength</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::cmpLength</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Compressed payload size in bytes. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00159">159</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="verify_8c_source.html#l00130">aaruf_verify_image()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00096">process_ddt_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="ad1a27a46df09748a91a9010a630c422e" name="ad1a27a46df09748a91a9010a630c422e"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad1a27a46df09748a91a9010a630c422e">◆ </a></span>compression</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint16_t DdtHeader2::compression</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Compression algorithm for this table body (<a class="el" href="enums_8h.html#affec749ed88365143745313ae9168263">CompressionType</a>). </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00145">145</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00096">process_ddt_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a4d69e092386cdf3499b17bd6f63a0d8d" name="a4d69e092386cdf3499b17bd6f63a0d8d"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4d69e092386cdf3499b17bd6f63a0d8d">◆ </a></span>crc64</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::crc64</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>CRC64-ECMA of uncompressed table payload. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00162">162</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00096">process_ddt_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, and <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="ad9a2beb3a79bc6c239ba04fe341e0cde" name="ad9a2beb3a79bc6c239ba04fe341e0cde"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad9a2beb3a79bc6c239ba04fe341e0cde">◆ </a></span>dataShift</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint8_t DdtHeader2::dataShift</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>2^dataShift = sectors represented per increment in blockIndex field. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00155">155</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="write_8c_source.html#l00098">aaruf_write_sector()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00581">decode_ddt_single_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01023">set_ddt_single_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01768">set_ddt_tape()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, and <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a4e90c22109c3fff37b526a113b094a50" name="a4e90c22109c3fff37b526a113b094a50"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4e90c22109c3fff37b526a113b094a50">◆ </a></span>entries</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::entries</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Number of entries contained in (uncompressed) table payload. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00158">158</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a80a88ec68cd0332a57886ac363bfa4d1" name="a80a88ec68cd0332a57886ac363bfa4d1"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a80a88ec68cd0332a57886ac363bfa4d1">◆ </a></span>identifier</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint32_t DdtHeader2::identifier</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Block identifier, must be BlockType::DeDuplicationTable2. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00143">143</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a7266134edef8efc7c449649f3035d189" name="a7266134edef8efc7c449649f3035d189"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7266134edef8efc7c449649f3035d189">◆ </a></span>length</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::length</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Uncompressed payload size in bytes. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00160">160</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00096">process_ddt_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a68f4825db4e22906af0e55a359360656" name="a68f4825db4e22906af0e55a359360656"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a68f4825db4e22906af0e55a359360656">◆ </a></span>levels</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint8_t DdtHeader2::levels</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Total number of hierarchy levels (root depth); > 0. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00146">146</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="aa4b1416ac0e0585f436513cacf9ebd74" name="aa4b1416ac0e0585f436513cacf9ebd74"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa4b1416ac0e0585f436513cacf9ebd74">◆ </a></span>negative</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint16_t DdtHeader2::negative</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Leading negative LBA count; added to external L to build internal index. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00149">149</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="metadata_8c_source.html#l03417">aaruf_get_negative_sectors()</a>, <a class="el" href="read_8c_source.html#l00250">aaruf_read_sector()</a>, <a class="el" href="read_8c_source.html#l00815">aaruf_read_sector_long()</a>, <a class="el" href="read_8c_source.html#l01463">aaruf_read_sector_tag()</a>, <a class="el" href="write_8c_source.html#l00098">aaruf_write_sector()</a>, <a class="el" href="write_8c_source.html#l00532">aaruf_write_sector_long()</a>, <a class="el" href="write_8c_source.html#l02048">aaruf_write_sector_tag()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00581">decode_ddt_single_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00096">process_ddt_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01023">set_ddt_single_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l01808">write_dvd_long_sector_blocks()</a>, <a class="el" href="close_8c_source.html#l02245">write_dvd_title_key_decrypted_block()</a>, <a class="el" href="close_8c_source.html#l00850">write_mode2_subheaders_block()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01508">write_sector_subchannel()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a2bfa558d9d778ae6b86d52520e278b66" name="a2bfa558d9d778ae6b86d52520e278b66"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2bfa558d9d778ae6b86d52520e278b66">◆ </a></span>overflow</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint16_t DdtHeader2::overflow</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Trailing dumped sectors beyond user area (overflow range), still mapped with entries. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00151">151</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="metadata_8c_source.html#l03552">aaruf_get_overflow_sectors()</a>, <a class="el" href="read_8c_source.html#l00250">aaruf_read_sector()</a>, <a class="el" href="read_8c_source.html#l00815">aaruf_read_sector_long()</a>, <a class="el" href="read_8c_source.html#l01463">aaruf_read_sector_tag()</a>, <a class="el" href="write_8c_source.html#l00098">aaruf_write_sector()</a>, <a class="el" href="write_8c_source.html#l00532">aaruf_write_sector_long()</a>, <a class="el" href="write_8c_source.html#l02048">aaruf_write_sector_tag()</a>, <a class="el" href="ddt__v2_8c_source.html#l00096">process_ddt_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l01808">write_dvd_long_sector_blocks()</a>, <a class="el" href="close_8c_source.html#l02245">write_dvd_title_key_decrypted_block()</a>, <a class="el" href="close_8c_source.html#l00850">write_mode2_subheaders_block()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01508">write_sector_subchannel()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="af71423c2a8c7fa89dfd2313b456c57a2" name="af71423c2a8c7fa89dfd2313b456c57a2"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af71423c2a8c7fa89dfd2313b456c57a2">◆ </a></span>previousLevelOffset</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::previousLevelOffset</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Absolute byte offset of the parent (previous) level table; 0 if root. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00148">148</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a238a2ca31ce0f60af3e59a1cb3e2e73c" name="a238a2ca31ce0f60af3e59a1cb3e2e73c"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a238a2ca31ce0f60af3e59a1cb3e2e73c">◆ </a></span>start</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint64_t DdtHeader2::start</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Base internal index covered by this table (used for secondary tables; currently informational). </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00153">153</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="ac8ec7921a5651b5107eda4e99b488798" name="ac8ec7921a5651b5107eda4e99b488798"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac8ec7921a5651b5107eda4e99b488798">◆ </a></span>tableLevel</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint8_t DdtHeader2::tableLevel</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Zero-based level index of this table (0 = root, increases downward). </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00147">147</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a8c2110cbb42bde3c0e302d3429024b04" name="a8c2110cbb42bde3c0e302d3429024b04"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8c2110cbb42bde3c0e302d3429024b04">◆ </a></span>tableShift</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint8_t DdtHeader2::tableShift</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>2^tableShift = number of logical sectors per primary entry (multi-level only; 0 for single-level or secondary tables). </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00156">156</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l00507">decode_ddt_entry_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00581">decode_ddt_single_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l00988">set_ddt_entry_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01023">set_ddt_single_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<a id="a14f9ccf36df63e036d69291182cf7bbb" name="a14f9ccf36df63e036d69291182cf7bbb"></a>
|
||
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a14f9ccf36df63e036d69291182cf7bbb">◆ </a></span>type</h2>
|
||
|
|
|
||
|
|
<div class="memitem">
|
||
|
|
<div class="memproto">
|
||
|
|
<table class="memname">
|
||
|
|
<tr>
|
||
|
|
<td class="memname">uint16_t DdtHeader2::type</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
</div><div class="memdoc">
|
||
|
|
|
||
|
|
<p>Data classification (<a class="el" href="enums_8h.html#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>) for sectors referenced by this table. </p>
|
||
|
|
|
||
|
|
<p class="definition">Definition at line <a class="el" href="ddt_8h_source.html#l00144">144</a> of file <a class="el" href="ddt_8h_source.html">ddt.h</a>.</p>
|
||
|
|
|
||
|
|
<p class="reference">Referenced by <a class="el" href="create_8c_source.html#l00279">aaruf_create()</a>, <a class="el" href="ddt__v2_8c_source.html#l00724">decode_ddt_multi_level_v2()</a>, <a class="el" href="ddt__v2_8c_source.html#l01092">set_ddt_multi_level_v2()</a>, <a class="el" href="close_8c_source.html#l00077">write_cached_secondary_ddt()</a>, <a class="el" href="close_8c_source.html#l00283">write_primary_ddt()</a>, <a class="el" href="close_8c_source.html#l01206">write_sector_prefix_ddt()</a>, <a class="el" href="close_8c_source.html#l01350">write_sector_suffix_ddt()</a>, <a class="el" href="close_8c_source.html#l00369">write_single_level_ddt()</a>, and <a class="el" href="close_8c_source.html#l00596">write_tape_ddt()</a>.</p>
|
||
|
|
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||
|
|
<li>include/aaruformat/structs/<a class="el" href="ddt_8h_source.html">ddt.h</a></li>
|
||
|
|
</ul>
|
||
|
|
</div><!-- contents -->
|
||
|
|
</div><!-- doc-content -->
|
||
|
|
<div id="page-nav" class="page-nav-panel">
|
||
|
|
<div id="page-nav-resize-handle"></div>
|
||
|
|
<div id="page-nav-tree">
|
||
|
|
<div id="page-nav-contents">
|
||
|
|
</div><!-- page-nav-contents -->
|
||
|
|
</div><!-- page-nav-tree -->
|
||
|
|
</div><!-- page-nav -->
|
||
|
|
</div><!-- container -->
|
||
|
|
<!-- start footer part -->
|
||
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||
|
|
<ul>
|
||
|
|
<li class="navelem"><a href="structDdtHeader2.html">DdtHeader2</a></li>
|
||
|
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.14.0 </li>
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
</body>
|
||
|
|
</html>
|