Back Midas Rome Roody Rootana
  Root Display GUI, Page 5 of 7  Not logged in ELOG logo
Entry  21 Aug 2006, Konstantin Olchanski, Bug Fix, Better zoom & rebin controls, show TDirectory contents 
I commited a series of changed to Roody:
- cleanup unused files
- show contents of TDirectory objects (this used to work before, why was it
removed? It was a 1 line fix!)
- rework and simplify controls for zooming and rebinning of TCanvas contents
K.O.
Entry  04 Dec 2006, Konstantin Olchanski, Bug Fix, Add menu for SetOptStat 
I commited the implementation for a new menu item: "OptStat". It allows setting
gStyle->SetOptStat in a user-friendly manner. K.O.
Entry  16 Nov 2007, John M O'Donnell, Bug Fix, uint32_t or UInt_t DataSourceTNetFolder.h
I just downloaded and compiled the latest tarball.

line 98 of DataSourceTNetFolder.h complained about unit32_t.  While I could have
added an include to make this work, I instead changed it to use the ROOT type
UInt_t.

Perhaps this change should be included in the distribution
    Reply  16 Nov 2007, Konstantin Olchanski, Bug Fix, uint32_t or UInt_t 
> I just downloaded and compiled the latest tarball.
> 
> line 98 of DataSourceTNetFolder.h complained about unit32_t.  While I could have
> added an include to make this work, I instead changed it to use the ROOT type
> UInt_t.

Uint_t is technically incorrect. The data returned from the socket connection is a
32-bit pointer to an object in the remote process (how do they come up with
communication protocols like this?!?). The type "Uint_t" is not defined to be of any
particular size and is not necessarily big enough to hold a 32-bit unsigned integer.

According to the "C99" standard, the correct C data type for 32-bit unsigned
integers is uint32_t, defined in "#include <stdint.h>", e.g. see
http://www.oreillynet.com/pub/a/network/2003/10/07/michael_barr.html

I have now added the missing "#include <stdint.h>" statement to
DataSourceTNetFolder.h, commited as revision 230.

I am puzzled why the code compiled without this include statement, possibly on my
SL4.3 machine with ROOT v5.16.00, some ROOT or system header file included it for
me. I am curious what system you use where this code failed to compile?

K.O.
    Reply  19 Nov 2007, John M O'Donnell, Bug Fix, uint32_t or UInt_t 
I'm using Redhat workstation with:
  gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7)
  ROOT version 5.16/00

it is unlikely that UInt_t will ever be too small.  If it is too small, then ROOT will
break!  It is clearly intended to be 32 bits long.  From Rtypes.h:

#ifdef R__INT16
typedef long           Int_t;       //Signed integer 4 bytes
typedef unsigned long  UInt_t;      //Unsigned integer 4 bytes
#else
typedef int            Int_t;       //Signed integer 4 bytes (int)
typedef unsigned int   UInt_t;      //Unsigned integer 4 bytes (unsigned int)
#endif

Of course, stdint.h is defined in a standard.  However ROOT doesn't really try to follow
the standard (CINT compiles a language similar to C++, but not exactly C++), and indeed
the file stdint.h is not explicitly included in any of $ROOTSYS/include/*.h.

John.

> > I just downloaded and compiled the latest tarball.
> > 
> > line 98 of DataSourceTNetFolder.h complained about unit32_t.  While I could have
> > added an include to make this work, I instead changed it to use the ROOT type
> > UInt_t.
> 
> Uint_t is technically incorrect. The data returned from the socket connection is a
> 32-bit pointer to an object in the remote process (how do they come up with
> communication protocols like this?!?). The type "Uint_t" is not defined to be of any
> particular size and is not necessarily big enough to hold a 32-bit unsigned integer.
> 
> According to the "C99" standard, the correct C data type for 32-bit unsigned
> integers is uint32_t, defined in "#include <stdint.h>", e.g. see
> http://www.oreillynet.com/pub/a/network/2003/10/07/michael_barr.html
> 
> I have now added the missing "#include <stdint.h>" statement to
> DataSourceTNetFolder.h, commited as revision 230.
> 
> I am puzzled why the code compiled without this include statement, possibly on my
> SL4.3 machine with ROOT v5.16.00, some ROOT or system header file included it for
> me. I am curious what system you use where this code failed to compile?
> 
> K.O.
    Reply  17 May 2009, Randolf Pohl, Bug Fix, [PATCH] ROODY kills analyzer too!! 
Hi,

I have fixed the bug:

diff roody_233/include/DataSourceTNetFolder.h roody_233_fixed/include/DataSourceTNetFolder.h
100c100
< uint32_t p = 0;
---
> uintptr_t p = 0;

(Both Exaos and I were/are using roody on 64 bit machines.)

Best regards,

Randolf
    Reply  23 Jul 2009, Exaos Lee, Bug Fix, [PATCH] ROODY kills analyzer too!! 

Randolf Pohl wrote:
Hi,

I have fixed the bug:

diff roody_233/include/DataSourceTNetFolder.h roody_233_fixed/include/DataSourceTNetFolder.h
100c100
< uint32_t p = 0;
---
> uintptr_t p = 0;

(Both Exaos and I were/are using roody on 64 bit machines.)

Best regards,

Randolf


Oh, GOD! From Wednesday, I have took almost one day to find the BUG and fix it. Then I found your post here. Tongue
Entry  19 Oct 2010, Konstantin Olchanski, Bug Fix, roody update 
And you thought that roody was dead? Well, here is an update - implement "reopen" for ROOT files, add 
"reopen" button to main menu, fix duplicated histogram names after "reopen" (at the cost of losing display 
of histogram titles in the tree view).
K.O.
    Reply  19 Oct 2010, Konstantin Olchanski, Bug Fix, roody update, fix open of  
> And you thought that roody was dead? Well, here is an update - implement "reopen" for ROOT files, add 
> "reopen" button to main menu, fix duplicated histogram names after "reopen" (at the cost of losing display 
> of histogram titles in the tree view).
> K.O.

Forgot to mention the main reason of this update: when looking at ROOT files, ROODY could not open any subdirectories because of some name 
changes inside ROOT. Now fixed.

ROODY svn rev 236
svn checkout https://ladd00.triumf.ca/svn/roody/trunk roody
K.O.
Entry  25 May 2012, Konstantin Olchanski, Bug Fix, Fixed the "Zones" menu 
The "Zones" manu has not been working right - if you have a canvas open with one 
histogram plotted and you select Zones "2x2", nothing happens. The expected 
action is to have the canvas divide itself into 4 pads (2x2) and the one 
histogram to show up in the first pad. That's how it works now.

svn rev 240.
K.O.
Entry  21 Jul 2003, Konstantin, ,  
I created a CVS repository for the ROOT GUI project: 
/dasdevpc/cvsroot/rootgui (dasdevpc:/usr/local/cvsroot/rootgui) 
 
(should I rename it to cvsroot/miroodas?). 
 
K.O. 
 
Entry  21 Jul 2003, Konstantin, , CVS repository 
I created a CVS repository for the ROOT GUI project: 
/dasdevpc/cvsroot/miroodas (dasdevpc:/usr/local/cvsroot/miroodas) 
 
K.O. 
Entry  21 Jul 2003, Konstantin, , Account for Joe Chuma 
I created an account for Joe Chuma on the DAQ cluster. The home directory 
is /send/home/chuma. Joe, please contact me to learn your password. K.O. 
 
Entry  21 Jul 2003, Konstantin, , Account for Joe Chuma 
I created an account for Joe Chuma on the DAQ cluster. The home directory 
is /send/home/chuma. Joe, please contact me to learn your password. K.O. 
 
Entry  21 Jul 2003, Konstantin, , miroodas forum 
The URL for the MIROODAS forum is: http://daq.triumf.ca:8085/MIROODAS 
K.O. 
 
Entry  21 Jul 2003, Konstantin, , meeting this Tuesday! 
We will have our regular meeting this Tuesday at 10am in the ISAC2 2nd 
floor kitchen. 
 
Agenda: 
 -review of assigned homework (I did most of mine!). 
 -layout of our cvs repository 
 
K.O. 
 
Entry  22 Jul 2003, Greg, , CVS 
miroodas code has been imported into the CVS and can be checkout

cvs -d /dasdevpc/cvsroot co miroodas

or

cvs -d gking@dasdevpc:/usr/local/cvsroot co miroodas
--using gking as an example user

Please see miroodas/doc/README.txt for more information on compiling

cheers,
Greg
Entry  29 Jul 2003, Konstantin, , test midas experiment 
I revived the test midas experiment on midtis06. We can start using it to
develop the online connection to the root gui. Here are the instructions
on running things:
 - login to midtis06
 - set ROOTSYS to /send/home/olchansk/daq/root
 - cd /send/home/olchansk/daq/root
 - ./start_daq (four xterm windows should open:
   1) mhttpd (on port 8080). Point a web browser to http://midtis06:8080
   2) odbedit
   3) a front end
   4) an analyzer)
 - run ~olchansk/daq/midas/linux/bin/rmidas
   enter "midtis06" in the "hostname" box.
   five histogram names should appear in the list on the left: CADC00
through 03 and ADCSUM. Click on the names to see the histograms.
 - start a run (from a web browser, or enter "start" in odbedit)
 - the frontend window should count 100 events/sec.
 - click on the rmidas "update" button, the counts should increment.
This is all done by vanilla ROOT and MIDAS.

The ROOT code to access the MIDAS histograms is in
~olchansk/daq/midas/src/rmidas.c, functions:
 - ConnectServer()
 - GetHistoList()
 - GetHisto()
 - ClearHisto()

K.O.
Entry  29 Jul 2003, Konstantin, , Wednesday 10am meeting 
We will have the 10am meeting this Wednesday in the ISAC2 2nd floor kitchen.
Agenda:
 - progress reports
 - status of midas online connection (K.O.)
 - priority of improvements to the histogram viewer (TCanvas) and tree view
(TTreeViewer). (G.K.)
K.O.
Entry  30 Jul 2003, Greg, , List of Development Components for MIROODAS 
Here is the list of components that must/should be developed for MIROODAS:

1. Peak Finding Panel (1D w/ TSpectrum, 2D w/ TSpectrum2 ... note 2D is not
functional yet)
    *THIS is a new feature*
2. Fit Panel
    *This will be a remake of the old feature ... with some improvements*
3. Draw Options Panel
    *This will be a remake of the old feature ... with some improvements*
4. Stat Option Panel 
    *THIS is a new feature*
5. TCanvas
    including: custum context menus which will associate with the new features
6. TTreeViewer
    including: necessary bug fixes and developments as discussd in the meeting
7. Attributes Panel
    *Remake all Attributes Panels and combine into one panel*
ELOG V3.1.4-2e1708b5