Back Midas Rome Roody Rootana
  Root Display GUI, Page 2 of 6  Not logged in ELOG logo
New entries since:Wed Dec 31 16:00:00 1969
Entry  19 Dec 2005, Konstantin Olchanski, Bug Fix, minor fixes 
Minor fixes that escaped quality assurance by previous commiters:
1) remove include/rootsys.h from cvs - it is a generated file
2) have "make clean" remove obsolete stuff from src (src/roody, src/rootsys.h, etc)
3) fix completely nonfunctional enforcement of setting ROOTSYS to the compiled-in value: execv() should have been execvp() (my bug), actually do call setenv("ROOTSYS","blah...") (OS_UNIX was not defined in the Makefile, bug by previous committer).
4) fix an mxml bug imported from MIDAs land (xml output into a string buffer was corrupted).
K.O.
    Reply  19 Dec 2005, Stefan Ritt, Bug Fix, minor fixes 

Konstantin Olchanski wrote:
Minor fixes that escaped quality assurance by previous commiters


ROODY is again broken under Windows, can someone look into this:

c:\roody\include\Roody.h(364) : error C2143: syntax error : missing ';' before '
'template<''
c:\roody\include\Roody.h(364) : error C2501: 'export' : missing storage-class or
type specifiers
c:\roody\include\Roody.h(397) : error C2143: syntax error : missing ';' before '
'template<''
c:\roody\include\Roody.h(397) : error C2501: 'export' : missing storage-class or
type specifiers
c:\roody\include\Roody.h(397) : error C2086: 'int export' : redefinition
c:\roody\include\Roody.h(364) : see declaration of 'export'
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.

Regards,

Stefan
    Reply  19 Dec 2005, Stefan Ritt, Bug Fix, minor fixes 

Konstantin Olchanski wrote:
4) fix an mxml bug imported from MIDAs land (xml output into a string buffer was corrupted).


That bug has already been fixed long time ago. The problem is that the mxml.c file now lives twice in repositories, once in standalone mxml package and once in roody, and they will always diverge if one does not properly apply changes from one repository to the other. Since we use mxml in midas, rome and elog, we use a separate repository "mxml", which you can access through subversion at

http://savannah.psi.ch/websvn/listing.php?repname=mxml&path=%2Ftrunk%2F

I would recommend to do the same for roody. The disadvantage will be that one has to check out two packages to build roody, the advantage will be that there will be only one mxml, and if one fixes/extends this one, it will be to the benefit of all projects. The current one has for example the new mxml_parse_entity function, so that one can make includes in XML files. And I plan to have a fast transparent binary XML cache for large XML files in the near future.

- Stefan
    Reply  06 Jun 2006, Konstantin Olchanski, Bug Fix, minor fixes 

Konstantin Olchanski wrote:
Minor fixes that escaped quality assurance by previous commiters:
2) have "make clean" remove obsolete stuff from src (src/roody, src/rootsys.h, etc)
3) fix completely nonfunctional enforcement of setting ROOTSYS to the compiled-in value: execv() should have been execvp() (my bug), actually do call setenv("ROOTSYS","blah...") (OS_UNIX was not defined in the Makefile, bug by previous committer).


Restored fixes (2) and (3) that were removed by a careless previous committer.

(Note this assumes windows has "setenv()", which I believe it does have, please test compilation on Windows ASAP and let me know).

K.O.
       Reply  06 Jun 2006, Konstantin Olchanski, Bug Fix, minor fixes 
> Minor fixes that escaped quality assurance by previous commiters:
> 2) have "make clean" remove obsolete stuff from src (src/roody, src/rootsys.h,
etc)
> 3) fix completely nonfunctional enforcement of setting ROOTSYS to the
compiled-in value: execv() should have been execvp() (my bug), actually do call
setenv("ROOTSYS","blah...") (OS_UNIX was not defined in the Makefile, bug by
previous committer).


(previous message was completely garbled by the Elog "ELCode" whatever it is)


Restored fixes (2) and (3) that were removed by a careless previous committer.

(Note this assumes windows has "setenv()", which I believe it does have, please
test compilation on Windows ASAP and let me know).

K.O.
Entry  06 Jun 2006, Konstantin Olchanski, Info, Roody still using CVS 
To prevent confusion- according to Joe Chuma and Konstantin Olchanski, we are
still using CVS for Roody development. K.O.
Entry  05 Jun 2006, Joe Chuma, Bug Fix, reset histograms 
Roody should now be able to reset online histograms. Use the "reset all" menu item to reset all online histograms, or use the right click context menu on individual histograms to reset just one histogram (or a set of histograms chosen by holding down the ctrl key while selecting). The latest ROME analyzer is required for these features to be used.
Entry  19 Apr 2006, Joe Chuma, Bug Fix, pause/restart button fixed 
The pause/restart button was not working properly, as a result of some confusion about the return value from the TString Compare method. It should now be fixed.
Entry  18 Apr 2006, Joe Chuma, Bug Fix, Pause/Restart Refresh button added 
A Pause/restart refresh button has been added to the Roody frame so users may quickly pause and restart online histogram refreshing.
Entry  16 Mar 2006, Matthias Schneebeli, Bug Report, Compiling under windows 
Hi,

when I try to compile roody under windows I get following errors.



c:\roody>nmake -f Makefile.win

Microsoft (R) Program Maintenance Utility, Version 7.00.9466
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

cl /D "OS_WINNT" /GX /GR /Ic:\roody\include /Ic:\roody\..\mxml /IC:\ROOT\include /I. /c /Foobj/Roody.obj src/Roody.cxx
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.

Roody.cxx
c:\roody\include\Roody.h(388) : error C2039: 'size_t' : is not a member of 'std'
c:\roody\include\Roody.h(391) : error C2039: 'size_t' : is not a member of 'std'
c:\roody\include\Roody.h(396) : error C2039: 'clear' : is not a member of 'basic_string<char,struct std::char_traits<char>,class std::allocator<char> >'
src/Roody.cxx(754) : error C2061: syntax error : identifier 'xml'
src/Roody.cxx(755) : error C2228: left of '.rdstate' must have class/struct/union type
src/Roody.cxx(762) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(762) : error C2297: '<<' : illegal, right operand has type 'char [9]'
src/Roody.cxx(768) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(768) : error C2297: '<<' : illegal, right operand has type 'char [12]'
src/Roody.cxx(769) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(769) : error C2297: '<<' : illegal, right operand has type 'char [11]'
src/Roody.cxx(770) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(770) : error C2297: '<<' : illegal, right operand has type 'char [11]'
src/Roody.cxx(771) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
Entry  21 Dec 2005, Pierre-André Amaudruz, Bug Fix, mxml 
Roody is taking now the ../mxml directory. (Makefile, Makefile.win)
roody image is moved into bin (Makefile).
the local cvs mxml is empty now.
The template export bug fixed (removed export declaration).
Entry  19 Dec 2005, Konstantin Olchanski, Bug Report, reconnect after midas analyzer is restarted? 
When I restart the MIDAS analyzer, it looks like ROODY detects that the connection is broken, but does not reestablish it. Can somebody look into this? K.O.
Entry  29 Nov 2005, Joe Chuma, Release, roody directory reorganization and Makefile changes 
1) roody has been converted from libxml2 to mxml
2) the files have been shuffled around so the *.cxx, *.cpp files
   are in the roody/src/ directory, the *.h files are in the
   roody/include/ directory, the Makefile is in the top roody/
   directory which is where the roody executable goes while
   roody.so now goes into the roody/lib/ directory. The mxml
   files are in roody/mxml.  The *.o files now go into the
   roody/obj/ directory (which is created by the Makefile if
   it doesn't exist).
3) the Makefile has been redone and simplified, and the windows
   stuff removed, since the windows version has its own makefile.
4) clicking on the Help About menu item now displays a message box
   with the current version.  For now, the code must be edited
   manually for each code revision, but it would be nice to automate
   this. 
    Reply  07 Dec 2005, Stefan Ritt, Info, roody directory reorganization and Makefile changes 
> 1) roody has been converted from libxml2 to mxml
> 2) the files have been shuffled around so the *.cxx, *.cpp files
>    are in the roody/src/ directory, the *.h files are in the
>    roody/include/ directory, the Makefile is in the top roody/
>    directory which is where the roody executable goes while
>    roody.so now goes into the roody/lib/ directory. The mxml
>    files are in roody/mxml.  The *.o files now go into the
>    roody/obj/ directory (which is created by the Makefile if
>    it doesn't exist).
> 3) the Makefile has been redone and simplified, and the windows
>    stuff removed, since the windows version has its own makefile.
> 4) clicking on the Help About menu item now displays a message box
>    with the current version.  For now, the code must be edited
>    manually for each code revision, but it would be nice to automate
>    this. 

Compilation under Windows now works fine, many thanks.

I had however a problem under windows. Your scheme with the rootsys.h file does
not work under windows, since the ROOTSYS variable usually points to something
like c:\root. If I follow your scheme, I get following in rootsys.h

const char* rootsys = "c:\root";

where the "\r" is interpreted as a carriage return. I did not find a clever way to
convert this to 

const char* rootsys = "c:\\root";

in the Makefile, so for windows I just make it empty, like

const char* rootsys = "";

I changed your src/main.cxx to check for an empty rootsys, and if yes just take
the environment variable. I committed that change, I hope it's ok.

There is one small warning left whern running under windows;

C:\roody>bin\roody
Error in <TWinNTSystem::BaseName>: name = 0

Do I have to worry about that?

- Stefan
    Reply  19 Dec 2005, Konstantin Olchanski, Release, roody directory reorganization and Makefile changes 
> 2) the files have been shuffled around

Joe, is there any particular reason why the roody executable is not placed into a
"bin" directory? Just curious. (As one could argue both way: .../bin/roody is more
consistant with MIDAS; .../bin/roody creates a junk directory with only one file
in it).

K.O.
Entry  13 Dec 2005, Joe Chuma, Bug Fix, roody graphics pad problems fixed 
Problems with deciding which graphics pad to choose for drawing have been fixed.
 Now the group pads (created by choosing draw group from the group context menu)
and the zoom pad (created by choosing zoom option from the pad context menu) are
treated distinctly from the canvases titled "canvasN" for N=0,1,2,...  Also, a
user supplied zone setting will be displayed in the zones menu, and can be
chosen again later.  Problems with the cvs file locks have been repaired (by
P.Amaudruz).
Entry  21 Nov 2005, Joe Chuma, Bug Fix, Roody xml fix 
The xml code in Roody has been localized into RoodyXML to allow for future conversion to ROME xml (and a few bugs fixed in the xml code).
Entry  27 Oct 2005, Stefan Ritt, Bug Report, Various item when installing ROODY 
Hi,

I tried to compile ROODY, and got following problems/issues:

- I see ROODY requires root V3.10.02, ROME requires root >=4, so I will never be able to compile the two packages together with one root installation. Is that true? Since we are already at root 5.04, it might be time to migrate ROODY to newer versions of ROOT...

- The Makefile.win is under roody/, Makefile is under roody/src, not very consistent, there is no "INSTALL" or "COPYING" file which is kind of GNU standard

- I tried to compile ROODY under windows, after having installed root 3.10, but it misses the libxml/ subtree

- For the non-expert users it would be good to supply a windows executable of roody, this way the don't have to bother with compiling

Best regards,

Stefan
Entry  05 Jul 2005, Qing Gu, Info, Affect of different root versions on Roody 
After changing ROOT version from root_v4.04.00 to root_v4.04.02, the histograms
don't stay highlighted after clicking, but the top "Roody" bar disappears sometimes.
Entry  27 Jun 2005, Joe Chuma, Bug Fix, Roody fixes 
Error messages from Roody will now appear as TGMsgBox forms which require the
user to click the "Dismiss" button to acknowledge the error message.  If the
user chooses the x-axis scales for an online histogram using the mouse to select
a range on the axis, that range will be used for re-displaying the histogram
when it is refreshed. However, if the user chooses "XaxisLimits" from the
context menu, that x-axis scaling will be used for all pads on that canvas, and
a range as described above will be overridden by this scaling.
Entry  01 Jun 2005, Joe Chuma, Bug Fix, multiple bug fixes 
Fixed refreshing of overlayed online histograms.
Fixed refresh now.
main.cxx:  class Roody now created on the stack instead of the heap.
TNetFolder.cpp:  fixed memory leak relating to TMessage pointer
                 returned by TSocket::Recv( TMessage * )
                 ?? is this related to the memory leak in the analyzer ??
Entry  04 May 2005, Joe Chuma, Bug Fix, roody bug fixes 
1) Memory leak fixed:
 when the plotting destination set to replace, cloned objects with the canvas
 about to be closed are now being deleted first.
2) Group restore fixed:
 when restoring a saved session, and objects from file subdirectories were
 added to a group, they were not being included in that group.  Now the
 data file is searched recursively for subdirectories.
3) Group draw fixed:
 TH2 and TH3 objects in a group were not being drawn.
Entry  19 Apr 2005, Konstantin Olchanski, Info, commited: macosx Makefile bits 
The Makefile bits for building roody on MacOSX have been commited, tested on
MacOSX 10.3.9 with an unknown version of ROOT. Caveats: there is no support for
linking the roody shared library (volunteers are welcome!); there are warnings
about a double-include of libz when linking "roody" (ignore them). K.O.
Entry  12 Apr 2005, Joe Chuma, Bug Fix, memory leak fix 
A memory leak was fixed in Roody.cxx, which occurred when updating a histogram
from a NetFolder object.
Entry  12 Apr 2005, Joe Chuma, Bug Fix, modified reset option implementation 
The reset option has been modified to use the new "Command" option in mana.c
instead of the "Reset" option in mana.c, which has been removed.
Entry  11 Mar 2005, Joe Chuma, Bug Fix, reset online histograms 
Roody can now reset online histograms via context menu or main menu.  This
requires a small change in mana.c  Also, fixed a problem with segmentation
faults when trying to connect to an invalid server port.
    Reply  31 Mar 2005, Stefan Ritt, Bug Fix, reset online histograms 
> Roody can now reset online histograms via context menu or main menu.  This
> requires a small change in mana.c  Also, fixed a problem with segmentation
> faults when trying to connect to an invalid server port.

I saw that you implemented a "Reset" function in root_server_thread. This is not
necessary. You have the more general "Command" function which was meant for that.
You specify the object name, type, method to execute and optional arguments. Right
now, only the "Reset" command is implemented, but that's what you need. Can you
check if roody works with that? If so, can you remove the "Reset" function again ? 

Thanks,

  Stefan
ELOG V3.1.4-2e1708b5