<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'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't really a "fool-proof" system of stream definitions.</div>
<div><br></div><div style>I don'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"><<a href="mailto:duda@ucar.edu" target="_blank">duda@ucar.edu</a>></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'm able to convince myself that it shouldn'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'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 'foo' is a<br>
duplicate of an existing stream 'blah', but with a higher output<br>
interval and without some of the 3d fields in 'blah', 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'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>
> Hello Everyone,<br>
><br>
> As the XML Registry branch is now merged with the trunk, I want to continue<br>
> working on the run time I/O layer.<br>
><br>
> Attached (and in the repository) is a copy of the design document.<br>
><br>
> Any comments/questions are welcome.<br>
><br>
> Thanks,<br>
> Doug<br>
<br>
<br>
</div></div>> _______________________________________________<br>
> mpas-developers mailing list<br>
> <a href="mailto:mpas-developers@mailman.ucar.edu">mpas-developers@mailman.ucar.edu</a><br>
> <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>