Alexander, Sorry, I misunderstood your confusing mail. You should not use the notation [count] for vector<float>. We are working on extensions of TTree::Draw that understand STL collections. Wait a few more weeks. Rene Brun Alexander Bürger wrote: > > Hi Rene, > > No, I did not use MakeClass. I have a small program reading events from > a file and putting them into a TTree. To analyze the tree, I only use > tree viewer, either by clicking or with > > T->Draw("time"); > > Saying this with the > > float* time; //[count] > > gives me a spectrum of all the time values of the time array in all the > events in the tree. When I use > > vector<float> time; //[count] > > (or without //[...]) the spectrum just shows entries at channel zero > after calling > > T->Draw("time"); > > What I would like to have is vector<> and still a nice time spectrum > when doubleclicking in the tree viewer. > > Best wishes, > > Alexander > > > It looks like you have generated an analysis function via > > TTree::MakeClass or MakeSelector. > > The maximum dimension for [count] in the generated header file > > is based on the maximum value of count for the file used to generate the > > code. Simply extend this dimension when using it with a TChain > > such that the maximum value of [count] can be digested. > > >>to put my Events into a Tree I have a class similar to the following: > >> > >>class TEvent { > >> int count; > >> float *time; //[count]; > >>}; > >> > >>I like this, because in the tree viewer I can click and I get a nice time > >>spectrum. Unfortunately, I made some mistake in memory allocation so that > >>when I used TChain to chain several files, I did not get spectra, but only > >>segfaults, while with a single TFile it was working. > >> > >>Before fixing the problem I tried to use a class like > >> > >>class TEvent { > >> int count; > >> std::vector<float> time; //[count] > >>}; > >> > >>to circumvent manual memory allocation and also to avoid re-allocation of > >>the array for each event in reading from the tree. But I did not get this > >>to work in the tree viewer: the time spectrum just showed zeroes. > >> > >>How can I use the vector<> in a way compatible with the tree viewer?
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:15 MET