mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2025-06-08 21:40:43 +02:00
667 lines
34 KiB
HTML
667 lines
34 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.9.7"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>AARE: aare::SubFile Class 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>
|
|
<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">AARE
|
|
</div>
|
|
<div id="projectbrief">Data analysis library for PSI hybrid detectors</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.9.7 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search');
|
|
$(document).ready(function() { init_search(); });
|
|
});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
<!-- 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 id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="namespaceaare.html">aare</a></li><li class="navelem"><a class="el" href="classaare_1_1SubFile.html">SubFile</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pro-types">Protected Types</a> |
|
|
<a href="#pro-attribs">Protected Attributes</a> </div>
|
|
<div class="headertitle"><div class="title">aare::SubFile Class Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Class to read a subfile from a <a class="el" href="classaare_1_1RawFile.html" title="RawFile class to read .raw and .json files.">RawFile</a>.
|
|
<a href="classaare_1_1SubFile.html#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="SubFile_8hpp_source.html">SubFile.hpp</a>></code></p>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a502c8395f5e6536064dd896987fb8128"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a502c8395f5e6536064dd896987fb8128">SubFile</a> (std::filesystem::path fname, <a class="el" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7">DetectorType</a> detector, ssize_t rows, ssize_t cols, uint16_t bitdepth)</td></tr>
|
|
<tr class="memdesc:a502c8395f5e6536064dd896987fb8128"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="classaare_1_1SubFile.html" title="Class to read a subfile from a RawFile.">SubFile</a> constructor. <br /></td></tr>
|
|
<tr class="separator:a502c8395f5e6536064dd896987fb8128"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a660d0c9ccb8d0e79d9f17bbdea910a45"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a660d0c9ccb8d0e79d9f17bbdea910a45">read_impl_normal</a> (std::byte *buffer)</td></tr>
|
|
<tr class="memdesc:a660d0c9ccb8d0e79d9f17bbdea910a45"><td class="mdescLeft"> </td><td class="mdescRight">read the subfile into a buffer <br /></td></tr>
|
|
<tr class="separator:a660d0c9ccb8d0e79d9f17bbdea910a45"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af8977099c5a78c5d76d3fb3f41d450de"><td class="memTemplParams" colspan="2">template<typename DataType > </td></tr>
|
|
<tr class="memitem:af8977099c5a78c5d76d3fb3f41d450de"><td class="memTemplItemLeft" align="right" valign="top">size_t </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#af8977099c5a78c5d76d3fb3f41d450de">read_impl_flip</a> (std::byte *buffer)</td></tr>
|
|
<tr class="memdesc:af8977099c5a78c5d76d3fb3f41d450de"><td class="mdescLeft"> </td><td class="mdescRight">read the subfile into a buffer with the bytes flipped <br /></td></tr>
|
|
<tr class="separator:af8977099c5a78c5d76d3fb3f41d450de"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa41e65b3174ad83c7eee101421104c69"><td class="memTemplParams" colspan="2">template<typename DataType > </td></tr>
|
|
<tr class="memitem:aa41e65b3174ad83c7eee101421104c69"><td class="memTemplItemLeft" align="right" valign="top">size_t </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#aa41e65b3174ad83c7eee101421104c69">read_impl_reorder</a> (std::byte *buffer)</td></tr>
|
|
<tr class="memdesc:aa41e65b3174ad83c7eee101421104c69"><td class="mdescLeft"> </td><td class="mdescRight">read the subfile into a buffer with the bytes reordered <br /></td></tr>
|
|
<tr class="separator:aa41e65b3174ad83c7eee101421104c69"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4f13c03f410dfae1440d3d7126914416"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a4f13c03f410dfae1440d3d7126914416">get_part</a> (std::byte *buffer, int <a class="el" href="classaare_1_1SubFile.html#adb165b1e12b49ad58dfac71a9ad5e64f">frame_number</a>)</td></tr>
|
|
<tr class="memdesc:a4f13c03f410dfae1440d3d7126914416"><td class="mdescLeft"> </td><td class="mdescRight">read the subfile into a buffer with the bytes reordered and flipped <br /></td></tr>
|
|
<tr class="separator:a4f13c03f410dfae1440d3d7126914416"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adb165b1e12b49ad58dfac71a9ad5e64f"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#adb165b1e12b49ad58dfac71a9ad5e64f">frame_number</a> (int frame_index)</td></tr>
|
|
<tr class="separator:adb165b1e12b49ad58dfac71a9ad5e64f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3d54db8c48d87c4da2c9c7e263a8f953"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a3d54db8c48d87c4da2c9c7e263a8f953">bytes_per_part</a> ()</td></tr>
|
|
<tr class="separator:a3d54db8c48d87c4da2c9c7e263a8f953"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a90d1b67477a665badbf23fc582fe11d2"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a90d1b67477a665badbf23fc582fe11d2">pixels_per_part</a> ()</td></tr>
|
|
<tr class="separator:a90d1b67477a665badbf23fc582fe11d2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-types" name="pro-types"></a>
|
|
Protected Types</h2></td></tr>
|
|
<tr class="memitem:a15fca3d77492479d07d9e1490b0397b7"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a15fca3d77492479d07d9e1490b0397b7">pfunc</a> = size_t(SubFile::*)(std::byte *)</td></tr>
|
|
<tr class="memdesc:a15fca3d77492479d07d9e1490b0397b7"><td class="mdescLeft"> </td><td class="mdescRight">type of the read_impl function pointer <br /></td></tr>
|
|
<tr class="separator:a15fca3d77492479d07d9e1490b0397b7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
|
|
Protected Attributes</h2></td></tr>
|
|
<tr class="memitem:a6581cd31c90c530b8ab4d4c3c1f24c11"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classaare_1_1SubFile.html#a15fca3d77492479d07d9e1490b0397b7">pfunc</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a6581cd31c90c530b8ab4d4c3c1f24c11">read_impl</a> = nullptr</td></tr>
|
|
<tr class="separator:a6581cd31c90c530b8ab4d4c3c1f24c11"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac0f3eb666f5ce7d789c98e3e48adb0c1"><td class="memItemLeft" align="right" valign="top">std::map< std::pair< <a class="el" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7">DetectorType</a>, int >, <a class="el" href="classaare_1_1SubFile.html#a15fca3d77492479d07d9e1490b0397b7">pfunc</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#ac0f3eb666f5ce7d789c98e3e48adb0c1">read_impl_map</a></td></tr>
|
|
<tr class="memdesc:ac0f3eb666f5ce7d789c98e3e48adb0c1"><td class="mdescLeft"> </td><td class="mdescRight">map to store the read_impl functions for different detectors <br /></td></tr>
|
|
<tr class="separator:ac0f3eb666f5ce7d789c98e3e48adb0c1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aaee4e9dddec3bbfa3267d1ba341b4282"><td class="memItemLeft" align="right" valign="top">FILE * </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#aaee4e9dddec3bbfa3267d1ba341b4282">fp</a> = nullptr</td></tr>
|
|
<tr class="separator:aaee4e9dddec3bbfa3267d1ba341b4282"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:acd8a2bd749eaf02f1413af755e9c8108"><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#acd8a2bd749eaf02f1413af755e9c8108">m_bitdepth</a></td></tr>
|
|
<tr class="separator:acd8a2bd749eaf02f1413af755e9c8108"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a81226b922c7a22effced3f88658e5a82"><td class="memItemLeft" align="right" valign="top">std::filesystem::path </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a81226b922c7a22effced3f88658e5a82">m_fname</a></td></tr>
|
|
<tr class="separator:a81226b922c7a22effced3f88658e5a82"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a16592f71e1f546fce6a00707768e6fad"><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a16592f71e1f546fce6a00707768e6fad">m_rows</a> {}</td></tr>
|
|
<tr class="separator:a16592f71e1f546fce6a00707768e6fad"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af5a74f674ac2a626ff6b8a761a6558ee"><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#af5a74f674ac2a626ff6b8a761a6558ee">m_cols</a> {}</td></tr>
|
|
<tr class="separator:af5a74f674ac2a626ff6b8a761a6558ee"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:abf8c8d431ddd4e8e7154fe01b415e8cc"><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#abf8c8d431ddd4e8e7154fe01b415e8cc">n_frames</a> {}</td></tr>
|
|
<tr class="separator:abf8c8d431ddd4e8e7154fe01b415e8cc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9651937b2a83af293c1330b86aa1c884"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classaare_1_1SubFile.html#a9651937b2a83af293c1330b86aa1c884">m_sub_file_index_</a> {}</td></tr>
|
|
<tr class="separator:a9651937b2a83af293c1330b86aa1c884"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>Class to read a subfile from a <a class="el" href="classaare_1_1RawFile.html" title="RawFile class to read .raw and .json files.">RawFile</a>. </p>
|
|
</div><h2 class="groupheader">Member Typedef Documentation</h2>
|
|
<a id="a15fca3d77492479d07d9e1490b0397b7" name="a15fca3d77492479d07d9e1490b0397b7"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a15fca3d77492479d07d9e1490b0397b7">◆ </a></span>pfunc</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">using <a class="el" href="classaare_1_1SubFile.html#a15fca3d77492479d07d9e1490b0397b7">aare::SubFile::pfunc</a> = size_t (SubFile::*)(std::byte *)</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>type of the read_impl function pointer </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">buffer</td><td>pointer to the buffer to read the data into </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>number of bytes read </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="a502c8395f5e6536064dd896987fb8128" name="a502c8395f5e6536064dd896987fb8128"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a502c8395f5e6536064dd896987fb8128">◆ </a></span>SubFile()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">aare::SubFile::SubFile </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::filesystem::path </td>
|
|
<td class="paramname"><em>fname</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7">DetectorType</a> </td>
|
|
<td class="paramname"><em>detector</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">ssize_t </td>
|
|
<td class="paramname"><em>rows</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">ssize_t </td>
|
|
<td class="paramname"><em>cols</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint16_t </td>
|
|
<td class="paramname"><em>bitdepth</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p><a class="el" href="classaare_1_1SubFile.html" title="Class to read a subfile from a RawFile.">SubFile</a> constructor. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">fname</td><td>path to the subfile </td></tr>
|
|
<tr><td class="paramname">detector</td><td>detector type </td></tr>
|
|
<tr><td class="paramname">rows</td><td>number of rows in the subfile </td></tr>
|
|
<tr><td class="paramname">cols</td><td>number of columns in the subfile </td></tr>
|
|
<tr><td class="paramname">bitdepth</td><td>bitdepth of the subfile </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="exception"><dt>Exceptions</dt><dd>
|
|
<table class="exception">
|
|
<tr><td class="paramname">std::invalid_argument</td><td>if the detector,type pair is not supported </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="a3d54db8c48d87c4da2c9c7e263a8f953" name="a3d54db8c48d87c4da2c9c7e263a8f953"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3d54db8c48d87c4da2c9c7e263a8f953">◆ </a></span>bytes_per_part()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t aare::SubFile::bytes_per_part </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="adb165b1e12b49ad58dfac71a9ad5e64f" name="adb165b1e12b49ad58dfac71a9ad5e64f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adb165b1e12b49ad58dfac71a9ad5e64f">◆ </a></span>frame_number()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t aare::SubFile::frame_number </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>frame_index</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4f13c03f410dfae1440d3d7126914416" name="a4f13c03f410dfae1440d3d7126914416"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4f13c03f410dfae1440d3d7126914416">◆ </a></span>get_part()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t aare::SubFile::get_part </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::byte * </td>
|
|
<td class="paramname"><em>buffer</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>frame_number</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>read the subfile into a buffer with the bytes reordered and flipped </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">buffer</td><td>pointer to the buffer to read the data into </td></tr>
|
|
<tr><td class="paramname">frame_number</td><td>frame number to read </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>number of bytes read </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a90d1b67477a665badbf23fc582fe11d2" name="a90d1b67477a665badbf23fc582fe11d2"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a90d1b67477a665badbf23fc582fe11d2">◆ </a></span>pixels_per_part()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t aare::SubFile::pixels_per_part </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af8977099c5a78c5d76d3fb3f41d450de" name="af8977099c5a78c5d76d3fb3f41d450de"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af8977099c5a78c5d76d3fb3f41d450de">◆ </a></span>read_impl_flip()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename DataType > </div>
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t aare::SubFile::read_impl_flip </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::byte * </td>
|
|
<td class="paramname"><em>buffer</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>read the subfile into a buffer with the bytes flipped </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">buffer</td><td>pointer to the buffer to read the data into </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>number of bytes read </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a660d0c9ccb8d0e79d9f17bbdea910a45" name="a660d0c9ccb8d0e79d9f17bbdea910a45"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a660d0c9ccb8d0e79d9f17bbdea910a45">◆ </a></span>read_impl_normal()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t aare::SubFile::read_impl_normal </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::byte * </td>
|
|
<td class="paramname"><em>buffer</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>read the subfile into a buffer </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">buffer</td><td>pointer to the buffer to read the data into </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>number of bytes read </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa41e65b3174ad83c7eee101421104c69" name="aa41e65b3174ad83c7eee101421104c69"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa41e65b3174ad83c7eee101421104c69">◆ </a></span>read_impl_reorder()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename DataType > </div>
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t aare::SubFile::read_impl_reorder </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::byte * </td>
|
|
<td class="paramname"><em>buffer</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>read the subfile into a buffer with the bytes reordered </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">buffer</td><td>pointer to the buffer to read the data into </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>number of bytes read </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Field Documentation</h2>
|
|
<a id="aaee4e9dddec3bbfa3267d1ba341b4282" name="aaee4e9dddec3bbfa3267d1ba341b4282"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aaee4e9dddec3bbfa3267d1ba341b4282">◆ </a></span>fp</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">FILE* aare::SubFile::fp = nullptr</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="acd8a2bd749eaf02f1413af755e9c8108" name="acd8a2bd749eaf02f1413af755e9c8108"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#acd8a2bd749eaf02f1413af755e9c8108">◆ </a></span>m_bitdepth</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">ssize_t aare::SubFile::m_bitdepth</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af5a74f674ac2a626ff6b8a761a6558ee" name="af5a74f674ac2a626ff6b8a761a6558ee"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af5a74f674ac2a626ff6b8a761a6558ee">◆ </a></span>m_cols</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">ssize_t aare::SubFile::m_cols {}</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a81226b922c7a22effced3f88658e5a82" name="a81226b922c7a22effced3f88658e5a82"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a81226b922c7a22effced3f88658e5a82">◆ </a></span>m_fname</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::filesystem::path aare::SubFile::m_fname</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a16592f71e1f546fce6a00707768e6fad" name="a16592f71e1f546fce6a00707768e6fad"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a16592f71e1f546fce6a00707768e6fad">◆ </a></span>m_rows</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">ssize_t aare::SubFile::m_rows {}</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9651937b2a83af293c1330b86aa1c884" name="a9651937b2a83af293c1330b86aa1c884"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9651937b2a83af293c1330b86aa1c884">◆ </a></span>m_sub_file_index_</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int aare::SubFile::m_sub_file_index_ {}</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="abf8c8d431ddd4e8e7154fe01b415e8cc" name="abf8c8d431ddd4e8e7154fe01b415e8cc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#abf8c8d431ddd4e8e7154fe01b415e8cc">◆ </a></span>n_frames</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">ssize_t aare::SubFile::n_frames {}</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6581cd31c90c530b8ab4d4c3c1f24c11" name="a6581cd31c90c530b8ab4d4c3c1f24c11"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6581cd31c90c530b8ab4d4c3c1f24c11">◆ </a></span>read_impl</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classaare_1_1SubFile.html#a15fca3d77492479d07d9e1490b0397b7">pfunc</a> aare::SubFile::read_impl = nullptr</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac0f3eb666f5ce7d789c98e3e48adb0c1" name="ac0f3eb666f5ce7d789c98e3e48adb0c1"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac0f3eb666f5ce7d789c98e3e48adb0c1">◆ </a></span>read_impl_map</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::map<std::pair<<a class="el" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7">DetectorType</a>, int>, <a class="el" href="classaare_1_1SubFile.html#a15fca3d77492479d07d9e1490b0397b7">pfunc</a>> aare::SubFile::read_impl_map</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
|
|
<div class="line"> {{<a class="code hl_enumvalue" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7a0947b28848519e2e61c3f8561dedf7d0">DetectorType::Moench</a>, 16}, &SubFile::read_impl_reorder<uint16_t>},</div>
|
|
<div class="line"> {{<a class="code hl_enumvalue" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7ab2c7db922623442a04314d3c941a336b">DetectorType::Jungfrau</a>, 16}, &<a class="code hl_function" href="classaare_1_1SubFile.html#a660d0c9ccb8d0e79d9f17bbdea910a45">SubFile::read_impl_normal</a>},</div>
|
|
<div class="line"> {{<a class="code hl_enumvalue" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7a8fcb8dbe4124015503e7a92e13ebe66c">DetectorType::ChipTestBoard</a>, 16}, &<a class="code hl_function" href="classaare_1_1SubFile.html#a660d0c9ccb8d0e79d9f17bbdea910a45">SubFile::read_impl_normal</a>},</div>
|
|
<div class="line"> {{<a class="code hl_enumvalue" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7ae62a69cfc990501180f9457056826208">DetectorType::Mythen3</a>, 32}, &<a class="code hl_function" href="classaare_1_1SubFile.html#a660d0c9ccb8d0e79d9f17bbdea910a45">SubFile::read_impl_normal</a>},</div>
|
|
<div class="line"> {{<a class="code hl_enumvalue" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7a36df9c5ff09bbd406715bc0f8beec72e">DetectorType::Eiger</a>, 32}, &<a class="code hl_function" href="classaare_1_1SubFile.html#a660d0c9ccb8d0e79d9f17bbdea910a45">SubFile::read_impl_normal</a>},</div>
|
|
<div class="line"> {{<a class="code hl_enumvalue" href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7a36df9c5ff09bbd406715bc0f8beec72e">DetectorType::Eiger</a>, 16}, &<a class="code hl_function" href="classaare_1_1SubFile.html#a660d0c9ccb8d0e79d9f17bbdea910a45">SubFile::read_impl_normal</a>}</div>
|
|
<div class="line"> </div>
|
|
<div class="line"> }</div>
|
|
<div class="ttc" id="aclassaare_1_1SubFile_html_a660d0c9ccb8d0e79d9f17bbdea910a45"><div class="ttname"><a href="classaare_1_1SubFile.html#a660d0c9ccb8d0e79d9f17bbdea910a45">aare::SubFile::read_impl_normal</a></div><div class="ttdeci">size_t read_impl_normal(std::byte *buffer)</div><div class="ttdoc">read the subfile into a buffer</div><div class="ttdef"><b>Definition</b> SubFile.cpp:40</div></div>
|
|
<div class="ttc" id="anamespaceaare_html_a5b95afba95553c1e118e1478c69042f7a0947b28848519e2e61c3f8561dedf7d0"><div class="ttname"><a href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7a0947b28848519e2e61c3f8561dedf7d0">aare::DetectorType::Moench</a></div><div class="ttdeci">@ Moench</div></div>
|
|
<div class="ttc" id="anamespaceaare_html_a5b95afba95553c1e118e1478c69042f7a36df9c5ff09bbd406715bc0f8beec72e"><div class="ttname"><a href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7a36df9c5ff09bbd406715bc0f8beec72e">aare::DetectorType::Eiger</a></div><div class="ttdeci">@ Eiger</div></div>
|
|
<div class="ttc" id="anamespaceaare_html_a5b95afba95553c1e118e1478c69042f7a8fcb8dbe4124015503e7a92e13ebe66c"><div class="ttname"><a href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7a8fcb8dbe4124015503e7a92e13ebe66c">aare::DetectorType::ChipTestBoard</a></div><div class="ttdeci">@ ChipTestBoard</div></div>
|
|
<div class="ttc" id="anamespaceaare_html_a5b95afba95553c1e118e1478c69042f7ab2c7db922623442a04314d3c941a336b"><div class="ttname"><a href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7ab2c7db922623442a04314d3c941a336b">aare::DetectorType::Jungfrau</a></div><div class="ttdeci">@ Jungfrau</div></div>
|
|
<div class="ttc" id="anamespaceaare_html_a5b95afba95553c1e118e1478c69042f7ae62a69cfc990501180f9457056826208"><div class="ttname"><a href="namespaceaare.html#a5b95afba95553c1e118e1478c69042f7ae62a69cfc990501180f9457056826208">aare::DetectorType::Mythen3</a></div><div class="ttdeci">@ Mythen3</div></div>
|
|
</div><!-- fragment -->
|
|
<p>map to store the read_impl functions for different detectors </p>
|
|
<dl class="section note"><dt>Note</dt><dd>the key is a pair of DetectorType and bitdepth </dd>
|
|
<dd>
|
|
the value is a pointer to the read_impl function specific for the detector </dd>
|
|
<dd>
|
|
the read_impl function will be set to the appropriate function in the constructor </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li>file_io/include/aare/file_io/<a class="el" href="SubFile_8hpp_source.html">SubFile.hpp</a></li>
|
|
<li>file_io/src/<a class="el" href="SubFile_8cpp.html">SubFile.cpp</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
<!-- start footer part -->
|
|
<hr class="footer"/><address class="footer"><small>
|
|
Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.7
|
|
</small></address>
|
|
</body>
|
|
</html>
|