Hi Rooters,
I have a bizarre problem where root confuses one leaf for the other, let me explain in details. The structure of my file looks like this:
******************************************************************************
*Tree :Board : MonitoringBoard *
*Entries : 13417545 : Total = 5155079632 bytes File Size = 487469956 *
* : : Tree compression factor = 10.58 *
******************************************************************************
*Br 0 :pin1 : cNBOF/L:NBOF/L:t_BOF/L:t_year/I:t_mon/I:t_day/I: *
* | t_secday/I:cspTemp/I:extTemp/I:boardTemp/I:Vbias1/I:Vbias2/I: *
* | amplitude/I:baseline/I:ADCVal/I:bAddr/I:totW/I:Width/I *
*Entries : 13417545 : Total Size= 1288762396 bytes File Size = 125576669 *
*Baskets : 7349 : Basket Size= 3764224 bytes Compression= 10.26 *
*............................................................................*
*Br 1 :pin2 : cNBOF/L:NBOF/L:t_BOF/L:t_year/I:t_mon/I:t_day/I: *
* | t_secday/I:cspTemp/I:extTemp/I:boardTemp/I:Vbias1/I:Vbias2/I: *
* | amplitude/I:baseline/I:ADCVal/I:bAddr/I:totW/I:Width/I *
*Entries : 13417545 : Total Size= 1288762396 bytes File Size = 130796781 *
*Baskets : 7349 : Basket Size= 3764224 bytes Compression= 9.85 *
*............................................................................*
Where the leaf “bAddr” contains six numbers 1, 2, ..., 6
and ADCVal
contains some values around 7000
, I am not going to describe all the variables but this will suffice to explain my problem.
When I plot using Board->Draw("pin1.bAddr")
or Board->Draw("pin2.ADCVal")
I see what I expect but when I use MakeClass()
that generates let’s say Board.h
and Board.C
, where Board.h
contains the following:
Long64_t pin1_cNBOF;
Long64_t pin1_NBOF;
Long64_t pin1_t_BOF;
Int_t pin1_t_year;
Int_t pin1_t_mon;
Int_t pin1_t_day;
Int_t pin1_t_secday;
Int_t pin1_cspTemp;
Int_t pin1_extTemp;
Int_t pin1_boardTemp;
Int_t pin1_Vbias1;
Int_t pin1_Vbias2;
Int_t pin1_amplitude;
Int_t pin1_baseline;
Int_t pin1_ADCVal;
Int_t pin1_bAddr;
Int_t pin1_totW;
Int_t pin1_Width;
Long64_t pin2_cNBOF;
Long64_t pin2_NBOF;
Long64_t pin2_t_BOF;
Int_t pin2_t_year;
Int_t pin2_t_mon;
...
etc.
If I use this class method and call the variable pin1_bAddr
what I get is strange, it’s around 7000
that looks exactly like ADCVal
. Same is true for all other variables, that is they all are jumbled up! Why is that so? How can I fix this?
Thanks a lot
_ROOT Version: 5.27/02
_Platform: Scientific Linux SL release 5.4 (Boron)
_Compiler: g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-50)