Re: Problems with root 2.00/03 and NT4.0

Valery Fine (fine@bnl.gov)
Sat, 4 Apr 1998 21:33:00 -0500


On 4 Apr 98 at 16:23, martin braeuer wrote:

> Date: Sat, 4 Apr 1998 16:23:15 +0200 (MET DST)
> From: martin braeuer <Martin.Braeuer@mpi-hd.mpg.de>
> To: roottalk@hpsalo.cern.ch
> Subject: Problems with root 2.00/03 and NT4.0

>
>
> Dear rooters,
> the interactive analysis experiences with root up to now show that
> the commands are longer to type than in PAW, however one has the
> full C++ language to program some analysis tasks as a macro.

To reduce your commands you may create your own library of the
"aliases" either as DLL or as ROOT macro (see
root/tutorials/rootalias.C as the example)

> This is
> nice, but to get plots I make heavy use of interactive manipulations
> via the editor. THIS is my Problem : Root (version 2.00/03 as well
> as 1.03) crashes very often.

Well it is know problem and one has to find a time slice to improve
WIN32 events management.

> Okay one can live with that for some time. Now I tried to save the
> canvas as a C++ macro. The result is,
> that some of the manipulations of the plot are not saved at all.

I think one has to clarify what is going on just the user click
"Save As" menu item.

ROOT just calls the method TObject::SavePrimitive(...) for
all objects on the current TPad list. TObject itself is a virtual
class so it supplies the "dummy" implementation of that method only.

If the class on the current TPad list "can" save ITSELF it will be
saved otherwise TObject::SavePrimitive( ... ) dummy will be called.

So the conclusion: if one realized some object is not saved this
means that method has not been written for that class yet. One may
help ROOT community with that.

> So saving of the work NOT ONLY as postscript, what I normally do with
> PAW macros seems to be difficult with root. (Do I have to program
> the whole macro by hand?)

PAW macros and PAW are based on CERNLIB - CERN Fortran Program
Library. It is a result of 40-years HEP community efforts.

ROOT is 2 years old.

>
> If some C++ rules forbid to save a canvas in its interactively
> styled outline,

As I've explained it has nothing to do with C++. ROOT as a
framework supplies us the "universal interface" method (because of C++
inheritance) to save any (even "unknown: for ROOT) TObject object
with "Save As" ROOT menu.

Hope this helps

Valery
=================================================================
Dr. Valeri Faine (Fine)
------------------- Phone: +1 516 344 7806
Brookhaven National Laboratory FAX : +1 516 344 4206
Bldg. 510A /STAR mailto:fine@bnl.gov
Upton, New York, 11973-5000 http://nicewww.cern.ch/~fine
USA

Dr. Valery Fine Telex : 911621 dubna su
-----------
LCTA/Joint Inst.for Nuclear Res. Phone : +7 09621 6 40 80
141980 Dubna, Moscow region Fax : +7 09621 6 51 45
Russia mailto:fine@main1.jinr.dubna.su