[ROOT] Re: TTree split/fill problem

From: Susan Kasahara (schubert@physics.umn.edu)
Date: Sun Sep 29 2002 - 01:44:57 MEST


Hi again,
I forgot to mention that I am using today's cvs version of ROOT with gcc 2.95.3 on rh linux.
-Sue

Susan Kasahara wrote:

> Hi root team,
> I am having a problem filling data to a root tree that has been created with a main
> branch split at level 99 and has branch layering that exceed 3 levels.
> For example, I create a TTree:
>
>   TTree* tree = new TTree("T","Demo tree");
>   Event* event = 0;
>   tree -> Branch("event","Event",&event,64000,99);
>
> The class Event has a structure such that this automatically creates a branch:
>   "fEvtHdr.fVertex.fTime.fSec"
> but, I find that:
>    event = Event(event data args,...);
>    tree -> Fill();
> does not fill the data is this 4-level branch filled correctly.  On the other hand, if
> I change the Event class to produce a branch structure  with no more than 3 levels:
>
>   "fEvtHdr.fVertex.fTime"
>
> The branch data is filled correctly.
>      To illustrate the problem, I've modified the $ROOTSYS/test/Event example to contain
> the structure illustrated above and attach this modified Event class.  To run it, I type:
> [kasahara]$ Event 400 1 99 1
> If successful, I expect that every
>   "fEvtHdr.fVertex.fTime.fSec" entry should be filled with the value 10, and every
>   "fEvtHdr.fVertex.fTime.fNanoSec" entry should be filled with the value 100.  But using
> But by using TTree::Scan, I see that the contents are incorrect.
>
> Thanks in advance for your help,
> -Sue



This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:11 MET