<div dir="ltr">Thanks Ole, that explains A LOT of what people have not yet said. Two questions:<div><br></div><div>A: Without root, what would we use? PAW...home grown...? </div><div>B: Without C++ what would we use? FORTRAN...perl...python...?</div><div><br></div><div>As you might have guessed, I have operated under the presumption of a root/geant4 code base. It seems to me that any other choice is more work for the core team than I care to think about in my worst nightmare!<br></div><div><br></div><div>1) Does anyone among us believe that we have the capability to write our own root or geant4?</div><div>2) Among those who believe item 1, do you think that we are wise to do this?</div><div><br></div><div>Perhaps this is first thing we should discuss. My opinion is simple: root/geant4 should be the basis of SoLID software. I'm curious to hear if any of us has a different opinion on this.</div><div><br></div><div>All the best,</div><div>Tom</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 7, 2015 at 12:28 PM, Ole Hansen <span dir="ltr"><<a href="mailto:ole@jlab.org" target="_blank">ole@jlab.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 04/06/2015 10:56 PM, Richard S. Holmes wrote:<br>
> On Mon, Apr 6, 2015 at 4:51 PM, Thomas K Hemmick<br>
> <<a href="mailto:hemmick@skipper.physics.sunysb.edu">hemmick@skipper.physics.sunysb.edu</a><br>
</span><span class="">> <mailto:<a href="mailto:hemmick@skipper.physics.sunysb.edu">hemmick@skipper.physics.sunysb.edu</a>>> wrote:<br>
><br>
> I) Root streamers mean that with ZERO WORK, we can store/retrieve<br>
> the detector definition objects to/from a file.<br>
><br>
><br>
> It seems to me, unless I'm mistaken, there's a few words missing from<br>
> the end of this sentence, which are: "in a C++ program linked against<br>
> ROOT".<br>
<br>
</span>Rich's point is similar to one I wanted to bring up: The idea of using<br>
ROOT streamers implies major design decisions that haven't been made<br>
yet: That (at least parts of) the framework will require C++ and ROOT,<br>
and that we wish to standardize on ROOT files.<br>
<br>
This point is significant because, among other things, neither the Hall<br>
B nor the Hall D framework are built on ROOT, and Hall B's framework (as<br>
well as much other JLab software) is not primarily written in C++. In<br>
other words, if we want to build on ROOT, we're effectively ruling out<br>
building on either of those frameworks. Similarly, neither framework<br>
relies primarily on the ROOT file format; for instance, Hall D's<br>
framework makes heavy use of XML and its own schema definitions.<br>
(ROOT/C++/streamers are being used in the Hall A analyzer, however.)<br>
This just for reference.<br>
<br>
I still thinking about the wisdom of using streamers in general for<br>
things like geometry parameters. There are pros and cons. More on that<br>
later.<br>
<span class="HOEnZb"><font color="#888888"><br>
Ole<br>
<br>
</font></span><br>_______________________________________________<br>
Halla12_software mailing list<br>
<a href="mailto:Halla12_software@jlab.org">Halla12_software@jlab.org</a><br>
<a href="https://mailman.jlab.org/mailman/listinfo/halla12_software" target="_blank">https://mailman.jlab.org/mailman/listinfo/halla12_software</a><br>
<br></blockquote></div><br></div>