mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2026-07-29 21:12:52 +02:00
Update Documentation for developer
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,296 @@
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html class="writer-html5" lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Testing — slsDetectorPackage 0.0.0 documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=b86133f3" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/theme.css?v=9edc463e" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/extra.css?v=2be88464" />
|
||||
|
||||
|
||||
<script src="_static/jquery.js?v=5d32c60e"></script>
|
||||
<script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
|
||||
<script src="_static/documentation_options.js?v=5929fcd5"></script>
|
||||
<script src="_static/doctools.js?v=fd6eb6e6"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=6ffebe34"></script>
|
||||
<script src="_static/js/theme.js"></script>
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="Firmware Upgrade" href="firmware.html" />
|
||||
<link rel="prev" title="Package Versioning" href="Versioning.html" />
|
||||
</head>
|
||||
|
||||
<body class="wy-body-for-nav">
|
||||
<div class="wy-grid-for-nav">
|
||||
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
||||
<div class="wy-side-scroll">
|
||||
<div class="wy-side-nav-search" >
|
||||
|
||||
|
||||
|
||||
<a href="index.html" class="icon icon-home">
|
||||
slsDetectorPackage 0.0.0
|
||||
</a>
|
||||
<div role="search">
|
||||
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
|
||||
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
|
||||
<input type="hidden" name="check_keywords" value="yes" />
|
||||
<input type="hidden" name="area" value="default" />
|
||||
</form>
|
||||
</div>
|
||||
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
|
||||
<p class="caption" role="heading"><span class="caption-text">Installation:</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="dependencies.html">Dependencies</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consuming.html">Consuming slsDetectorPackage</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">how to</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="softwarearchitecture.html">Software Architecture</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="configcommands.html">Setup Commands</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="quick_start_guide.html">Quick Start Guide</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="dataformat.html">Detector Image Size and Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="multidet.html">Using multiple detectors</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">C++ API</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="detector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="result.html">Result</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="receiver_api.html">Receiver</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Python API</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Command line</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="commandline.html">Command line interface</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Developer</span></p>
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="container_utils.html">ContainerUtils</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Testing</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#catch2-tests">CATCH2 Tests</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#naming-policy">Naming Policy:</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#simulator-script">Simulator Script:</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#pytest-tests">Pytest Tests</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="firmware.html">Firmware Upgrade</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Detector Server</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="servers.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="serverupgrade.html">Upgrade</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="virtualserver.html">Simulators</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="serverdefaults.html">Default Values</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Detector UDP Header</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="udpheader.html">Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="udpconfig.html">Config file</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="udpdetspec.html">Detector Specific Fields</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Receiver</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="slsreceiver.html">In-built Receiver</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="receivers.html">Custom Receiver</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Receiver Files</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="fileformat.html">File format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="slsreceiverheaderformat.html">SLS Receiver Header Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="dataformat.html">Detector Image Size and Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="masterfileattributes.html">Master File Attributes</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="binaryfileformat.html">Binary File Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="hdf5fileformat.html">HDF5 File Format</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Receiver ZMQ Stream</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="zmqjsonheaderformat.html">ZMQ: Json Header Format</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Troubleshooting</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="troubleshooting.html">Troubleshooting</a></li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
|
||||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
||||
<a href="index.html">slsDetectorPackage 0.0.0</a>
|
||||
</nav>
|
||||
|
||||
<div class="wy-nav-content">
|
||||
<div class="rst-content">
|
||||
<div role="navigation" aria-label="Page navigation">
|
||||
<ul class="wy-breadcrumbs">
|
||||
<li><a href="index.html" class="icon icon-home" aria-label="Home"></a></li>
|
||||
<li class="breadcrumb-item active">Testing</li>
|
||||
<li class="wy-breadcrumbs-aside">
|
||||
<a href="_sources/Testing.rst.txt" rel="nofollow"> View page source</a>
|
||||
</li>
|
||||
</ul>
|
||||
<hr/>
|
||||
</div>
|
||||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
||||
<div itemprop="articleBody">
|
||||
|
||||
<section id="testing">
|
||||
<h1>Testing<a class="headerlink" href="#testing" title="Link to this heading"></a></h1>
|
||||
<p>We use <code class="docutils literal notranslate"><span class="pre">catch2</span></code> and <code class="docutils literal notranslate"><span class="pre">pytest</span></code> for unit testing the C++ and Python code.</p>
|
||||
<section id="catch2-tests">
|
||||
<h2>CATCH2 Tests<a class="headerlink" href="#catch2-tests" title="Link to this heading"></a></h2>
|
||||
<p>To build and run the catch2 tests use the following commands:</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">cd build</span>
|
||||
<span class="go">cmake -DSLS_USE_TESTS=ON ../</span>
|
||||
<span class="go">bin/tests</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Note that this requires that you have catch2 installed on your system.</p>
|
||||
</section>
|
||||
<section id="naming-policy">
|
||||
<h2>Naming Policy:<a class="headerlink" href="#naming-policy" title="Link to this heading"></a></h2>
|
||||
<p>Per default all tests should be visible to catch2.</p>
|
||||
<p>If a test fails in the github or gitea actions hide the test by adding the tag <code class="docutils literal notranslate"><span class="pre">[.]</span></code> to the test name.</p>
|
||||
<div class="highlight-cpp notranslate"><div class="highlight"><pre><span></span><span class="n">TEST_CASE</span><span class="p">(</span><span class="s">"This test is hidden from default runs"</span><span class="p">,</span><span class="w"> </span><span class="s">"[.]"</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<span class="w"> </span><span class="n">REQUIRE</span><span class="p">(</span><span class="mi">1</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">2</span><span class="p">);</span>
|
||||
<span class="p">}</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>You can run all tests requiring a detector by running the following command:</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">tests "[.detectorintegration]"</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>This only works if a configured simulator (or an actual configured detector) and receiver are already set up to run the tests. There is a script that automatically sets up virtual detectors and runs all integration tests. See Section <a class="reference internal" href="#python-simulator-script"><span class="std std-ref">Simulator Script.</span></a> below.</p>
|
||||
</div>
|
||||
<p>If you want to disable testing that involves a data file that require pc tuning optimizations, add the hidden tag <code class="docutils literal notranslate"><span class="pre">[.disable_check_data_file]</span></code> to the test case. Please note that only some specific disable tests have been implemented so far.</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">tests "[detectorintegration]~[disable_check_data_file]"</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>Ensure that there are no spaces betweent the tags and no ‘.’, else hardly any test will be matched.</p>
|
||||
</div>
|
||||
</section>
|
||||
<section id="simulator-script">
|
||||
<span id="python-simulator-script"></span><h2>Simulator Script:<a class="headerlink" href="#simulator-script" title="Link to this heading"></a></h2>
|
||||
<p>One can also just run the following script, which will run your tests for all the detector types (simulators only) with a pre-determined configuration.</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">cd build</span>
|
||||
<span class="go">python bin/test_simulators.py</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>This runs all tests marked with the tag <code class="docutils literal notranslate"><span class="pre">[.detectorintegration]</span></code> for all detector simulators.
|
||||
If you want to run them for a specific virtual detector or a specific test use the following command:</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">cd build</span>
|
||||
<span class="go">python bin/test_simulators.py --servers jungfrau --test "[dacs]"</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>You can exclude specific tests by adding the option <code class="docutils literal notranslate"><span class="pre">~[<disable_test_name>]</span></code>. Again, we assume that this marker is added to the tests that you want to exclude.</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">cd build</span>
|
||||
<span class="go">python bin/test_simulators.py --servers eiger jungfrau moench --test "[detectorintegration]~[disable_check_data_file]"</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>You can additionally run all the tests not requiring detectors using the script <code class="docutils literal notranslate"><span class="pre">bin/test_simulators.py</span></code> by passing the option <code class="docutils literal notranslate"><span class="pre">--general-tests</span></code>.</p>
|
||||
<p>One can use <code class="docutils literal notranslate"><span class="pre">--no-log-file</span></code> if you dont want to create a log files and instead print to console. If you prefer to not print to console either, add <code class="docutils literal notranslate"><span class="pre">--quiet</span></code>.</p>
|
||||
</section>
|
||||
<section id="pytest-tests">
|
||||
<h2>Pytest Tests<a class="headerlink" href="#pytest-tests" title="Link to this heading"></a></h2>
|
||||
<p>To run the python tests use the following commands:</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">cd build</span>
|
||||
<span class="go">cmake ../ -DSLS_USE_PYTHON=ON</span>
|
||||
<span class="go">export PYTHONPATH=$PWD/bin</span>
|
||||
<span class="go">python -m pytest ../python/tests/</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>If a test requires a detector mark them with the pytest marker <code class="docutils literal notranslate"><span class="pre">@pytest.mark.detectorintegration</span></code>.</p>
|
||||
<p>To run only tests requiring virtual detectors use the following command:</p>
|
||||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span><span class="k">in</span><span class="w"> </span>build
|
||||
<span class="go">python -m pytest -m detectorintegration ../python/tests/</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>There is a helper test fixture in <code class="docutils literal notranslate"><span class="pre">slsDetectorSoftware/python/tests/conftest.py</span></code> called <code class="docutils literal notranslate"><span class="pre">session_simulator</span></code> that sets up virtual detectors and yields the test for all detectors. The set up is done for every test automatically. Note that the fixture persist over the entire session e.g. the fixture is setup one detector at a time and runs all tests using this fixture before cleaning up and moving on to the next detector. It saves time if the setup and cleanup is expensive.</p>
|
||||
<p>Example usage:</p>
|
||||
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">pytest</span>
|
||||
|
||||
<span class="nd">@pytest</span><span class="o">.</span><span class="n">mark</span><span class="o">.</span><span class="n">detectorintegration</span>
|
||||
<span class="k">def</span><span class="w"> </span><span class="nf">test_example_with_simulator</span><span class="p">(</span><span class="n">session_simulator</span><span class="p">):</span>
|
||||
<span class="c1"># your test code here</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>As the detector is set up only once makes sure to not change the state of the detector in a way that affects other tests. If you want to change the state of the detector make sure to reset it at the end of your test.</p>
|
||||
</div>
|
||||
<p>If you want to run the test only for a specific detector use the parametrized test fixture:</p>
|
||||
<p>Example usage:</p>
|
||||
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">pytest</span>
|
||||
|
||||
<span class="nd">@pytest</span><span class="o">.</span><span class="n">mark</span><span class="o">.</span><span class="n">detectorintegration</span>
|
||||
<span class="nd">@pytest</span><span class="o">.</span><span class="n">mark</span><span class="o">.</span><span class="n">parametrize</span><span class="p">(</span><span class="s2">"session_simulator"</span><span class="p">,</span> <span class="p">[(</span><span class="s2">"<my_detector>"</span><span class="p">,</span> <span class="o"><</span><span class="n">num_interfaces</span><span class="o">></span><span class="p">,</span> <span class="o"><</span><span class="n">num_modules</span><span class="o">></span><span class="p">),</span> <span class="p">(</span><span class="s2">"<another_detector>"</span><span class="p">,</span> <span class="o"><</span><span class="n">num_interfaces</span><span class="o">></span><span class="p">,</span> <span class="o"><</span><span class="n">num_modules</span><span class="o">></span><span class="p">)],</span> <span class="n">indirect</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
||||
<span class="k">def</span><span class="w"> </span><span class="nf">test_example_with_specific_simulators</span><span class="p">(</span><span class="n">session_simulator</span><span class="p">):</span>
|
||||
<span class="c1"># your test code here</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>The parametrized test fixture is setup per file and not for the entire session.</p>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||||
<a href="Versioning.html" class="btn btn-neutral float-left" title="Package Versioning" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="firmware.html" class="btn btn-neutral float-right" title="Firmware Upgrade" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
</div>
|
||||
|
||||
<hr/>
|
||||
|
||||
<div role="contentinfo">
|
||||
<p>© Copyright 2020, PSD Detector Group.</p>
|
||||
</div>
|
||||
|
||||
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
|
||||
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
|
||||
provided by <a href="https://readthedocs.org">Read the Docs</a>.
|
||||
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
<script>
|
||||
jQuery(function () {
|
||||
SphinxRtdTheme.Navigation.enable(true);
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -135,6 +137,7 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
<script src="_static/js/theme.js"></script>
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="Firmware Upgrade" href="firmware.html" />
|
||||
<link rel="next" title="Testing" href="Testing.html" />
|
||||
<link rel="prev" title="ToString" href="ToString.html" />
|
||||
</head>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
@@ -163,7 +166,7 @@
|
||||
</div>
|
||||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||||
<a href="ToString.html" class="btn btn-neutral float-left" title="ToString" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="firmware.html" class="btn btn-neutral float-right" title="Firmware Upgrade" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
<a href="Testing.html" class="btn btn-neutral float-right" title="Testing" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
</div>
|
||||
|
||||
<hr/>
|
||||
|
||||
@@ -0,0 +1,137 @@
|
||||
Testing
|
||||
==========
|
||||
|
||||
We use ``catch2`` and ``pytest`` for unit testing the C++ and Python code.
|
||||
|
||||
CATCH2 Tests
|
||||
----------------
|
||||
|
||||
To build and run the catch2 tests use the following commands:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
cd build
|
||||
cmake -DSLS_USE_TESTS=ON ../
|
||||
bin/tests
|
||||
|
||||
Note that this requires that you have catch2 installed on your system.
|
||||
|
||||
Naming Policy:
|
||||
-----------------
|
||||
|
||||
Per default all tests should be visible to catch2.
|
||||
|
||||
If a test fails in the github or gitea actions hide the test by adding the tag ``[.]`` to the test name.
|
||||
|
||||
.. code-block:: cpp
|
||||
|
||||
TEST_CASE("This test is hidden from default runs", "[.]") {
|
||||
REQUIRE(1 == 2);
|
||||
}
|
||||
|
||||
You can run all tests requiring a detector by running the following command:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
tests "[.detectorintegration]"
|
||||
|
||||
|
||||
.. note ::
|
||||
|
||||
This only works if a configured simulator (or an actual configured detector) and receiver are already set up to run the tests. There is a script that automatically sets up virtual detectors and runs all integration tests. See Section :ref:`Simulator Script. <python simulator script>` below.
|
||||
|
||||
|
||||
If you want to disable testing that involves a data file that require pc tuning optimizations, add the hidden tag ``[.disable_check_data_file]`` to the test case. Please note that only some specific disable tests have been implemented so far.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
tests "[detectorintegration]~[disable_check_data_file]"
|
||||
|
||||
.. note ::
|
||||
|
||||
Ensure that there are no spaces betweent the tags and no '.', else hardly any test will be matched.
|
||||
|
||||
.. _python simulator script:
|
||||
|
||||
Simulator Script:
|
||||
-----------------
|
||||
|
||||
One can also just run the following script, which will run your tests for all the detector types (simulators only) with a pre-determined configuration.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
cd build
|
||||
python bin/test_simulators.py
|
||||
|
||||
This runs all tests marked with the tag ``[.detectorintegration]`` for all detector simulators.
|
||||
If you want to run them for a specific virtual detector or a specific test use the following command:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
cd build
|
||||
python bin/test_simulators.py --servers jungfrau --test "[dacs]"
|
||||
|
||||
You can exclude specific tests by adding the option ``~[<disable_test_name>]``. Again, we assume that this marker is added to the tests that you want to exclude.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
cd build
|
||||
python bin/test_simulators.py --servers eiger jungfrau moench --test "[detectorintegration]~[disable_check_data_file]"
|
||||
|
||||
You can additionally run all the tests not requiring detectors using the script ``bin/test_simulators.py`` by passing the option ``--general-tests``.
|
||||
|
||||
One can use ``--no-log-file`` if you dont want to create a log files and instead print to console. If you prefer to not print to console either, add ``--quiet``.
|
||||
|
||||
|
||||
Pytest Tests
|
||||
-----------------
|
||||
|
||||
To run the python tests use the following commands:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
cd build
|
||||
cmake ../ -DSLS_USE_PYTHON=ON
|
||||
export PYTHONPATH=$PWD/bin
|
||||
python -m pytest ../python/tests/
|
||||
|
||||
If a test requires a detector mark them with the pytest marker ``@pytest.mark.detectorintegration``.
|
||||
|
||||
To run only tests requiring virtual detectors use the following command:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
#in build
|
||||
python -m pytest -m detectorintegration ../python/tests/
|
||||
|
||||
There is a helper test fixture in ``slsDetectorSoftware/python/tests/conftest.py`` called ``session_simulator`` that sets up virtual detectors and yields the test for all detectors. The set up is done for every test automatically. Note that the fixture persist over the entire session e.g. the fixture is setup one detector at a time and runs all tests using this fixture before cleaning up and moving on to the next detector. It saves time if the setup and cleanup is expensive.
|
||||
|
||||
Example usage:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
import pytest
|
||||
|
||||
@pytest.mark.detectorintegration
|
||||
def test_example_with_simulator(session_simulator):
|
||||
# your test code here
|
||||
|
||||
.. Note::
|
||||
As the detector is set up only once makes sure to not change the state of the detector in a way that affects other tests. If you want to change the state of the detector make sure to reset it at the end of your test.
|
||||
|
||||
If you want to run the test only for a specific detector use the parametrized test fixture:
|
||||
|
||||
Example usage:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
import pytest
|
||||
|
||||
@pytest.mark.detectorintegration
|
||||
@pytest.mark.parametrize("session_simulator", [("<my_detector>", <num_interfaces>, <num_modules>), ("<another_detector>", <num_interfaces>, <num_modules>)], indirect=True)
|
||||
def test_example_with_specific_simulators(session_simulator):
|
||||
# your test code here
|
||||
|
||||
.. Note::
|
||||
The parametrized test fixture is setup per file and not for the entire session.
|
||||
|
||||
@@ -53,9 +53,9 @@ To build the python module the following dependencies are needed:
|
||||
|
||||
Refer :ref:`pybind11 notes. <pybind for different slsDetectorPackage versions>`
|
||||
|
||||
-------------------------------
|
||||
------------------------------------
|
||||
Dependencies to build documentation
|
||||
-------------------------------
|
||||
------------------------------------
|
||||
|
||||
To build this documentation that you are reading now the following dependencies are needed:
|
||||
|
||||
@@ -76,7 +76,7 @@ To build the GUI the following dependencies are needed:
|
||||
|
||||
Qwt is bundled in libs. One does not need to pre-install it on the system.
|
||||
|
||||
------------------------------------------------------
|
||||
-----------------------------------------------------
|
||||
Dependencies to build Moench and Jungfrau executables
|
||||
-----------------------------------------------------
|
||||
|
||||
|
||||
@@ -48,7 +48,9 @@ slsDetectorPackage
|
||||
|
||||
pygettingstarted
|
||||
pydetector
|
||||
pyctb
|
||||
pyenums
|
||||
pypower
|
||||
pyexamples
|
||||
pyPatternGenerator
|
||||
pattern
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
Ctb
|
||||
=====================================================
|
||||
|
||||
.. py:currentmodule:: slsdet
|
||||
|
||||
.. autoclass:: Ctb
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
:inherited-members:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
Power Supply
|
||||
===============
|
||||
|
||||
Helper class to control power supplies on the Chip Test Board (CTB, Xilinx CTB).
|
||||
|
||||
.. py:currentmodule:: slsdet
|
||||
|
||||
.. autoclass:: Power
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
:inherited-members:
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -95,6 +97,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
@@ -536,7 +539,15 @@
|
||||
<div class="line">sls_detector_get getbit test_reg 2</div>
|
||||
</div>
|
||||
</dd>
|
||||
<dt id="term-definelist_bit-List-of-user-defined-bit-definitions-in-shared-memory.">definelist_bit List of user-defined bit definitions in shared memory.<a class="headerlink" href="#term-definelist_bit-List-of-user-defined-bit-definitions-in-shared-memory." title="Link to this term"></a></dt><dt id="term-definelist_reg-List-of-user-defined-register-definitions-in-shared-memory.">definelist_reg List of user-defined register definitions in shared memory.<a class="headerlink" href="#term-definelist_reg-List-of-user-defined-register-definitions-in-shared-memory." title="Link to this term"></a></dt><dt id="term-delay-duration-optional-unit-ns-us-ms-s">delay [duration] [(optional unit) ns|us|ms|s]<a class="headerlink" href="#term-delay-duration-optional-unit-ns-us-ms-s" title="Link to this term"></a></dt><dd><div class="line-block">
|
||||
<dt id="term-definelist_bit">definelist_bit<a class="headerlink" href="#term-definelist_bit" title="Link to this term"></a></dt><dd><div class="line-block">
|
||||
<div class="line">List of user-defined bit definitions in shared memory.</div>
|
||||
</div>
|
||||
</dd>
|
||||
<dt id="term-definelist_reg">definelist_reg<a class="headerlink" href="#term-definelist_reg" title="Link to this term"></a></dt><dd><div class="line-block">
|
||||
<div class="line">List of user-defined register definitions in shared memory.</div>
|
||||
</div>
|
||||
</dd>
|
||||
<dt id="term-delay-duration-optional-unit-ns-us-ms-s">delay [duration] [(optional unit) ns|us|ms|s]<a class="headerlink" href="#term-delay-duration-optional-unit-ns-us-ms-s" title="Link to this term"></a></dt><dd><div class="line-block">
|
||||
<div class="line">[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Moench][Xilinx Ctb] Delay after trigger</div>
|
||||
</div>
|
||||
</dd>
|
||||
|
||||
@@ -76,7 +76,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -91,6 +93,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -74,7 +74,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -89,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -105,6 +107,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -104,7 +104,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -119,6 +121,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
<li class="toctree-l2"><a class="reference internal" href="#dependencies-to-build-python-module">Dependencies to build Python module</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#dependencies-to-build-documentation">Dependencies to build documentation</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#dependencies-to-build-gui">Dependencies to build GUI</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#dependencies-to-build-moench-and-jungfrau-executables">Dependencies to build Moench and Jungfrau executables</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#dependencies-to-build-tests">Dependencies to build Tests</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
@@ -75,7 +76,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -90,6 +93,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
@@ -235,6 +239,9 @@ the shared libraries these are needed:</p>
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>Qwt is bundled in libs. One does not need to pre-install it on the system.</p>
|
||||
</div>
|
||||
</section>
|
||||
<section id="dependencies-to-build-moench-and-jungfrau-executables">
|
||||
<h2>Dependencies to build Moench and Jungfrau executables<a class="headerlink" href="#dependencies-to-build-moench-and-jungfrau-executables" title="Link to this heading"></a></h2>
|
||||
<p>To build the Moench and Jungfrau executables for preprocessing and calibration the following dependencies are needed:</p>
|
||||
<blockquote>
|
||||
<div><ul class="simple">
|
||||
|
||||
@@ -601,7 +601,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -616,6 +618,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -75,7 +75,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -90,6 +92,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="Getting Started" href="servers.html" />
|
||||
<link rel="prev" title="Package Versioning" href="Versioning.html" />
|
||||
<link rel="prev" title="Testing" href="Testing.html" />
|
||||
</head>
|
||||
|
||||
<body class="wy-body-for-nav">
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul class="current">
|
||||
@@ -552,7 +555,7 @@ more<span class="w"> </span>/proc/mtd<span class="w"> </span><span class="c1">#
|
||||
</div>
|
||||
</div>
|
||||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||||
<a href="Versioning.html" class="btn btn-neutral float-left" title="Package Versioning" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="Testing.html" class="btn btn-neutral float-left" title="Testing" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="servers.html" class="btn btn-neutral float-right" title="Getting Started" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
</div>
|
||||
|
||||
|
||||
+4639
-33
File diff suppressed because it is too large
Load Diff
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
+49
-3
@@ -67,7 +67,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -82,6 +84,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
@@ -179,6 +182,7 @@ For further detector specific documentation, visit <a class="reference external"
|
||||
<li class="toctree-l2"><a class="reference internal" href="dependencies.html#dependencies-to-build-python-module">Dependencies to build Python module</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="dependencies.html#dependencies-to-build-documentation">Dependencies to build documentation</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="dependencies.html#dependencies-to-build-gui">Dependencies to build GUI</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="dependencies.html#dependencies-to-build-moench-and-jungfrau-executables">Dependencies to build Moench and Jungfrau executables</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="dependencies.html#dependencies-to-build-tests">Dependencies to build Tests</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
@@ -276,8 +280,40 @@ For further detector specific documentation, visit <a class="reference external"
|
||||
<li class="toctree-l2"><a class="reference internal" href="pygettingstarted.html#where-are-the-enums">Where are the ENUMs?</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pydetector.html#slsdet.Detector"><code class="docutils literal notranslate"><span class="pre">Detector</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyctb.html#slsdet.Ctb"><code class="docutils literal notranslate"><span class="pre">Ctb</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.runStatus"><code class="docutils literal notranslate"><span class="pre">runStatus</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.detectorType"><code class="docutils literal notranslate"><span class="pre">detectorType</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.frameDiscardPolicy"><code class="docutils literal notranslate"><span class="pre">frameDiscardPolicy</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.fileFormat"><code class="docutils literal notranslate"><span class="pre">fileFormat</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.dimension"><code class="docutils literal notranslate"><span class="pre">dimension</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.externalSignalFlag"><code class="docutils literal notranslate"><span class="pre">externalSignalFlag</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.timingMode"><code class="docutils literal notranslate"><span class="pre">timingMode</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.dacIndex"><code class="docutils literal notranslate"><span class="pre">dacIndex</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.detectorSettings"><code class="docutils literal notranslate"><span class="pre">detectorSettings</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.clockIndex"><code class="docutils literal notranslate"><span class="pre">clockIndex</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.speedLevel"><code class="docutils literal notranslate"><span class="pre">speedLevel</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.readoutMode"><code class="docutils literal notranslate"><span class="pre">readoutMode</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.burstMode"><code class="docutils literal notranslate"><span class="pre">burstMode</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.timingSourceType"><code class="docutils literal notranslate"><span class="pre">timingSourceType</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.M3_GainCaps"><code class="docutils literal notranslate"><span class="pre">M3_GainCaps</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.portPosition"><code class="docutils literal notranslate"><span class="pre">portPosition</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.streamingInterface"><code class="docutils literal notranslate"><span class="pre">streamingInterface</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.vetoAlgorithm"><code class="docutils literal notranslate"><span class="pre">vetoAlgorithm</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyenums.html#slsdet.gainMode"><code class="docutils literal notranslate"><span class="pre">gainMode</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pypower.html#slsdet.Power"><code class="docutils literal notranslate"><span class="pre">Power</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyexamples.html#setting-exposure-time">Setting exposure time</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyexamples.html#converting-numbers-to-hex">Converting numbers to hex</a></li>
|
||||
@@ -288,7 +324,10 @@ For further detector specific documentation, visit <a class="reference external"
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyexamples.html#reading-dacs">Reading dacs</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="pyPatternGenerator.html#slsdet.PatternGenerator"><code class="docutils literal notranslate"><span class="pre">PatternGenerator</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -409,6 +448,13 @@ For further detector specific documentation, visit <a class="reference external"
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Testing.html#catch2-tests">CATCH2 Tests</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Testing.html#naming-policy">Naming Policy:</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Testing.html#simulator-script">Simulator Script:</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Testing.html#pytest-tests">Pytest Tests</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="toctree-wrapper compound">
|
||||
|
||||
@@ -84,7 +84,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -99,6 +101,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -74,7 +74,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -89,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
Binary file not shown.
@@ -68,7 +68,9 @@
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,9 +68,38 @@
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">PatternGenerator</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">PatternGenerator</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.PatternGenerator"><code class="docutils literal notranslate"><span class="pre">PatternGenerator</span></code></a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.CB"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.CB()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.CLOCK"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.CLOCK()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.CLOCKS"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.CLOCKS()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.PW"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.PW()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.SB"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.SB()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.load"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.load()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.print"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.print()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.save"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.save()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.send_to_detector"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.send_to_detector()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.serializer"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.serializer()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setinput"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setinput()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setinputs"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setinputs()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setnloop"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setnloop()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setoutput"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setoutput()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setoutputs"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setoutputs()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setstart"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setstart()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setstartloop"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setstartloop()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setstop"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setstop()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setstoploop"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setstoploop()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setwait"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setwait()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setwaitpoint"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setwaitpoint()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.PatternGenerator.setwaittime"><code class="docutils literal notranslate"><span class="pre">PatternGenerator.setwaittime()</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Command line</span></p>
|
||||
@@ -83,6 +112,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
@@ -170,6 +200,147 @@ patlimits<span class="w"> </span>0x0000<span class="w"> </span>0x0002
|
||||
...
|
||||
</pre></div>
|
||||
</div>
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">PatternGenerator</span></span><a class="headerlink" href="#slsdet.PatternGenerator" title="Link to this definition"></a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>Class to generate a pattern for the SLS detector. Intents to as closely as possible
|
||||
mimic the old pattern generation in the C code.</p>
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.CB">
|
||||
<span class="sig-name descname"><span class="pre">CB</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">bits</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.CB" title="Link to this definition"></a></dt>
|
||||
<dd><p>Clear one or several bits. Change will take affect with the next PW.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.CLOCK">
|
||||
<span class="sig-name descname"><span class="pre">CLOCK</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bit</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">length</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbose</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.CLOCK" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.CLOCKS">
|
||||
<span class="sig-name descname"><span class="pre">CLOCKS</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bit</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">times</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">length</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbose</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.CLOCKS" title="Link to this definition"></a></dt>
|
||||
<dd><p>clocks “bit” n “times”, every half clock is long “length”
|
||||
length is optional, default value is 1</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.PW">
|
||||
<span class="sig-name descname"><span class="pre">PW</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbose</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.PW" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.SB">
|
||||
<span class="sig-name descname"><span class="pre">SB</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">bits</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.SB" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set one or several bits. Change will take affect with the next PW.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.load">
|
||||
<span class="sig-name descname"><span class="pre">load</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fname</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.load" title="Link to this definition"></a></dt>
|
||||
<dd><p>Load pattern from text file</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.print">
|
||||
<span class="sig-name descname"><span class="pre">print</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.print" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.save">
|
||||
<span class="sig-name descname"><span class="pre">save</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fname</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.save" title="Link to this definition"></a></dt>
|
||||
<dd><p>Save pattern to text file</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.send_to_detector">
|
||||
<span class="sig-name descname"><span class="pre">send_to_detector</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">det</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.send_to_detector" title="Link to this definition"></a></dt>
|
||||
<dd><p>Load the pattern into the detector.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.serializer">
|
||||
<span class="sig-name descname"><span class="pre">serializer</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">serInBit</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">clkBit</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nbits</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">msbfirst</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">length</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.serializer" title="Link to this definition"></a></dt>
|
||||
<dd><p>Produces the .pat file needed to serialize a word into a shift register.
|
||||
value: value to be serialized
|
||||
serInBit: control bit corresponding to serial in
|
||||
clkBit: control bit corresponding to the clock
|
||||
nbits: number of bits of the target register to load
|
||||
msbfirst: if 1 pushes in the MSB first (default),
|
||||
if 0 pushes in the LSB first
|
||||
length: length of all the PWs in the pattern
|
||||
It produces no output because it modifies directly the members of the class pat via SB and CB</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setinput">
|
||||
<span class="sig-name descname"><span class="pre">setinput</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bit</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setinput" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setinputs">
|
||||
<span class="sig-name descname"><span class="pre">setinputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setinputs" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setnloop">
|
||||
<span class="sig-name descname"><span class="pre">setnloop</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">reps</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setnloop" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setoutput">
|
||||
<span class="sig-name descname"><span class="pre">setoutput</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bit</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setoutput" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setoutputs">
|
||||
<span class="sig-name descname"><span class="pre">setoutputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setoutputs" title="Link to this definition"></a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setstart">
|
||||
<span class="sig-name descname"><span class="pre">setstart</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setstart" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set start of pattern to the current address.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setstartloop">
|
||||
<span class="sig-name descname"><span class="pre">setstartloop</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setstartloop" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set startloop[i] to the current address.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setstop">
|
||||
<span class="sig-name descname"><span class="pre">setstop</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">l</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setstop" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set stop of pattern to the current address.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setstoploop">
|
||||
<span class="sig-name descname"><span class="pre">setstoploop</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setstoploop" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set stoploop[i] to the current address.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setwait">
|
||||
<span class="sig-name descname"><span class="pre">setwait</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setwait" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set wait[i] to the current address and waittime[i] to t.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setwaitpoint">
|
||||
<span class="sig-name descname"><span class="pre">setwaitpoint</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setwaitpoint" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set wait[i] to the current address.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.PatternGenerator.setwaittime">
|
||||
<span class="sig-name descname"><span class="pre">setwaittime</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.PatternGenerator.setwaittime" title="Link to this definition"></a></dt>
|
||||
<dd><p>Set waittime[i] to t.</p>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+6499
-3
File diff suppressed because it is too large
Load Diff
+340
-5
@@ -20,8 +20,8 @@
|
||||
<script src="_static/js/theme.js"></script>
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="Examples" href="pyexamples.html" />
|
||||
<link rel="prev" title="Detector" href="pydetector.html" />
|
||||
<link rel="next" title="Power Supply" href="pypower.html" />
|
||||
<link rel="prev" title="Ctb" href="pyctb.html" />
|
||||
</head>
|
||||
|
||||
<body class="wy-body-for-nav">
|
||||
@@ -68,7 +68,30 @@
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Enums</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.runStatus"><code class="docutils literal notranslate"><span class="pre">runStatus</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.detectorType"><code class="docutils literal notranslate"><span class="pre">detectorType</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.frameDiscardPolicy"><code class="docutils literal notranslate"><span class="pre">frameDiscardPolicy</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.fileFormat"><code class="docutils literal notranslate"><span class="pre">fileFormat</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.dimension"><code class="docutils literal notranslate"><span class="pre">dimension</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.externalSignalFlag"><code class="docutils literal notranslate"><span class="pre">externalSignalFlag</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.timingMode"><code class="docutils literal notranslate"><span class="pre">timingMode</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.dacIndex"><code class="docutils literal notranslate"><span class="pre">dacIndex</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.detectorSettings"><code class="docutils literal notranslate"><span class="pre">detectorSettings</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.clockIndex"><code class="docutils literal notranslate"><span class="pre">clockIndex</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.speedLevel"><code class="docutils literal notranslate"><span class="pre">speedLevel</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.readoutMode"><code class="docutils literal notranslate"><span class="pre">readoutMode</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.burstMode"><code class="docutils literal notranslate"><span class="pre">burstMode</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.timingSourceType"><code class="docutils literal notranslate"><span class="pre">timingSourceType</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.M3_GainCaps"><code class="docutils literal notranslate"><span class="pre">M3_GainCaps</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.portPosition"><code class="docutils literal notranslate"><span class="pre">portPosition</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.streamingInterface"><code class="docutils literal notranslate"><span class="pre">streamingInterface</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.vetoAlgorithm"><code class="docutils literal notranslate"><span class="pre">vetoAlgorithm</span></code></a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.gainMode"><code class="docutils literal notranslate"><span class="pre">gainMode</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +106,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
@@ -174,14 +198,325 @@ exposed to Python through pybind11.</p>
|
||||
<span class="nb">print</span><span class="p">(</span><span class="n">enum</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.runStatus">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">runStatus</span></span><a class="headerlink" href="#slsdet.runStatus" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>IDLE</p>
|
||||
<p>ERROR</p>
|
||||
<p>WAITING</p>
|
||||
<p>RUN_FINISHED</p>
|
||||
<p>TRANSMITTING</p>
|
||||
<p>RUNNING</p>
|
||||
<p>STOPPED</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.detectorType">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">detectorType</span></span><a class="headerlink" href="#slsdet.detectorType" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>GENERIC</p>
|
||||
<p>EIGER</p>
|
||||
<p>GOTTHARD</p>
|
||||
<p>JUNGFRAU</p>
|
||||
<p>CHIPTESTBOARD</p>
|
||||
<p>MOENCH</p>
|
||||
<p>MYTHEN3</p>
|
||||
<p>GOTTHARD2</p>
|
||||
<p>XILINX_CHIPTESTBOARD</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.frameDiscardPolicy">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">frameDiscardPolicy</span></span><a class="headerlink" href="#slsdet.frameDiscardPolicy" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>NO_DISCARD</p>
|
||||
<p>DISCARD_EMPTY_FRAMES</p>
|
||||
<p>DISCARD_PARTIAL_FRAMES</p>
|
||||
<p>NUM_DISCARD_POLICIES</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.fileFormat">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">fileFormat</span></span><a class="headerlink" href="#slsdet.fileFormat" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>BINARY</p>
|
||||
<p>HDF5</p>
|
||||
<p>NUM_FILE_FORMATS</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.dimension">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">dimension</span></span><a class="headerlink" href="#slsdet.dimension" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>X</p>
|
||||
<p>Y</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.externalSignalFlag">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">externalSignalFlag</span></span><a class="headerlink" href="#slsdet.externalSignalFlag" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>TRIGGER_IN_RISING_EDGE</p>
|
||||
<p>TRIGGER_IN_FALLING_EDGE</p>
|
||||
<p>INVERSION_ON</p>
|
||||
<p>INVERSION_OFF</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.timingMode">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">timingMode</span></span><a class="headerlink" href="#slsdet.timingMode" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>AUTO_TIMING</p>
|
||||
<p>TRIGGER_EXPOSURE</p>
|
||||
<p>GATED</p>
|
||||
<p>BURST_TRIGGER</p>
|
||||
<p>TRIGGER_GATED</p>
|
||||
<p>NUM_TIMING_MODES</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.dacIndex">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">dacIndex</span></span><a class="headerlink" href="#slsdet.dacIndex" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>DAC_0</p>
|
||||
<p>DAC_1</p>
|
||||
<p>DAC_2</p>
|
||||
<p>DAC_3</p>
|
||||
<p>DAC_4</p>
|
||||
<p>DAC_5</p>
|
||||
<p>DAC_6</p>
|
||||
<p>DAC_7</p>
|
||||
<p>DAC_8</p>
|
||||
<p>DAC_9</p>
|
||||
<p>DAC_10</p>
|
||||
<p>DAC_11</p>
|
||||
<p>DAC_12</p>
|
||||
<p>DAC_13</p>
|
||||
<p>DAC_14</p>
|
||||
<p>DAC_15</p>
|
||||
<p>DAC_16</p>
|
||||
<p>DAC_17</p>
|
||||
<p>VSVP</p>
|
||||
<p>VTRIM</p>
|
||||
<p>VRPREAMP</p>
|
||||
<p>VRSHAPER</p>
|
||||
<p>VSVN</p>
|
||||
<p>VTGSTV</p>
|
||||
<p>VCMP_LL</p>
|
||||
<p>VCMP_LR</p>
|
||||
<p>VCAL</p>
|
||||
<p>VCMP_RL</p>
|
||||
<p>RXB_RB</p>
|
||||
<p>RXB_LB</p>
|
||||
<p>VCMP_RR</p>
|
||||
<p>VCP</p>
|
||||
<p>VCN</p>
|
||||
<p>VISHAPER</p>
|
||||
<p>VTHRESHOLD</p>
|
||||
<p>IO_DELAY</p>
|
||||
<p>VREF_DS</p>
|
||||
<p>VOUT_CM</p>
|
||||
<p>VIN_CM</p>
|
||||
<p>VREF_COMP</p>
|
||||
<p>VB_COMP</p>
|
||||
<p>VDD_PROT</p>
|
||||
<p>VIN_COM</p>
|
||||
<p>VREF_PRECH</p>
|
||||
<p>VB_PIXBUF</p>
|
||||
<p>VB_DS</p>
|
||||
<p>VREF_H_ADC</p>
|
||||
<p>VB_COMP_FE</p>
|
||||
<p>VB_COMP_ADC</p>
|
||||
<p>VCOM_CDS</p>
|
||||
<p>VREF_RSTORE</p>
|
||||
<p>VB_OPA_1ST</p>
|
||||
<p>VREF_COMP_FE</p>
|
||||
<p>VCOM_ADC1</p>
|
||||
<p>VREF_L_ADC</p>
|
||||
<p>VREF_CDS</p>
|
||||
<p>VB_CS</p>
|
||||
<p>VB_OPA_FD</p>
|
||||
<p>VCOM_ADC2</p>
|
||||
<p>VCASSH</p>
|
||||
<p>VTH2</p>
|
||||
<p>VRSHAPER_N</p>
|
||||
<p>VIPRE_OUT</p>
|
||||
<p>VTH3</p>
|
||||
<p>VTH1</p>
|
||||
<p>VICIN</p>
|
||||
<p>VCAS</p>
|
||||
<p>VCAL_N</p>
|
||||
<p>VIPRE</p>
|
||||
<p>VCAL_P</p>
|
||||
<p>VDCSH</p>
|
||||
<p>VBP_COLBUF</p>
|
||||
<p>VB_SDA</p>
|
||||
<p>VCASC_SFP</p>
|
||||
<p>VIPRE_CDS</p>
|
||||
<p>IBIAS_SFP</p>
|
||||
<p>ADC_VPP</p>
|
||||
<p>HIGH_VOLTAGE</p>
|
||||
<p>TEMPERATURE_ADC</p>
|
||||
<p>TEMPERATURE_FPGA</p>
|
||||
<p>TEMPERATURE_FPGAEXT</p>
|
||||
<p>TEMPERATURE_10GE</p>
|
||||
<p>TEMPERATURE_DCDC</p>
|
||||
<p>TEMPERATURE_SODL</p>
|
||||
<p>TEMPERATURE_SODR</p>
|
||||
<p>TEMPERATURE_FPGA2</p>
|
||||
<p>TEMPERATURE_FPGA3</p>
|
||||
<p>TRIMBIT_SCAN</p>
|
||||
<p>SLOW_ADC0</p>
|
||||
<p>SLOW_ADC1</p>
|
||||
<p>SLOW_ADC2</p>
|
||||
<p>SLOW_ADC3</p>
|
||||
<p>SLOW_ADC4</p>
|
||||
<p>SLOW_ADC5</p>
|
||||
<p>SLOW_ADC6</p>
|
||||
<p>SLOW_ADC7</p>
|
||||
<p>SLOW_ADC_TEMP</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.detectorSettings">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">detectorSettings</span></span><a class="headerlink" href="#slsdet.detectorSettings" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>STANDARD</p>
|
||||
<p>FAST</p>
|
||||
<p>HIGHGAIN</p>
|
||||
<p>DYNAMICGAIN</p>
|
||||
<p>LOWGAIN</p>
|
||||
<p>MEDIUMGAIN</p>
|
||||
<p>VERYHIGHGAIN</p>
|
||||
<p>HIGHGAIN0</p>
|
||||
<p>FIXGAIN1</p>
|
||||
<p>FIXGAIN2</p>
|
||||
<p>VERYLOWGAIN</p>
|
||||
<p>G1_HIGHGAIN</p>
|
||||
<p>G1_LOWGAIN</p>
|
||||
<p>G2_HIGHCAP_HIGHGAIN</p>
|
||||
<p>G2_HIGHCAP_LOWGAIN</p>
|
||||
<p>G2_LOWCAP_HIGHGAIN</p>
|
||||
<p>G2_LOWCAP_LOWGAIN</p>
|
||||
<p>G4_HIGHGAIN</p>
|
||||
<p>G4_LOWGAIN</p>
|
||||
<p>GAIN0</p>
|
||||
<p>UNDEFINED</p>
|
||||
<p>UNINITIALIZED</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.clockIndex">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">clockIndex</span></span><a class="headerlink" href="#slsdet.clockIndex" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>ADC_CLOCK</p>
|
||||
<p>DBIT_CLOCK</p>
|
||||
<p>RUN_CLOCK</p>
|
||||
<p>SYNC_CLOCK</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.speedLevel">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">speedLevel</span></span><a class="headerlink" href="#slsdet.speedLevel" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>FULL_SPEED</p>
|
||||
<p>HALF_SPEED</p>
|
||||
<p>QUARTER_SPEED</p>
|
||||
<p>G2_108MHZ</p>
|
||||
<p>G2_144MHZ</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.readoutMode">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">readoutMode</span></span><a class="headerlink" href="#slsdet.readoutMode" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>ANALOG_ONLY</p>
|
||||
<p>DIGITAL_ONLY</p>
|
||||
<p>ANALOG_AND_DIGITAL</p>
|
||||
<p>TRANSCEIVER_ONLY</p>
|
||||
<p>DIGITAL_AND_TRANSCEIVER</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.burstMode">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">burstMode</span></span><a class="headerlink" href="#slsdet.burstMode" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>BURST_INTERNAL</p>
|
||||
<p>BURST_EXTERNAL</p>
|
||||
<p>CONTINUOUS_INTERNAL</p>
|
||||
<p>CONTINUOUS_EXTERNAL</p>
|
||||
<p>NUM_BURST_MODES</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.timingSourceType">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">timingSourceType</span></span><a class="headerlink" href="#slsdet.timingSourceType" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>TIMING_INTERNAL</p>
|
||||
<p>TIMING_EXTERNAL</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.M3_GainCaps">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">M3_GainCaps</span></span><a class="headerlink" href="#slsdet.M3_GainCaps" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>M3_C10pre</p>
|
||||
<p>M3_C15sh</p>
|
||||
<p>M3_C30sh</p>
|
||||
<p>M3_C50sh</p>
|
||||
<p>M3_C225ACsh</p>
|
||||
<p>M3_C15pre</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.portPosition">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">portPosition</span></span><a class="headerlink" href="#slsdet.portPosition" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>LEFT</p>
|
||||
<p>RIGHT</p>
|
||||
<p>TOP</p>
|
||||
<p>BOTTOM</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.streamingInterface">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">streamingInterface</span></span><a class="headerlink" href="#slsdet.streamingInterface" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>NONE</p>
|
||||
<p>LOW_LATENCY_LINK</p>
|
||||
<p>ETHERNET_10GB</p>
|
||||
<p>ALL</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.vetoAlgorithm">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">vetoAlgorithm</span></span><a class="headerlink" href="#slsdet.vetoAlgorithm" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>ALG_HITS</p>
|
||||
<p>ALG_RAW</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.gainMode">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">gainMode</span></span><a class="headerlink" href="#slsdet.gainMode" title="Link to this definition"></a></dt>
|
||||
<dd><p>Members:</p>
|
||||
<p>DYNAMIC</p>
|
||||
<p>FORCE_SWITCH_G1</p>
|
||||
<p>FORCE_SWITCH_G2</p>
|
||||
<p>FIX_G1</p>
|
||||
<p>FIX_G2</p>
|
||||
<p>FIX_G0</p>
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||||
<a href="pydetector.html" class="btn btn-neutral float-left" title="Detector" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="pyexamples.html" class="btn btn-neutral float-right" title="Examples" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
<a href="pyctb.html" class="btn btn-neutral float-left" title="Ctb" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="pypower.html" class="btn btn-neutral float-right" title="Power Supply" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
</div>
|
||||
|
||||
<hr/>
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="PatternGenerator" href="pyPatternGenerator.html" />
|
||||
<link rel="prev" title="Enums" href="pyenums.html" />
|
||||
<link rel="prev" title="Power Supply" href="pypower.html" />
|
||||
</head>
|
||||
|
||||
<body class="wy-body-for-nav">
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Examples</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#setting-exposure-time">Setting exposure time</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#converting-numbers-to-hex">Converting numbers to hex</a></li>
|
||||
@@ -92,6 +94,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
@@ -442,7 +445,7 @@ hang around until the main process exits.</p>
|
||||
</div>
|
||||
</div>
|
||||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||||
<a href="pyenums.html" class="btn btn-neutral float-left" title="Enums" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="pypower.html" class="btn btn-neutral float-left" title="Power Supply" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="pyPatternGenerator.html" class="btn btn-neutral float-right" title="PatternGenerator" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -79,7 +79,9 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -94,6 +96,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -0,0 +1,235 @@
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html class="writer-html5" lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Power Supply — slsDetectorPackage 0.0.0 documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=b86133f3" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/theme.css?v=9edc463e" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/extra.css?v=2be88464" />
|
||||
|
||||
|
||||
<script src="_static/jquery.js?v=5d32c60e"></script>
|
||||
<script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
|
||||
<script src="_static/documentation_options.js?v=5929fcd5"></script>
|
||||
<script src="_static/doctools.js?v=fd6eb6e6"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=6ffebe34"></script>
|
||||
<script src="_static/js/theme.js"></script>
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="Examples" href="pyexamples.html" />
|
||||
<link rel="prev" title="Enums" href="pyenums.html" />
|
||||
</head>
|
||||
|
||||
<body class="wy-body-for-nav">
|
||||
<div class="wy-grid-for-nav">
|
||||
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
||||
<div class="wy-side-scroll">
|
||||
<div class="wy-side-nav-search" >
|
||||
|
||||
|
||||
|
||||
<a href="index.html" class="icon icon-home">
|
||||
slsDetectorPackage 0.0.0
|
||||
</a>
|
||||
<div role="search">
|
||||
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
|
||||
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
|
||||
<input type="hidden" name="check_keywords" value="yes" />
|
||||
<input type="hidden" name="area" value="default" />
|
||||
</form>
|
||||
</div>
|
||||
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
|
||||
<p class="caption" role="heading"><span class="caption-text">Installation:</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="dependencies.html">Dependencies</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consuming.html">Consuming slsDetectorPackage</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">how to</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="softwarearchitecture.html">Software Architecture</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="configcommands.html">Setup Commands</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="quick_start_guide.html">Quick Start Guide</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="dataformat.html">Detector Image Size and Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="multidet.html">Using multiple detectors</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">C++ API</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="detector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="result.html">Result</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="receiver_api.html">Receiver</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Python API</span></p>
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Power Supply</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#slsdet.Power"><code class="docutils literal notranslate"><span class="pre">Power</span></code></a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.Power.dac"><code class="docutils literal notranslate"><span class="pre">Power.dac</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.Power.disable"><code class="docutils literal notranslate"><span class="pre">Power.disable()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.Power.enable"><code class="docutils literal notranslate"><span class="pre">Power.enable()</span></code></a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#slsdet.Power.enabled"><code class="docutils literal notranslate"><span class="pre">Power.enabled</span></code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Command line</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="commandline.html">Command line interface</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Developer</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="container_utils.html">ContainerUtils</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="firmware.html">Firmware Upgrade</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Detector Server</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="servers.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="serverupgrade.html">Upgrade</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="virtualserver.html">Simulators</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="serverdefaults.html">Default Values</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Detector UDP Header</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="udpheader.html">Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="udpconfig.html">Config file</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="udpdetspec.html">Detector Specific Fields</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Receiver</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="slsreceiver.html">In-built Receiver</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="receivers.html">Custom Receiver</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Receiver Files</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="fileformat.html">File format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="slsreceiverheaderformat.html">SLS Receiver Header Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="dataformat.html">Detector Image Size and Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="masterfileattributes.html">Master File Attributes</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="binaryfileformat.html">Binary File Format</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="hdf5fileformat.html">HDF5 File Format</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Receiver ZMQ Stream</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="zmqjsonheaderformat.html">ZMQ: Json Header Format</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Troubleshooting</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="troubleshooting.html">Troubleshooting</a></li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
|
||||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
||||
<a href="index.html">slsDetectorPackage 0.0.0</a>
|
||||
</nav>
|
||||
|
||||
<div class="wy-nav-content">
|
||||
<div class="rst-content">
|
||||
<div role="navigation" aria-label="Page navigation">
|
||||
<ul class="wy-breadcrumbs">
|
||||
<li><a href="index.html" class="icon icon-home" aria-label="Home"></a></li>
|
||||
<li class="breadcrumb-item active">Power Supply</li>
|
||||
<li class="wy-breadcrumbs-aside">
|
||||
<a href="_sources/pypower.rst.txt" rel="nofollow"> View page source</a>
|
||||
</li>
|
||||
</ul>
|
||||
<hr/>
|
||||
</div>
|
||||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
||||
<div itemprop="articleBody">
|
||||
|
||||
<section id="power-supply">
|
||||
<h1>Power Supply<a class="headerlink" href="#power-supply" title="Link to this heading"></a></h1>
|
||||
<p>Helper class to control power supplies on the Chip Test Board (CTB, Xilinx CTB).</p>
|
||||
<dl class="py class">
|
||||
<dt class="sig sig-object py" id="slsdet.Power">
|
||||
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">slsdet.</span></span><span class="sig-name descname"><span class="pre">Power</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">enum</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detector</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.Power" title="Link to this definition"></a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>This class represents a power supply on the Chip Test Board.</p>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>This class is used to build up NamedPowers and is in general
|
||||
not directly accessible to the user.</p>
|
||||
</div>
|
||||
<dl class="py property">
|
||||
<dt class="sig sig-object py" id="slsdet.Power.dac">
|
||||
<span class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></span><span class="sig-name descname"><span class="pre">dac</span></span><a class="headerlink" href="#slsdet.Power.dac" title="Link to this definition"></a></dt>
|
||||
<dd><p>Returns the dac value for this power supply in mV.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.Power.disable">
|
||||
<span class="sig-name descname"><span class="pre">disable</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.Power.disable" title="Link to this definition"></a></dt>
|
||||
<dd><p>Disable this power supply.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt class="sig sig-object py" id="slsdet.Power.enable">
|
||||
<span class="sig-name descname"><span class="pre">enable</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#slsdet.Power.enable" title="Link to this definition"></a></dt>
|
||||
<dd><p>Enable this power supply.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py property">
|
||||
<dt class="sig sig-object py" id="slsdet.Power.enabled">
|
||||
<span class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></span><span class="sig-name descname"><span class="pre">enabled</span></span><a class="headerlink" href="#slsdet.Power.enabled" title="Link to this definition"></a></dt>
|
||||
<dd><p>Returns whether this power supply is enabled.</p>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||||
<a href="pyenums.html" class="btn btn-neutral float-left" title="Enums" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||||
<a href="pyexamples.html" class="btn btn-neutral float-right" title="Examples" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||||
</div>
|
||||
|
||||
<hr/>
|
||||
|
||||
<div role="contentinfo">
|
||||
<p>© Copyright 2020, PSD Detector Group.</p>
|
||||
</div>
|
||||
|
||||
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
|
||||
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
|
||||
provided by <a href="https://readthedocs.org">Read the Docs</a>.
|
||||
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
<script>
|
||||
jQuery(function () {
|
||||
SphinxRtdTheme.Navigation.enable(true);
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -79,7 +79,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -94,6 +96,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -78,7 +78,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -93,6 +95,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -111,7 +111,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -126,6 +128,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -77,7 +77,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -92,6 +94,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -67,7 +67,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -82,6 +84,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -113,6 +115,7 @@
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
@@ -68,7 +68,9 @@
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pygettingstarted.html">Getting Started</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pydetector.html">Detector</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyctb.html">Ctb</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyenums.html">Enums</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pypower.html">Power Supply</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyexamples.html">Examples</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pyPatternGenerator.html">PatternGenerator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="pattern.html">Pattern</a></li>
|
||||
@@ -83,6 +85,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="type_traits.html">TypeTraits</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="ToString.html">ToString</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Versioning.html">Package Versioning</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Testing.html">Testing</a></li>
|
||||
</ul>
|
||||
<p class="caption" role="heading"><span class="caption-text">Firmware</span></p>
|
||||
<ul>
|
||||
|
||||
Reference in New Issue
Block a user