?: Re: ?: iterate in TClonesArray

Dirk Meier (Dirk.Meier@cern.ch)
Wed, 18 Mar 1998 08:56:59 +0100 (MET)


Hi Pasha,

your answer solved the problem partially.
When I try to access the next element of
the TClonesArray I still get segmentation fault:

root [0] TClonesArray* tps = new TClonesArray("TH1F",5);
root [1] TH1F* dummy0 = new((*tps)[0]) TH1F("bname0","btitle0",40,-20.,200);
root [2] TH1F* dummy1 = new((*tps)[1]) TH1F("bname1","btitle1",40,-20.,200);
root [3] tps[0] // just to check whether it is there
(class TClonesArray)1077780400
root [4] tps[1]
(class TClonesArray)1077780448
root [5] tps[2]
(class TClonesArray)1077780496
root [6] tps[0]->Draw(); // now draw the first histogramm of the array
Warning in <MakeDefCanvas>: creating a default canvas with name c1

// o.k. this works, but drawing the next element gives

root [7] tps[1]->Draw();

*** Break *** segmentation violation

( 0) 0xc1667d40 StackTrace__11TUnixSystemFv + 0x28
[/afs/cern.ch/na49/library/local/ROOT/hpux10aCC/root/lib/libUnix.sl]
( 1) 0xc16667f0 DispatchSignals__11TUnixSystemF8ESignals + 0xd0
[/afs/cern.ch/na49/library/local/ROOT/hpux10aCC/root/lib/libUnix.sl]

thanks for any hints

Dirk