Hi,
( In our usual pre-planning :) ), this has been fixed 5 days ago
and the fix is available in the head of the CVS repository.
The problem was that MakeClass was not creating the correct code
in the case of a TClonesArray containing object of a class that has
variable size array. As you pointed out it should have had a '*' in
the date member definition. However this is not sufficient since the
reading part also needed to be fixed.
Cheers,
Philippe.
-----Original Message-----
From: owner-roottalk@pcroot.cern.ch
[mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Elena Vataga
Sent: Wednesday, April 17, 2002 7:23 AM
To: Rene Brun
Cc: roottalk@pcroot.cern.ch
Subject: [ROOT] aceess to array elements from TObject
Hello rooters!
I used the following arrays in my TObject:
class TCMXmuon: public TObject {
protected:
//---------------------------------------------------------------
// data members
//---------------------------------------------------------------
TLorentzVector lvec;
Int_t DetCode; // (1)CMU (2)CMP (3)CMU+CMP (4)CMX (5)BMU
....
Int_t nt0; // number of inner times
Int_t* mT0; //[nt0] Mean Time in inner layer
Int_t* C0; //[nt0] Counter in inner layer
Float_t* T0; //[nt0] Time in inner layer
...
Int_t nt1; // number of outer times
Float_t* T1; //[nt1] Time in outer layer
My question is: how can I access first, second etc member of
my array variables (T0[0], T0[1] etc) inside root - they look like flat
numbers and not array?
*............................................................................*
*Br 70 :MUO.nt0 : nt0[MUO_] *
*Entries : 4971 : Total Size= 47305 bytes File Size = 12009 *
*Baskets : 1 : Basket Size= 64000 bytes Compression= 3.94 *
*............................................................................*
*Br 71 :MUO.nt1 : nt1[MUO_] *
*Entries : 4971 : Total Size= 47305 bytes File Size = 11753 *
*Baskets : 1 : Basket Size= 64000 bytes Compression= 4.02 *
*............................................................................*
*Br 72 :MUO.mT0 : mT0[MUO_] *
*Entries : 4971 : Total Size= 49127 bytes File Size = 13721 *
*Baskets : 1 : Basket Size= 64000 bytes Compression= 3.58 *
*............................................................................*
*Br 73 :MUO.mT1 : mT1[MUO_] *
*Entries : 4971 : Total Size= 48567 bytes File Size = 13918 *
*Baskets : 1 : Basket Size= 64000 bytes Compression= 3.49 *
*............................................................................*
*Br 74 :MUO.C0 : C0[MUO_] *
*Entries : 4971 : Total Size= 49126 bytes File Size = 18567 *
*Baskets : 1 : Basket Size= 64000 bytes Compression= 2.65 *
*............................................................................*
I tried to MakeClass from my tree and I am getting in the header:
Int_t MUO_nt0[kMaxMUO]; //[MUO_]
Int_t MUO_nt1[kMaxMUO]; //[MUO_]
Int_t MUO_mT0[kMaxMUO]; //[MUO_]
Int_t MUO_mT1[kMaxMUO]; //[MUO_]
Int_t MUO_C0[kMaxMUO]; //[MUO_]
Int_t MUO_C1[kMaxMUO]; //[MUO_]
Float_t MUO_T0[kMaxMUO]; //[MUO_]
Float_t MUO_T1[kMaxMUO]; //[MUO_]
so it is not an array?
Will be most grateful for any advice,
regards,
Elena
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:50 MET