<div dir="ltr">Hi Michael,<div><br></div><div>Thanks for the comments. I also had convinced myself that it is completely possible to have run-time create-able streams. The only reason I left it out, is because I couldn&#39;t come up with a clean way to define the streams at run-time. I did come up with a way to have fields arbitrarily added to streams at run-time, but the only thing I came up with regarding streams being defined at run-time was the example I put in the design document, and that isn&#39;t really a &quot;fool-proof&quot; system of stream definitions.</div>

<div><br></div><div style>I don&#39;t necessarily think the requirement that they be build-time defined is a permanent requirement, and it could potentially be laxed in the future. Also, I think if we have a good idea for creating new streams at run-time it would be perfectly acceptable to have them defined at run-time. </div>

<div style><br></div><div style>So, in general I agree that it is completely possible to have run-time definable streams, but I would prefer to have a clean setup for them before I modified that requirement in the current design document. Maybe we can brain storm about it sometime and see if we can come up with and clean solutions. Also, I agree that it would make certain things (masking of fields) easier as well.</div>

<div style><br></div><div style>Thanks,</div><div style>Doug</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Mar 27, 2013 at 5:49 PM, Michael Duda <span dir="ltr">&lt;<a href="mailto:duda@ucar.edu" target="_blank">duda@ucar.edu</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi, Doug.<br>
<br>
If we were to develop a new stream handling module, which I think makes<br>
sense, I&#39;m able to convince myself that it shouldn&#39;t be much more<br>
difficult to allow for the definition of new streams at run-time. The<br>
mpas_io_streams module allows new streams to be arbitrarily<br>
instantiated, so presumably appropriate data structures could exist in<br>
the stream handling module to allow new streams to be instantiated based<br>
on the contents of a file read at run-time. Furthermore, the field data<br>
types contain the name of the field as a string, so there should be some<br>
possibility of scanning through all fields defined in the Registry until<br>
we find the one whose name matches that of the field to be added to a<br>
new stream object based on the contents of a file.<br>
<br>
So, I&#39;d propose that we re-consider the requirement for build-time<br>
definable streams, and require that everything be run-time definable.<br>
This would make it easier, too, to define new streams in more<br>
sophisticated ways, e.g., by saying that a new stream &#39;foo&#39; is a<br>
duplicate of an existing stream &#39;blah&#39;, but with a higher output<br>
interval and without some of the 3d fields in &#39;blah&#39;, or only over a<br>
high-resolution region of the mesh, which would have to be defined in<br>
terms of a mask field -- something that I think we&#39;re considering<br>
anyway.<br>
<br>
Michael<br>
<div><div class="h5"><br>
<br>
On Fri, Mar 22, 2013 at 03:33:32PM -0600, Doug Jacobsen wrote:<br>
&gt; Hello Everyone,<br>
&gt;<br>
&gt; As the XML Registry branch is now merged with the trunk, I want to continue<br>
&gt; working on the run time I/O layer.<br>
&gt;<br>
&gt; Attached (and in the repository) is a copy of the design document.<br>
&gt;<br>
&gt; Any comments/questions are welcome.<br>
&gt;<br>
&gt; Thanks,<br>
&gt; Doug<br>
<br>
<br>
</div></div>&gt; _______________________________________________<br>
&gt; mpas-developers mailing list<br>
&gt; <a href="mailto:mpas-developers@mailman.ucar.edu">mpas-developers@mailman.ucar.edu</a><br>
&gt; <a href="http://mailman.ucar.edu/mailman/listinfo/mpas-developers" target="_blank">http://mailman.ucar.edu/mailman/listinfo/mpas-developers</a><br>
<br>
</blockquote></div><br></div>