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