Mark,
I cannot reproduce this problem.
I created a file levels.C with your classes, then did
root > .L levels.C+
root > level1 *l = new level1
root > TTree T("T","test")
root > T.Branch("top","level1",&l,16000,99)
root > T.Print()
The last command produces the correct output below
Rene Brun
******************************************************************************
*Tree :T : test *
*Entries : 0 : Total = 19515 bytes File Size = 0 *
* : : Tree compression factor = 1.00 *
******************************************************************************
*Branch :top *
*Entries : 0 : BranchElement (see below) *
*............................................................................*
*Br 0 :fUniqueID : *
*Entries : 0 : Total Size= 588 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 1 :fBits : *
*Entries : 0 : Total Size= 564 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 2 :det1 : *
*Entries : 0 : Total Size= 7947 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 3 :det1.fUniqueID : *
*Entries : 0 : Total Size= 618 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 4 :det1.fBits : *
*Entries : 0 : Total Size= 594 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 5 :det1.det1.fUniqueID : *
*Entries : 0 : Total Size= 648 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 6 :det1.det1.fBits : *
*Entries : 0 : Total Size= 624 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 7 :det1.det1.energy : *
*Entries : 0 : Total Size= 630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 8 :det1.det1.time : *
*Entries : 0 : Total Size= 618 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 9 :det1.det2.fUniqueID : *
*Entries : 0 : Total Size= 648 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 10 :det1.det2.fBits : *
*Entries : 0 : Total Size= 624 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 11 :det1.det2.energy : *
*Entries : 0 : Total Size= 630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 12 :det1.det2.time : *
*Entries : 0 : Total Size= 618 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 13 :det1.energy : *
*Entries : 0 : Total Size= 600 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 14 :det1.time : *
*Entries : 0 : Total Size= 588 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 15 :det2 : *
*Entries : 0 : Total Size= 7947 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 16 :det2.fUniqueID : *
*Entries : 0 : Total Size= 618 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 17 :det2.fBits : *
*Entries : 0 : Total Size= 594 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 18 :det2.det1.fUniqueID : *
*Entries : 0 : Total Size= 648 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 19 :det2.det1.fBits : *
*Entries : 0 : Total Size= 624 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 20 :det2.det1.energy : *
*Entries : 0 : Total Size= 630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 21 :det2.det1.time : *
*Entries : 0 : Total Size= 618 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 22 :det2.det2.fUniqueID : *
*Entries : 0 : Total Size= 648 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 23 :det2.det2.fBits : *
*Entries : 0 : Total Size= 624 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 24 :det2.det2.energy : *
*Entries : 0 : Total Size= 630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 25 :det2.det2.time : *
*Entries : 0 : Total Size= 618 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 26 :det2.energy : *
*Entries : 0 : Total Size= 600 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 27 :det2.time : *
*Entries : 0 : Total Size= 588 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 28 :energy : *
*Entries : 0 : Total Size= 570 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
*Br 29 :time : *
*Entries : 0 : Total Size= 558 bytes One basket in memory *
*Baskets : 0 : Basket Size= 16000 bytes Compression= 1.00 *
*............................................................................*
Mark Wallace wrote:
>
> Hello,
> I'm using root 3.10/01 on debian linux. I'm trying to understand how to
> use the splitting of a branch. I have classes of classes of classes and want
> to make the tree containing branches of branches of branches and I can't seem
> to do that. If I try
>
> TTree *t2 = new TTree("t2","Test of class");
> level1 *test = new level1();
> t2->Branch("test","level1",&test,32000,99);
>
> where the classes are defined below, I get a tree with only splitting of the
> first level. I saw somewhere on the web that said this was the limit for
> branch splitting when the branch is a class. The question I have is how could
> you do this manually. If you can't split a class more then level 2, what can
> you split 99 times? I would like something like this.
>
> det1
> -energy
> -time
> det1
> -energy
> -time
> det1
> -energy
> -time
> det2
> -energy
> -time
> det2
> -energy
> -time
> det1
> -energy
> -time
> det2
> -energy
> -time
>
> Can this be done? if so how?
>
> Thanks for help!
>
> Mark Wallace
>
> class level3 : public TObject {
> public:
> Float_t energy;
> Float_t time;
> level3() {};
> ~level3() {};
> ClassDef (level3,1)
> };
> class level2 : public TObject {
> public:
> level3 det1;
> level3 det2;
> Float_t energy;
> Float_t time;
> level2() {};
> ~level2() {};
> ClassDef (level2,1)
> };
> class level1 : public TObject {
> public:
> level2 det1;
> level2 det2;
> Float_t energy;
> Float_t time;
> level1() {};
> ~level1() {};
> ClassDef (level1,1)
> };
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:08 MET