Hi Rene,
Do you see a possibility to create this branch at a special "depth level" in the
TTree, in other words, could you imagine having a function with such a
signature :
Branch(TCollection *list, Int_t bufsize=32000, Int_t splitlevel=99, TBranch*
topbranch)
like this on could put the automatic branch created for the collection as
sub-branch of
"topbranch" and not on top-level (which will be a default).
cheers,
Denis
Rene Brun wrote:
> Hi Denis,
>
> A TObjArray cannot be split by definition because its items may be
> any TObject*.
> If all the objects in the TObjArray are of the same class, then replace
> your TObjArray by a TClonesArray and you will get an automatic split.
>
> Note that the version 3.03 contains a new TBranch constructor:
> Branch(TCollection *list, Int_t bufsize=32000, Int_t splitlevel=99)
> that creates one sub-branch for each element in the collection.
>
> Rene Brun
>
> On Tue, 5 Mar 2002, Denis Bertini wrote:
>
> >
> > Hi rooters,
> >
> > I have a class Event that contains a "TObjArray *" pointer as datamenber.
> > so like
> >
> > class Event : public TObject{
> > // ...
> > TObjArray *myArray; //
> > //...
> > };
> >
> > I put this Class Event in a top-level branch of TTree so:
> >
> > Event *event = new Event();
> > TBranch *br= tree->Branch("Event.","MyEvent",
> > &event1,4000,99);
> >
> > so with splitlevel = 99 (max)
> >
> > I see that the TObjArray is not splitted, is there any reasons for that?
> > I know that in the new ROOT version there is a special "Branch" method
> > for TObjArray 's and that you have to create this splitting by hand, but
> > everything
> > is created a new "top-level" branches which is not suitable in my case.
> > Any hints?
> > Denis
> >
> >
> >
> >
> >
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:44 MET