source: sasview/_modules/sas/dataloader/readers/cansas_constants.html @ a462c6a

gh-pages
Last change on this file since a462c6a was a462c6a, checked in by ajj, 9 years ago

Rebuild to fix index and modules docs

  • Property mode set to 100644
File size: 107.3 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
4
5<html xmlns="http://www.w3.org/1999/xhtml">
6  <head>
7    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8   
9    <title>sas.dataloader.readers.cansas_constants &mdash; SasView 3.0.0 documentation</title>
10   
11    <link rel="stylesheet" href="../../../../_static/default.css" type="text/css" />
12    <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
13   
14    <script type="text/javascript">
15      var DOCUMENTATION_OPTIONS = {
16        URL_ROOT:    '../../../../',
17        VERSION:     '3.0.0',
18        COLLAPSE_INDEX: false,
19        FILE_SUFFIX: '.html',
20        HAS_SOURCE:  true
21      };
22    </script>
23    <script type="text/javascript" src="../../../../_static/jquery.js"></script>
24    <script type="text/javascript" src="../../../../_static/underscore.js"></script>
25    <script type="text/javascript" src="../../../../_static/doctools.js"></script>
26    <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
27    <link rel="top" title="SasView 3.0.0 documentation" href="../../../../index.html" />
28    <link rel="up" title="sas.dataloader.readers" href="../readers.html" /> 
29  </head>
30  <body>
31    <div class="related">
32      <h3>Navigation</h3>
33      <ul>
34        <li class="right" style="margin-right: 10px">
35          <a href="../../../../genindex.html" title="General Index"
36             accesskey="I">index</a></li>
37        <li class="right" >
38          <a href="../../../../py-modindex.html" title="Python Module Index"
39             >modules</a> |</li>
40        <li><a href="../../../../index.html">SasView 3.0.0 documentation</a> &raquo;</li>
41          <li><a href="../../../index.html" >Module code</a> &raquo;</li>
42          <li><a href="../readers.html" accesskey="U">sas.dataloader.readers</a> &raquo;</li> 
43      </ul>
44    </div> 
45
46    <div class="document">
47      <div class="documentwrapper">
48        <div class="bodywrapper">
49          <div class="body">
50           
51  <h1>Source code for sas.dataloader.readers.cansas_constants</h1><div class="highlight"><pre>
52<span class="sd">&quot;&quot;&quot;</span>
53<span class="sd">Information relating to the CanSAS data format. These constants are used in</span>
54<span class="sd">the cansas_reader.py file to read in any version of the cansas format.</span>
55<span class="sd">&quot;&quot;&quot;</span>
56<div class="viewcode-block" id="CansasConstants"><a class="viewcode-back" href="../../../../dev/api/sas.dataloader.readers.html#sas.dataloader.readers.cansas_constants.CansasConstants">[docs]</a><span class="k">class</span> <span class="nc">CansasConstants</span><span class="p">:</span>
57    <span class="sd">&quot;&quot;&quot;</span>
58<span class="sd">    The base class to define where all of the data is to be saved by</span>
59<span class="sd">    cansas_reader.py.</span>
60<span class="sd">    &quot;&quot;&quot;</span>
61   
62    <span class="n">names</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
63    <span class="n">format</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
64   
65   
66    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
67        <span class="bp">self</span><span class="o">.</span><span class="n">names</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">CANSAS_NS</span>
68        <span class="bp">self</span><span class="o">.</span><span class="n">format</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">CANSAS_FORMAT</span>
69   
70   
71<div class="viewcode-block" id="CansasConstants.iterate_namespace"><a class="viewcode-back" href="../../../../dev/api/sas.dataloader.readers.html#sas.dataloader.readers.cansas_constants.CansasConstants.iterate_namespace">[docs]</a>    <span class="k">def</span> <span class="nf">iterate_namespace</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">namespace</span><span class="p">):</span>
72        <span class="sd">&quot;&quot;&quot;</span>
73<span class="sd">        Method to iterate through a cansas constants tree based on a list of</span>
74<span class="sd">        names</span>
75<span class="sd">        </span>
76<span class="sd">        :param namespace: A list of names that match the tree structure of</span>
77<span class="sd">            cansas_constants</span>
78<span class="sd">        &quot;&quot;&quot;</span>
79        <span class="c"># The current level to look through in cansas_constants.</span>
80        <span class="n">return_me</span> <span class="o">=</span> <span class="n">CurrentLevel</span><span class="p">()</span>
81        <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">CANSAS_FORMAT</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&quot;SASentry&quot;</span><span class="p">)</span>
82        <span class="c"># Defaults for variable and datatype</span>
83        <span class="n">return_me</span><span class="o">.</span><span class="n">ns_variable</span> <span class="o">=</span> <span class="s">&quot;{0}.meta_data[</span><span class="se">\&quot;</span><span class="s">{2}</span><span class="se">\&quot;</span><span class="s">] = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span>
84        <span class="n">return_me</span><span class="o">.</span><span class="n">ns_datatype</span> <span class="o">=</span> <span class="s">&quot;content&quot;</span>
85        <span class="n">return_me</span><span class="o">.</span><span class="n">ns_optional</span> <span class="o">=</span> <span class="bp">True</span>
86        <span class="k">for</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">namespace</span><span class="p">:</span>
87            <span class="k">try</span><span class="p">:</span>
88                <span class="k">if</span> <span class="n">name</span> <span class="o">!=</span> <span class="s">&quot;SASentry&quot;</span><span class="p">:</span>
89                    <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span> <span class="o">=</span> \
90                        <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&quot;children&quot;</span><span class="p">)</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">)</span>
91                    <span class="k">if</span> <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span> <span class="o">==</span> <span class="s">&quot;&quot;</span><span class="p">:</span>
92                        <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span> <span class="o">=</span> \
93                                <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&quot;&lt;any&gt;&quot;</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">)</span>
94                    <span class="n">cl_variable</span> <span class="o">=</span> <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&quot;variable&quot;</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">)</span>
95                    <span class="n">cl_datatype</span> <span class="o">=</span> <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&quot;storeas&quot;</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">)</span>
96                    <span class="n">cl_units_optional</span> <span class="o">=</span> \
97                             <span class="n">return_me</span><span class="o">.</span><span class="n">current_level</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&quot;units_required&quot;</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">)</span>
98                    <span class="c"># Where are how to store the variable for the given</span>
99                    <span class="c"># namespace CANSAS_CONSTANTS tree is hierarchical, so </span>
100                    <span class="c"># is no value, inherit</span>
101                    <span class="n">return_me</span><span class="o">.</span><span class="n">ns_variable</span> <span class="o">=</span> <span class="n">cl_variable</span> <span class="k">if</span> <span class="n">cl_variable</span> <span class="o">!=</span> <span class="s">&quot;&quot;</span> \
102                        <span class="k">else</span> <span class="n">return_me</span><span class="o">.</span><span class="n">ns_variable</span>
103                    <span class="n">return_me</span><span class="o">.</span><span class="n">ns_datatype</span> <span class="o">=</span> <span class="n">cl_datatype</span> <span class="k">if</span> <span class="n">cl_datatype</span> <span class="o">!=</span> <span class="s">&quot;&quot;</span> \
104                        <span class="k">else</span> <span class="n">return_me</span><span class="o">.</span><span class="n">ns_datatype</span>
105                    <span class="n">return_me</span><span class="o">.</span><span class="n">ns_optional</span> <span class="o">=</span> <span class="n">cl_units_optional</span> <span class="k">if</span> \
106                        <span class="n">cl_units_optional</span> <span class="o">!=</span> <span class="n">return_me</span><span class="o">.</span><span class="n">ns_optional</span> \
107                                        <span class="k">else</span> <span class="n">return_me</span><span class="o">.</span><span class="n">ns_optional</span>
108            <span class="k">except</span> <span class="ne">AttributeError</span><span class="p">:</span>
109                <span class="n">return_me</span><span class="o">.</span><span class="n">ns_variable</span> <span class="o">=</span> <span class="s">&quot;{0}.meta_data[</span><span class="se">\&quot;</span><span class="s">{2}</span><span class="se">\&quot;</span><span class="s">] = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span>
110                <span class="n">return_me</span><span class="o">.</span><span class="n">ns_datatype</span> <span class="o">=</span> <span class="s">&quot;content&quot;</span>
111                <span class="n">return_me</span><span class="o">.</span><span class="n">ns_optional</span> <span class="o">=</span> <span class="bp">True</span>
112        <span class="k">return</span> <span class="n">return_me</span>   
113   
114    </div>
115<div class="viewcode-block" id="CansasConstants.get_namespace_map"><a class="viewcode-back" href="../../../../dev/api/sas.dataloader.readers.html#sas.dataloader.readers.cansas_constants.CansasConstants.get_namespace_map">[docs]</a>    <span class="k">def</span> <span class="nf">get_namespace_map</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
116        <span class="sd">&quot;&quot;&quot;</span>
117<span class="sd">        Helper method to get the names namespace list</span>
118<span class="sd">        &quot;&quot;&quot;</span>
119        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">names</span>
120   
121   
122    <span class="c"># CANSAS_NS holds the base namespace and default schema file information</span></div>
123    <span class="n">CANSAS_NS</span> <span class="o">=</span> <span class="p">{</span>
124                 <span class="s">&quot;1.0&quot;</span> <span class="p">:</span> 
125                 <span class="p">{</span>
126                  <span class="s">&quot;ns&quot;</span> <span class="p">:</span> <span class="s">&quot;cansas1d/1.0&quot;</span><span class="p">,</span> 
127                  <span class="s">&quot;schema&quot;</span> <span class="p">:</span> <span class="s">&quot;cansas1d_v1_0.xsd&quot;</span>
128                  <span class="p">},</span>
129                 <span class="s">&quot;1.1&quot;</span> <span class="p">:</span> 
130                 <span class="p">{</span>
131                  <span class="s">&quot;ns&quot;</span> <span class="p">:</span> <span class="s">&quot;urn:cansas1d:1.1&quot;</span><span class="p">,</span> 
132                  <span class="s">&quot;schema&quot;</span> <span class="p">:</span> <span class="s">&quot;cansas1d_v1_1.xsd&quot;</span>
133                  <span class="p">}</span>
134                 <span class="p">}</span>
135   
136   
137    <span class="c"># The constants below hold information on where to store the CanSAS data</span>
138    <span class="c"># when loaded in using sasview</span>
139    <span class="n">META_DATA</span> <span class="o">=</span> <span class="s">&quot;{0}.meta_data[</span><span class="se">\&quot;</span><span class="s">{2}</span><span class="se">\&quot;</span><span class="s">] = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span>
140    <span class="n">ANY</span> <span class="o">=</span> <span class="p">{</span>
141           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.meta_data[</span><span class="se">\&quot;</span><span class="s">{2}</span><span class="se">\&quot;</span><span class="s">] = </span><span class="se">\&#39;</span><span class="s">{1}</span><span class="se">\&#39;</span><span class="s">&quot;</span><span class="p">,</span>
142           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
143           <span class="p">}</span>
144    <span class="n">TITLE</span> <span class="o">=</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.title = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}</span>
145    <span class="n">SASNOTE</span> <span class="o">=</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.notes.append(</span><span class="se">\&#39;</span><span class="s">{1}</span><span class="se">\&#39;</span><span class="s">)&quot;</span><span class="p">}</span>
146    <span class="n">SASPROCESS_TERM</span> <span class="o">=</span> <span class="p">{</span>
147                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
148                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
149                       <span class="p">{</span>
150                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">},</span>
151                        <span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">}</span>
152                        <span class="p">}</span>
153                       <span class="p">}</span>
154    <span class="n">SASPROCESS_SASPROCESSNOTE</span> <span class="o">=</span> <span class="p">{</span>
155                                 <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
156                                 <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span><span class="p">}</span>
157                                 <span class="p">}</span>
158    <span class="n">SASPROCESS</span> <span class="o">=</span> <span class="p">{</span>
159                  <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
160                  <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
161                                <span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.name = </span><span class="se">\&#39;</span><span class="s">{1}</span><span class="se">\&#39;</span><span class="s">&quot;</span><span class="p">},</span>
162                               <span class="s">&quot;date&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.date = </span><span class="se">\&#39;</span><span class="s">{1}</span><span class="se">\&#39;</span><span class="s">&quot;</span><span class="p">},</span>
163                               <span class="s">&quot;description&quot;</span> <span class="p">:</span> 
164                               <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.description = </span><span class="se">\&#39;</span><span class="s">{1}</span><span class="se">\&#39;</span><span class="s">&quot;</span><span class="p">},</span>
165                               <span class="s">&quot;term&quot;</span> <span class="p">:</span> <span class="n">SASPROCESS_TERM</span><span class="p">,</span>
166                               <span class="s">&quot;SASprocessnote&quot;</span> <span class="p">:</span> <span class="n">SASPROCESS_SASPROCESSNOTE</span><span class="p">,</span>
167                               <span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span>
168                               <span class="p">},</span>
169                 <span class="p">}</span>
170    <span class="n">RUN</span> <span class="o">=</span> <span class="p">{</span>
171           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.run.append(</span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">)&quot;</span><span class="p">,</span>
172           <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
173           <span class="p">{</span><span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.run_name[node_value] = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}}</span>
174           <span class="p">}</span>
175    <span class="n">SASDATA_IDATA_Q</span> <span class="o">=</span> <span class="p">{</span>
176                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.x = numpy.append({0}.x, {1})&quot;</span><span class="p">,</span>
177                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;x_unit&quot;</span><span class="p">,</span>
178                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
179                       <span class="p">{</span>
180                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
181                        <span class="p">{</span>
182                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}._xunit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
183                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
184                         <span class="p">}</span>
185                        <span class="p">},</span>
186                       <span class="p">}</span>
187    <span class="n">SASDATA_IDATA_I</span> <span class="o">=</span> <span class="p">{</span>
188                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.y = numpy.append({0}.y, {1})&quot;</span><span class="p">,</span>
189                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;y_unit&quot;</span><span class="p">,</span>
190                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
191                       <span class="p">{</span>
192                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
193                        <span class="p">{</span>
194                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}._yunit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
195                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
196                         <span class="p">}</span>
197                        <span class="p">},</span>
198                       <span class="p">}</span>
199    <span class="n">SASDATA_IDATA_IDEV</span> <span class="o">=</span> <span class="p">{</span>
200                          <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.dy = numpy.append({0}.dy, {1})&quot;</span><span class="p">,</span>
201                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;y_unit&quot;</span><span class="p">,</span>
202                          <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
203                          <span class="p">{</span>
204                           <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
205                           <span class="p">{</span>
206                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
207                            <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
208                            <span class="p">}</span>
209                           <span class="p">},</span>
210                          <span class="p">}</span>
211    <span class="n">SASDATA_IDATA_QDEV</span> <span class="o">=</span> <span class="p">{</span>
212                          <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.dx = numpy.append({0}.dx, {1})&quot;</span><span class="p">,</span>
213                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;x_unit&quot;</span><span class="p">,</span>
214                          <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
215                          <span class="p">{</span>
216                           <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
217                           <span class="p">{</span>
218                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
219                            <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
220                            <span class="p">}</span>
221                           <span class="p">},</span>
222                          <span class="p">}</span>
223    <span class="n">SASDATA_IDATA_DQL</span> <span class="o">=</span> <span class="p">{</span>
224                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.dxl = numpy.append({0}.dxl, {1})&quot;</span><span class="p">,</span>
225                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;x_unit&quot;</span><span class="p">,</span>
226                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
227                         <span class="p">{</span>
228                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
229                          <span class="p">{</span>
230                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
231                           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
232                           <span class="p">}</span>
233                          <span class="p">},</span>
234                         <span class="p">}</span>
235    <span class="n">SASDATA_IDATA_DQW</span> <span class="o">=</span> <span class="p">{</span>
236                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.dxw = numpy.append({0}.dxw, {1})&quot;</span><span class="p">,</span>
237                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;x_unit&quot;</span><span class="p">,</span>
238                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
239                         <span class="p">{</span>
240                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
241                          <span class="p">{</span>
242                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
243                           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
244                           <span class="p">}</span>
245                          <span class="p">},</span>
246                         <span class="p">}</span>
247    <span class="n">SASDATA_IDATA_QMEAN</span> <span class="o">=</span> <span class="p">{</span>
248                           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
249                           <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;x_unit&quot;</span><span class="p">,</span>
250                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
251                           <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">}},</span>
252                           <span class="p">}</span>
253    <span class="n">SASDATA_IDATA_SHADOWFACTOR</span> <span class="o">=</span> <span class="p">{</span>
254                                  <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
255                                  <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
256                                  <span class="p">}</span>
257    <span class="n">SASDATA_IDATA</span> <span class="o">=</span> <span class="p">{</span>
258                     <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
259                     <span class="s">&quot;units_optional&quot;</span> <span class="p">:</span> <span class="bp">False</span><span class="p">,</span>
260                     <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
261                     <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="p">{</span>
262                                     <span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span>
263                                               <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
264                                               <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
265                                               <span class="p">},</span>
266                                     <span class="s">&quot;timestamp&quot;</span> <span class="p">:</span> <span class="p">{</span>
267                                                    <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,</span>
268                                                    <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;timestamp&quot;</span><span class="p">,</span>
269                                                    <span class="p">}</span>
270                                     <span class="p">},</span>
271                     <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
272                                   <span class="s">&quot;Q&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_Q</span><span class="p">,</span>
273                                   <span class="s">&quot;I&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_I</span><span class="p">,</span>
274                                   <span class="s">&quot;Idev&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_IDEV</span><span class="p">,</span>
275                                   <span class="s">&quot;Qdev&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_QDEV</span><span class="p">,</span>
276                                   <span class="s">&quot;dQw&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_DQW</span><span class="p">,</span>
277                                   <span class="s">&quot;dQl&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_DQL</span><span class="p">,</span>
278                                   <span class="s">&quot;Qmean&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_QMEAN</span><span class="p">,</span>
279                                   <span class="s">&quot;Shadowfactor&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA_SHADOWFACTOR</span><span class="p">,</span>
280                                   <span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span>
281                                   <span class="p">}</span>
282                   <span class="p">}</span>
283    <span class="n">SASDATA</span> <span class="o">=</span> <span class="p">{</span>
284               <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="n">META_DATA</span><span class="p">,}},</span>
285               <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
286               <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
287                             <span class="s">&quot;Idata&quot;</span> <span class="p">:</span> <span class="n">SASDATA_IDATA</span><span class="p">,</span>
288                             <span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span>
289                             <span class="p">}</span>
290               <span class="p">}</span>
291    <span class="n">SASTRANSSPEC_TDATA_LAMDBA</span> <span class="o">=</span> <span class="p">{</span>
292                                 <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.wavelength.append({1})&quot;</span><span class="p">,</span>
293                                 <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;wavelength_unit&quot;</span><span class="p">,</span>
294                                 <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
295                                 <span class="p">{</span>
296                                  <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
297                                  <span class="p">{</span>
298                                   <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
299                                    <span class="s">&quot;{0}.wavelength_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
300                                   <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
301                                   <span class="p">}</span>
302                                  <span class="p">}</span>
303                                 <span class="p">}</span>
304    <span class="n">SASTRANSSPEC_TDATA_T</span> <span class="o">=</span> <span class="p">{</span>
305                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.transmission.append({1})&quot;</span><span class="p">,</span>
306                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;transmission_unit&quot;</span><span class="p">,</span>
307                            <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
308                            <span class="p">{</span>
309                             <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
310                             <span class="p">{</span>
311                              <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.transmission_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
312                              <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
313                              <span class="p">}</span>
314                             <span class="p">}</span>
315                            <span class="p">}</span>
316    <span class="n">SASTRANSSPEC_TDATA_TDEV</span> <span class="o">=</span> <span class="p">{</span>
317                               <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
318                                    <span class="s">&quot;{0}.transmission_deviation.append({1})&quot;</span><span class="p">,</span>
319                               <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;transmission_deviation_unit&quot;</span><span class="p">,</span>
320                               <span class="s">&quot;attributes&quot;</span> <span class="p">:</span>
321                               <span class="p">{</span>
322                                <span class="s">&quot;unit&quot;</span> <span class="p">:</span>
323                                <span class="p">{</span>
324                                 <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
325                                    <span class="s">&quot;{0}.transmission_deviation_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
326                                 <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
327                                 <span class="p">}</span>
328                                <span class="p">}</span>
329                               <span class="p">}</span>
330    <span class="n">SASTRANSSPEC_TDATA</span> <span class="o">=</span> <span class="p">{</span>
331                          <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
332                          <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
333                          <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
334                                        <span class="s">&quot;Lambda&quot;</span> <span class="p">:</span> <span class="n">SASTRANSSPEC_TDATA_LAMDBA</span><span class="p">,</span>
335                                        <span class="s">&quot;T&quot;</span> <span class="p">:</span> <span class="n">SASTRANSSPEC_TDATA_T</span><span class="p">,</span>
336                                        <span class="s">&quot;Tdev&quot;</span> <span class="p">:</span> <span class="n">SASTRANSSPEC_TDATA_TDEV</span><span class="p">,</span>
337                                        <span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span><span class="p">,</span>
338                                        <span class="p">}</span>
339                          <span class="p">}</span>
340    <span class="n">SASTRANSSPEC</span> <span class="o">=</span> <span class="p">{</span>
341                    <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
342                    <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
343                                  <span class="s">&quot;Tdata&quot;</span> <span class="p">:</span> <span class="n">SASTRANSSPEC_TDATA</span><span class="p">,</span>
344                                  <span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span><span class="p">,</span>
345                                  <span class="p">},</span>
346                    <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
347                    <span class="p">{</span>
348                     <span class="s">&quot;name&quot;</span> <span class="p">:</span>
349                     <span class="p">{</span>
350                      <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},</span>
351                      <span class="s">&quot;timestamp&quot;</span> <span class="p">:</span> 
352                      <span class="p">{</span>
353                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.timestamp = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span>
354                       <span class="p">},</span>
355                     <span class="p">}</span>
356                    <span class="p">}</span>
357    <span class="n">SASSAMPLE_THICK</span> <span class="o">=</span> <span class="p">{</span>
358                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.thickness = {1}&quot;</span><span class="p">,</span>
359                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.thickness_unit&quot;</span><span class="p">,</span>
360                       <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
361                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
362                       <span class="p">{</span>
363                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
364                        <span class="p">{</span>
365                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.thickness_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
366                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
367                         <span class="p">}</span>
368                        <span class="p">},</span>
369                       <span class="p">}</span>
370    <span class="n">SASSAMPLE_TRANS</span> <span class="o">=</span> <span class="p">{</span>
371                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.transmission = {1}&quot;</span><span class="p">,</span>
372                       <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
373                       <span class="p">}</span>
374    <span class="n">SASSAMPLE_TEMP</span> <span class="o">=</span> <span class="p">{</span>
375                      <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.temperature = {1}&quot;</span><span class="p">,</span>
376                      <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.temperature_unit&quot;</span><span class="p">,</span>
377                      <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
378                      <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
379                      <span class="p">{</span>
380                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
381                       <span class="p">{</span>
382                        <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.temperature_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
383                        <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
384                        <span class="p">}</span>
385                       <span class="p">},</span>
386                      <span class="p">}</span>
387    <span class="n">SASSAMPLE_POS_ATTR</span> <span class="o">=</span> <span class="p">{</span>
388                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span>
389                                     <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
390                                        <span class="s">&quot;{0}.sample.position_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
391                                     <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
392                                     <span class="p">}</span>
393                          <span class="p">}</span>
394    <span class="n">SASSAMPLE_POS_X</span> <span class="o">=</span> <span class="p">{</span>
395                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.position.x = {1}&quot;</span><span class="p">,</span>
396                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.position_unit&quot;</span><span class="p">,</span>
397                       <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
398                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_POS_ATTR</span>
399                       <span class="p">}</span>
400    <span class="n">SASSAMPLE_POS_Y</span> <span class="o">=</span> <span class="p">{</span>
401                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.position.y = {1}&quot;</span><span class="p">,</span>
402                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.position_unit&quot;</span><span class="p">,</span>
403                       <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
404                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_POS_ATTR</span>
405                       <span class="p">}</span>
406    <span class="n">SASSAMPLE_POS_Z</span> <span class="o">=</span> <span class="p">{</span>
407                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.position.z = {1}&quot;</span><span class="p">,</span>
408                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.position_unit&quot;</span><span class="p">,</span>
409                       <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
410                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_POS_ATTR</span>
411                       <span class="p">}</span>
412    <span class="n">SASSAMPLE_POS</span> <span class="o">=</span> <span class="p">{</span>
413                     <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
414                                   <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
415                                   <span class="s">&quot;x&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_POS_X</span><span class="p">,</span>
416                                   <span class="s">&quot;y&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_POS_Y</span><span class="p">,</span>
417                                   <span class="s">&quot;z&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_POS_Z</span><span class="p">,</span>
418                                   <span class="p">},</span>
419                     <span class="p">}</span>
420    <span class="n">SASSAMPLE_ORIENT_ATTR</span> <span class="o">=</span> <span class="p">{</span>
421                             <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
422                             <span class="p">{</span>
423                              <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
424                                    <span class="s">&quot;{0}.sample.orientation_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
425                              <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
426                              <span class="p">}</span>
427                             <span class="p">}</span>
428    <span class="n">SASSAMPLE_ORIENT_ROLL</span> <span class="o">=</span> <span class="p">{</span>
429                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.orientation.x = {1}&quot;</span><span class="p">,</span>
430                             <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.orientation_unit&quot;</span><span class="p">,</span>
431                             <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
432                             <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_ORIENT_ATTR</span>
433                             <span class="p">}</span>
434    <span class="n">SASSAMPLE_ORIENT_PITCH</span> <span class="o">=</span> <span class="p">{</span>
435                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.orientation.y = {1}&quot;</span><span class="p">,</span>
436                             <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.orientation_unit&quot;</span><span class="p">,</span>
437                             <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
438                             <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_ORIENT_ATTR</span>
439                             <span class="p">}</span>
440    <span class="n">SASSAMPLE_ORIENT_YAW</span> <span class="o">=</span> <span class="p">{</span>
441                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.orientation.z = {1}&quot;</span><span class="p">,</span>
442                             <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;sample.orientation_unit&quot;</span><span class="p">,</span>
443                             <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
444                             <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_ORIENT_ATTR</span>
445                             <span class="p">}</span>
446    <span class="n">SASSAMPLE_ORIENT</span> <span class="o">=</span> <span class="p">{</span>
447                        <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
448                        <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
449                                      <span class="s">&quot;roll&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_ORIENT_ROLL</span><span class="p">,</span>
450                                      <span class="s">&quot;pitch&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_ORIENT_PITCH</span><span class="p">,</span>
451                                      <span class="s">&quot;yaw&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_ORIENT_YAW</span><span class="p">,</span>
452                                      <span class="p">},</span>
453                        <span class="p">}</span>
454    <span class="n">SASSAMPLE</span> <span class="o">=</span> <span class="p">{</span>
455                 <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
456                    <span class="p">{</span><span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},},</span>
457                 <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
458                 <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
459                               <span class="s">&quot;ID&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.sample.ID = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},</span>
460                               <span class="s">&quot;thickness&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_THICK</span><span class="p">,</span>
461                               <span class="s">&quot;transmission&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_TRANS</span><span class="p">,</span> 
462                               <span class="s">&quot;temperature&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_TEMP</span><span class="p">,</span> 
463                               <span class="s">&quot;position&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_POS</span><span class="p">,</span>
464                               <span class="s">&quot;orientation&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE_ORIENT</span><span class="p">,</span>
465                               <span class="s">&quot;details&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
466                                        <span class="s">&quot;{0}.sample.details.append(</span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">)&quot;</span><span class="p">},</span>
467                               <span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span>
468                               <span class="p">},</span>
469                 <span class="p">}</span>
470    <span class="n">SASINSTR_SRC_BEAMSIZE_ATTR</span> <span class="o">=</span> <span class="p">{</span>
471                                  <span class="s">&quot;unit&quot;</span> <span class="p">:</span> \
472                                        <span class="s">&quot;{0}.source.beam_size_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
473                                  <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
474                                  <span class="p">}</span>
475    <span class="n">SASINSTR_SRC_BEAMSIZE_X</span> <span class="o">=</span> <span class="p">{</span>
476                               <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.beam_size.x = {1}&quot;</span><span class="p">,</span>
477                               <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;source.beam_size_unit&quot;</span><span class="p">,</span>
478                               <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
479                               <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_BEAMSIZE_ATTR</span>
480                               <span class="p">}</span>
481    <span class="n">SASINSTR_SRC_BEAMSIZE_Y</span> <span class="o">=</span> <span class="p">{</span>
482                               <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.beam_size.y = {1}&quot;</span><span class="p">,</span>
483                               <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;source.beam_size_unit&quot;</span><span class="p">,</span>
484                               <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
485                               <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_BEAMSIZE_ATTR</span>
486                               <span class="p">}</span>
487    <span class="n">SASINSTR_SRC_BEAMSIZE_Z</span> <span class="o">=</span> <span class="p">{</span>
488                               <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.beam_size.z = {1}&quot;</span><span class="p">,</span>
489                               <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;source.beam_size_unit&quot;</span><span class="p">,</span>
490                               <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
491                               <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_BEAMSIZE_ATTR</span>
492                               <span class="p">}</span>
493    <span class="n">SASINSTR_SRC_BEAMSIZE</span> <span class="o">=</span> <span class="p">{</span>
494                             <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
495                                <span class="p">{</span><span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
496                                    <span class="s">&quot;{0}.source.beam_size_name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}},</span>
497                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
498                             <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
499                                           <span class="s">&quot;x&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_BEAMSIZE_X</span><span class="p">,</span>
500                                           <span class="s">&quot;y&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_BEAMSIZE_Y</span><span class="p">,</span>
501                                           <span class="s">&quot;z&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_BEAMSIZE_Z</span><span class="p">,</span>
502                                           <span class="p">}</span>
503                             <span class="p">}</span>
504    <span class="n">SASINSTR_SRC_WL</span> <span class="o">=</span> <span class="p">{</span>
505                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.wavelength = {1}&quot;</span><span class="p">,</span>
506                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;source.wavelength_unit&quot;</span><span class="p">,</span>
507                       <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
508                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
509                       <span class="p">{</span>
510                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
511                        <span class="p">{</span>
512                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.wavelength_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
513                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
514                         <span class="p">},</span>
515                        <span class="p">}</span>
516                       <span class="p">}</span>
517    <span class="n">SASINSTR_SRC_WL_MIN</span> <span class="o">=</span> <span class="p">{</span>
518                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.wavelength_min = {1}&quot;</span><span class="p">,</span>
519                           <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;source.wavelength_min_unit&quot;</span><span class="p">,</span>
520                           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
521                           <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
522                           <span class="p">{</span>
523                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
524                            <span class="p">{</span>
525                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
526                                <span class="s">&quot;{0}.source.wavelength_min_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span> 
527                             <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
528                             <span class="p">},</span>
529                            <span class="p">}</span>
530                           <span class="p">}</span>
531    <span class="n">SASINSTR_SRC_WL_MAX</span> <span class="o">=</span> <span class="p">{</span>
532                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.wavelength_max = {1}&quot;</span><span class="p">,</span>
533                           <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;source.wavelength_max_unit&quot;</span><span class="p">,</span>
534                           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
535                           <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
536                           <span class="p">{</span>
537                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
538                            <span class="p">{</span>
539                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
540                                <span class="s">&quot;{0}.source.wavelength_max_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span> 
541                             <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
542                             <span class="p">},</span>
543                            <span class="p">}</span>
544                           <span class="p">}</span>
545    <span class="n">SASINSTR_SRC_WL_SPR</span> <span class="o">=</span> <span class="p">{</span>
546                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.source.wavelength_spread = {1}&quot;</span><span class="p">,</span>
547                           <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;source.wavelength_spread_unit&quot;</span><span class="p">,</span>
548                           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
549                           <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
550                           <span class="p">{</span>
551                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
552                            <span class="p">{</span>
553                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
554                                <span class="s">&quot;{0}.source.wavelength_spread_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span> 
555                             <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
556                             <span class="p">},</span>
557                            <span class="p">}</span>
558                           <span class="p">}</span>
559    <span class="n">SASINSTR_SRC</span> <span class="o">=</span> <span class="p">{</span>
560                    <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
561                                              <span class="s">&quot;{0}.source.name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}},</span>
562                    <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
563                    <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
564                                  <span class="s">&quot;radiation&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
565                                            <span class="s">&quot;{0}.source.radiation = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},</span>
566                                  <span class="s">&quot;beam_size&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_BEAMSIZE</span><span class="p">,</span>
567                                  <span class="s">&quot;beam_shape&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
568                                            <span class="s">&quot;{0}.source.beam_shape = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},</span>
569                                  <span class="s">&quot;wavelength&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_WL</span><span class="p">,</span>
570                                  <span class="s">&quot;wavelength_min&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_WL_MIN</span><span class="p">,</span>
571                                  <span class="s">&quot;wavelength_max&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_WL_MAX</span><span class="p">,</span>
572                                  <span class="s">&quot;wavelength_spread&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC_WL_SPR</span><span class="p">,</span>
573                                  <span class="p">},</span>
574                    <span class="p">}</span>
575    <span class="n">SASINSTR_COLL_APER_ATTR</span> <span class="o">=</span> <span class="p">{</span>
576                               <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span>
577                                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.size_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
578                                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
579                                         <span class="p">},</span>                                   
580                               <span class="p">}</span>
581    <span class="n">SASINSTR_COLL_APER_X</span> <span class="o">=</span> <span class="p">{</span>
582                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.size.x = {1}&quot;</span><span class="p">,</span>
583                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;size_unit&quot;</span><span class="p">,</span>
584                            <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
585                            <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_ATTR</span>
586                            <span class="p">}</span>
587    <span class="n">SASINSTR_COLL_APER_Y</span> <span class="o">=</span> <span class="p">{</span>
588                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.size.y = {1}&quot;</span><span class="p">,</span>
589                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;size_unit&quot;</span><span class="p">,</span>
590                            <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
591                            <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_ATTR</span>
592                            <span class="p">}</span>
593    <span class="n">SASINSTR_COLL_APER_Z</span> <span class="o">=</span> <span class="p">{</span>
594                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.size.z = {1}&quot;</span><span class="p">,</span>
595                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;size_unit&quot;</span><span class="p">,</span>
596                            <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
597                            <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_ATTR</span>
598                            <span class="p">}</span>
599    <span class="n">SASINSTR_COLL_APER_SIZE</span> <span class="o">=</span> <span class="p">{</span>
600                               <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
601                               <span class="p">{</span><span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
602                                            <span class="s">&quot;{0}.size_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}},</span>
603                               <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
604                                             <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
605                                            <span class="s">&quot;x&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_X</span><span class="p">,</span>
606                                            <span class="s">&quot;y&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_Y</span><span class="p">,</span>
607                                            <span class="s">&quot;z&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_Z</span><span class="p">,</span>
608                                            <span class="p">}</span>
609                               <span class="p">}</span>
610    <span class="n">SASINSTR_COLL_APER_DIST</span> <span class="o">=</span> <span class="p">{</span>
611                               <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
612                               <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
613                               <span class="p">{</span>
614                                <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
615                                <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
616                                            <span class="s">&quot;{0}.distance_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}</span>
617                                <span class="p">},</span>
618                               <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.distance = {1}&quot;</span><span class="p">,</span>
619                               <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;distance_unit&quot;</span><span class="p">,</span>
620                               <span class="p">}</span>
621    <span class="n">SASINSTR_COLL_APER</span> <span class="o">=</span> <span class="p">{</span>
622                          <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
623                          <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="p">{</span>
624                                          <span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
625                                                    <span class="s">&quot;{0}.name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},</span>
626                                          <span class="s">&quot;type&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
627                                                    <span class="s">&quot;{0}.type = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},</span>
628                                          <span class="p">},</span>
629                          <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
630                                        <span class="s">&quot;size&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_SIZE</span><span class="p">,</span>
631                                        <span class="s">&quot;distance&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER_DIST</span>
632                                        <span class="p">}</span>
633                          <span class="p">}</span>
634    <span class="n">SASINSTR_COLL</span> <span class="o">=</span> <span class="p">{</span>
635                     <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
636                     <span class="p">{</span><span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}},</span>
637                     <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
638                     <span class="s">&quot;children&quot;</span> <span class="p">:</span> 
639                     <span class="p">{</span>
640                      <span class="s">&quot;length&quot;</span> <span class="p">:</span> 
641                      <span class="p">{</span>
642                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.length = {1}&quot;</span><span class="p">,</span>
643                       <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;length_unit&quot;</span><span class="p">,</span>
644                       <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
645                       <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
646                       <span class="p">{</span>
647                        <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
648                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.length_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}</span>
649                        <span class="p">},</span>
650                       <span class="p">},</span>
651                      <span class="s">&quot;aperture&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL_APER</span><span class="p">,</span>
652                      <span class="p">},</span>
653                     <span class="p">}</span>
654    <span class="n">SASINSTR_DET_SDD</span> <span class="o">=</span> <span class="p">{</span>
655                        <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.distance = {1}&quot;</span><span class="p">,</span>
656                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;distance_unit&quot;</span><span class="p">,</span>
657                        <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
658                        <span class="p">{</span>
659                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
660                         <span class="p">{</span>
661                          <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.distance_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
662                          <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
663                          <span class="p">}</span>
664                         <span class="p">},</span>
665                        <span class="p">}</span>
666    <span class="n">SASINSTR_DET_OFF_ATTR</span> <span class="o">=</span> <span class="p">{</span>
667                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="p">{</span>
668                                      <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.offset_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
669                                      <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
670                                      <span class="p">},</span>
671                            <span class="p">}</span>
672    <span class="n">SASINSTR_DET_OFF_X</span> <span class="o">=</span> <span class="p">{</span>
673                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.offset.x = {1}&quot;</span><span class="p">,</span>
674                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;offset_unit&quot;</span><span class="p">,</span>
675                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OFF_ATTR</span>
676                         <span class="p">}</span>
677    <span class="n">SASINSTR_DET_OFF_Y</span> <span class="o">=</span> <span class="p">{</span>
678                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.offset.y = {1}&quot;</span><span class="p">,</span>
679                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;offset_unit&quot;</span><span class="p">,</span>
680                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OFF_ATTR</span>
681                         <span class="p">}</span>
682    <span class="n">SASINSTR_DET_OFF_Z</span> <span class="o">=</span> <span class="p">{</span>
683                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.offset.z = {1}&quot;</span><span class="p">,</span>
684                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;offset_unit&quot;</span><span class="p">,</span>
685                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OFF_ATTR</span>
686                         <span class="p">}</span>
687    <span class="n">SASINSTR_DET_OFF</span> <span class="o">=</span> <span class="p">{</span>
688                        <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
689                        <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
690                                      <span class="s">&quot;x&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OFF_X</span><span class="p">,</span>
691                                      <span class="s">&quot;y&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OFF_Y</span><span class="p">,</span>
692                                      <span class="s">&quot;z&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OFF_Z</span><span class="p">,</span>
693                                      <span class="p">}</span>
694                        <span class="p">}</span>
695    <span class="n">SASINSTR_DET_OR_ATTR</span> <span class="o">=</span> <span class="p">{</span>
696                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.orientation_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
697                            <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
698                            <span class="p">}</span>
699    <span class="n">SASINSTR_DET_OR_ROLL</span> <span class="o">=</span> <span class="p">{</span>
700                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.orientation.x = {1}&quot;</span><span class="p">,</span>
701                            <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;orientation_unit&quot;</span><span class="p">,</span>
702                            <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OR_ATTR</span>
703                            <span class="p">}</span>
704    <span class="n">SASINSTR_DET_OR_PITCH</span> <span class="o">=</span> <span class="p">{</span>
705                             <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.orientation.y = {1}&quot;</span><span class="p">,</span>
706                             <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;orientation_unit&quot;</span><span class="p">,</span>
707                             <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OR_ATTR</span>
708                             <span class="p">}</span>
709    <span class="n">SASINSTR_DET_OR_YAW</span> <span class="o">=</span> <span class="p">{</span>
710                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.orientation.z = {1}&quot;</span><span class="p">,</span>
711                           <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;orientation_unit&quot;</span><span class="p">,</span>
712                           <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OR_ATTR</span>
713                           <span class="p">}</span>
714    <span class="n">SASINSTR_DET_OR</span> <span class="o">=</span> <span class="p">{</span>
715                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
716                       <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
717                                     <span class="s">&quot;roll&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OR_ROLL</span><span class="p">,</span>
718                                     <span class="s">&quot;pitch&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OR_PITCH</span><span class="p">,</span>
719                                     <span class="s">&quot;yaw&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OR_YAW</span><span class="p">,</span>
720                                     <span class="p">}</span>
721                       <span class="p">}</span>
722    <span class="n">SASINSTR_DET_BC_X</span> <span class="o">=</span> <span class="p">{</span>
723                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.beam_center.x = {1}&quot;</span><span class="p">,</span>
724                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;beam_center_unit&quot;</span><span class="p">,</span>
725                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
726                         <span class="p">{</span>
727                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.beam_center_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
728                          <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
729                          <span class="p">}</span>
730                         <span class="p">}</span>
731    <span class="n">SASINSTR_DET_BC_Y</span> <span class="o">=</span> <span class="p">{</span>
732                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.beam_center.y = {1}&quot;</span><span class="p">,</span>
733                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;beam_center_unit&quot;</span><span class="p">,</span>
734                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
735                         <span class="p">{</span>
736                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.beam_center_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
737                          <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
738                          <span class="p">}</span>
739                         <span class="p">}</span>
740    <span class="n">SASINSTR_DET_BC_Z</span> <span class="o">=</span> <span class="p">{</span>
741                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.beam_center.z = {1}&quot;</span><span class="p">,</span>
742                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;beam_center_unit&quot;</span><span class="p">,</span>
743                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
744                         <span class="p">{</span>
745                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.beam_center_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
746                          <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
747                          <span class="p">}</span>
748                         <span class="p">}</span>
749    <span class="n">SASINSTR_DET_BC</span> <span class="o">=</span> <span class="p">{</span>
750                       <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
751                       <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
752                                    <span class="s">&quot;x&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_BC_X</span><span class="p">,</span>
753                                    <span class="s">&quot;y&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_BC_Y</span><span class="p">,</span>
754                                    <span class="s">&quot;z&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_BC_Z</span><span class="p">,</span>
755                                    <span class="p">}</span>
756                      <span class="p">}</span>
757    <span class="n">SASINSTR_DET_PIXEL_X</span> <span class="o">=</span> <span class="p">{</span>
758                        <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.pixel_size.x = {1}&quot;</span><span class="p">,</span>
759                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;pixel_size_unit&quot;</span><span class="p">,</span>
760                        <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
761                        <span class="p">{</span>
762                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.pixel_size_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
763                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
764                         <span class="p">}</span>
765                        <span class="p">}</span>
766    <span class="n">SASINSTR_DET_PIXEL_Y</span> <span class="o">=</span> <span class="p">{</span>
767                        <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.pixel_size.y = {1}&quot;</span><span class="p">,</span>
768                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;pixel_size_unit&quot;</span><span class="p">,</span>
769                        <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
770                        <span class="p">{</span>
771                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.pixel_size_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
772                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
773                         <span class="p">}</span>
774                        <span class="p">}</span>
775    <span class="n">SASINSTR_DET_PIXEL_Z</span> <span class="o">=</span> <span class="p">{</span>
776                        <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.pixel_size.z = {1}&quot;</span><span class="p">,</span>
777                        <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;pixel_size_unit&quot;</span><span class="p">,</span>
778                        <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
779                        <span class="p">{</span>
780                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.pixel_size_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
781                         <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
782                         <span class="p">}</span>
783                        <span class="p">}</span>
784    <span class="n">SASINSTR_DET_PIXEL</span> <span class="o">=</span> <span class="p">{</span>
785                      <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
786                      <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
787                                    <span class="s">&quot;x&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_PIXEL_X</span><span class="p">,</span>
788                                    <span class="s">&quot;y&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_PIXEL_Y</span><span class="p">,</span>
789                                    <span class="s">&quot;z&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_PIXEL_Z</span><span class="p">,</span>
790                                    <span class="p">}</span>
791                      <span class="p">}</span>
792    <span class="n">SASINSTR_DET_SLIT</span> <span class="o">=</span> <span class="p">{</span>
793                         <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.slit_length = {1}&quot;</span><span class="p">,</span>
794                         <span class="s">&quot;unit&quot;</span> <span class="p">:</span> <span class="s">&quot;slit_length_unit&quot;</span><span class="p">,</span>
795                         <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> 
796                         <span class="p">{</span>
797                          <span class="s">&quot;unit&quot;</span> <span class="p">:</span> 
798                          <span class="p">{</span>
799                           <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.slit_length_unit = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
800                           <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span>
801                           <span class="p">}</span>
802                          <span class="p">}</span>
803                         <span class="p">}</span>
804    <span class="n">SASINSTR_DET</span> <span class="o">=</span> <span class="p">{</span>
805                    <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;float&quot;</span><span class="p">,</span>
806                    <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
807                    <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="p">{</span>
808                                    <span class="s">&quot;name&quot;</span> <span class="p">:</span> 
809                                    <span class="p">{</span>
810                                     <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
811                                     <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
812                                     <span class="p">}</span>
813                                    <span class="p">},</span>
814                    <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
815                                  <span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span>
816                                            <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
817                                            <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.name = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">,</span>
818                                            <span class="p">},</span>
819                                  <span class="s">&quot;SDD&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_SDD</span><span class="p">,</span>
820                                  <span class="s">&quot;offset&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OFF</span><span class="p">,</span>
821                                  <span class="s">&quot;orientation&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_OR</span><span class="p">,</span>
822                                  <span class="s">&quot;beam_center&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_BC</span><span class="p">,</span>
823                                  <span class="s">&quot;pixel_size&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_PIXEL</span><span class="p">,</span>
824                                  <span class="s">&quot;slit_length&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET_SLIT</span><span class="p">,</span>
825                                  <span class="p">}</span>
826                    <span class="p">}</span>
827    <span class="n">SASINSTR</span> <span class="o">=</span> <span class="p">{</span>
828                <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
829                <span class="s">&quot;children&quot;</span> <span class="p">:</span> 
830                <span class="p">{</span>
831                 <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
832                 <span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="s">&quot;{0}.instrument = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">},</span>
833                 <span class="s">&quot;SASsource&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_SRC</span><span class="p">,</span>
834                 <span class="s">&quot;SAScollimation&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_COLL</span><span class="p">,</span>
835                 <span class="s">&quot;SASdetector&quot;</span> <span class="p">:</span> <span class="n">SASINSTR_DET</span><span class="p">,</span>
836                 <span class="p">},</span>
837                <span class="p">}</span>
838    <span class="n">CANSAS_FORMAT</span> <span class="o">=</span> <span class="p">{</span>
839                     <span class="s">&quot;SASentry&quot;</span> <span class="p">:</span> 
840                     <span class="p">{</span>
841                      <span class="s">&quot;units_optional&quot;</span> <span class="p">:</span> <span class="bp">True</span><span class="p">,</span>
842                      <span class="s">&quot;variable&quot;</span> <span class="p">:</span> <span class="bp">None</span><span class="p">,</span>
843                      <span class="s">&quot;storeas&quot;</span> <span class="p">:</span> <span class="s">&quot;content&quot;</span><span class="p">,</span>
844                      <span class="s">&quot;attributes&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;name&quot;</span> <span class="p">:</span> <span class="p">{</span><span class="s">&quot;variable&quot;</span> <span class="p">:</span> \
845                                    <span class="s">&quot;{0}.run_name[node_value] = </span><span class="se">\&quot;</span><span class="s">{1}</span><span class="se">\&quot;</span><span class="s">&quot;</span><span class="p">}},</span>
846                      <span class="s">&quot;children&quot;</span> <span class="p">:</span> <span class="p">{</span>
847                                    <span class="s">&quot;Title&quot;</span> <span class="p">:</span> <span class="n">TITLE</span><span class="p">,</span>
848                                    <span class="s">&quot;Run&quot;</span> <span class="p">:</span> <span class="n">RUN</span><span class="p">,</span>
849                                    <span class="s">&quot;SASdata&quot;</span> <span class="p">:</span> <span class="n">SASDATA</span><span class="p">,</span>
850                                    <span class="s">&quot;SAStransmission_spectrum&quot;</span> <span class="p">:</span> <span class="n">SASTRANSSPEC</span><span class="p">,</span>
851                                    <span class="s">&quot;SASsample&quot;</span> <span class="p">:</span> <span class="n">SASSAMPLE</span><span class="p">,</span>
852                                    <span class="s">&quot;SASinstrument&quot;</span> <span class="p">:</span> <span class="n">SASINSTR</span><span class="p">,</span>
853                                    <span class="s">&quot;SASprocess&quot;</span> <span class="p">:</span> <span class="n">SASPROCESS</span><span class="p">,</span>
854                                    <span class="s">&quot;SASnote&quot;</span> <span class="p">:</span> <span class="n">SASNOTE</span><span class="p">,</span>
855                                    <span class="s">&quot;&lt;any&gt;&quot;</span> <span class="p">:</span> <span class="n">ANY</span><span class="p">,</span>
856                                    <span class="p">}</span>
857                      <span class="p">}</span>
858                     <span class="p">}</span>
859
860</div>
861<div class="viewcode-block" id="CurrentLevel"><a class="viewcode-back" href="../../../../dev/api/sas.dataloader.readers.html#sas.dataloader.readers.cansas_constants.CurrentLevel">[docs]</a><span class="k">class</span> <span class="nc">CurrentLevel</span><span class="p">:</span>
862    <span class="sd">&quot;&quot;&quot;</span>
863<span class="sd">    A helper class to hold information on where you are in the constants tree</span>
864<span class="sd">    &quot;&quot;&quot;</span>
865     
866    <span class="n">current_level</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
867    <span class="n">ns_variable</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
868    <span class="n">ns_datatype</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
869    <span class="n">ns_optional</span> <span class="o">=</span> <span class="bp">True</span>
870     
871    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
872        <span class="bp">self</span><span class="o">.</span><span class="n">current_level</span> <span class="o">=</span> <span class="p">{}</span>
873        <span class="bp">self</span><span class="o">.</span><span class="n">ns_variable</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
874        <span class="bp">self</span><span class="o">.</span><span class="n">ns_datatype</span> <span class="o">=</span> <span class="s">&quot;content&quot;</span>
875        <span class="bp">self</span><span class="o">.</span><span class="n">ns_optional</span> <span class="o">=</span> <span class="bp">True</span>
876       
877<div class="viewcode-block" id="CurrentLevel.get_current_level"><a class="viewcode-back" href="../../../../dev/api/sas.dataloader.readers.html#sas.dataloader.readers.cansas_constants.CurrentLevel.get_current_level">[docs]</a>    <span class="k">def</span> <span class="nf">get_current_level</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
878        <span class="sd">&quot;&quot;&quot;</span>
879<span class="sd">        Helper method to get the current_level map</span>
880<span class="sd">        &quot;&quot;&quot;</span>
881        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">current_level</span>
882    </div>
883<div class="viewcode-block" id="CurrentLevel.get_data_type"><a class="viewcode-back" href="../../../../dev/api/sas.dataloader.readers.html#sas.dataloader.readers.cansas_constants.CurrentLevel.get_data_type">[docs]</a>    <span class="k">def</span> <span class="nf">get_data_type</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
884        <span class="sd">&quot;&quot;&quot;</span>
885<span class="sd">        Helper method to get the ns_datatype label</span>
886<span class="sd">        &quot;&quot;&quot;</span>
887        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">ns_datatype</span>
888    </div>
889<div class="viewcode-block" id="CurrentLevel.get_variable"><a class="viewcode-back" href="../../../../dev/api/sas.dataloader.readers.html#sas.dataloader.readers.cansas_constants.CurrentLevel.get_variable">[docs]</a>    <span class="k">def</span> <span class="nf">get_variable</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
890        <span class="sd">&quot;&quot;&quot;</span>
891<span class="sd">        Helper method to get the ns_variable label</span>
892<span class="sd">        &quot;&quot;&quot;</span>
893        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">ns_variable</span></div></div>
894</pre></div>
895
896          </div>
897        </div>
898      </div>
899      <div class="sphinxsidebar">
900        <div class="sphinxsidebarwrapper">
901<div id="searchbox" style="display: none">
902  <h3>Quick search</h3>
903    <form class="search" action="../../../../search.html" method="get">
904      <input type="text" name="q" />
905      <input type="submit" value="Go" />
906      <input type="hidden" name="check_keywords" value="yes" />
907      <input type="hidden" name="area" value="default" />
908    </form>
909    <p class="searchtip" style="font-size: 90%">
910    Enter search terms or a module, class or function name.
911    </p>
912</div>
913<script type="text/javascript">$('#searchbox').show(0);</script>
914        </div>
915      </div>
916      <div class="clearer"></div>
917    </div>
918    <div class="related">
919      <h3>Navigation</h3>
920      <ul>
921        <li class="right" style="margin-right: 10px">
922          <a href="../../../../genindex.html" title="General Index"
923             >index</a></li>
924        <li class="right" >
925          <a href="../../../../py-modindex.html" title="Python Module Index"
926             >modules</a> |</li>
927        <li><a href="../../../../index.html">SasView 3.0.0 documentation</a> &raquo;</li>
928          <li><a href="../../../index.html" >Module code</a> &raquo;</li>
929          <li><a href="../readers.html" >sas.dataloader.readers</a> &raquo;</li> 
930      </ul>
931    </div>
932    <div class="footer">
933        &copy; Copyright 2013, The SasView Project.
934      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
935    </div>
936  </body>
937</html>
Note: See TracBrowser for help on using the repository browser.