> The execution stops exactly at the line where is
> fChain->GetTree()->GetEntry(entry)
This is mostly likely not what you mean.
What is 'entry'? Is the the entry number in the chain or inside the underlying local tree?
Did you run fChain->LoadTree before calling fChain->GetTree? (Otherwise this will return null).
I think you mean:
fChain->GetEntry(entry);
Cheers,
Philippe
-----Original Message-----
From: Alberto Pulvirenti [mailto:Alberto.Pulvirenti_at_ct.infn.it]
Sent: Thursday, June 22, 2006 6:20 AM
To: Philippe Canal
Cc: 'Alberto Pulvirenti'; 'ROOT Mailin List'
Subject: RE: [ROOT] MakeSelector
Dear Philippe,
thanks for the help, but I encountered a problem. When I do what you say, that is commenting lines of splitted branches and loading library, etc, I get segmentation faults whenever the Process method tries to get an entry. The execution stops exactly at the line where is
fChain->GetTree()->GetEntry(entry)
maybe this can mean that I made some trivial mistake while doing my modifications?
Cheers,
Alberto
Tel :+39-095-3785286
On Fri, 19 May 2006, Philippe Canal wrote:
> Hi Alberto,
>
> Explictly the current MakeSelector mechanism is 'devolving' the
> class layout to make that accessible without the original library.
> If you want to access the object you need to load the library
> and either use MakeProxy or uncomment the object data member and
> comment out ALL the other other data members refering to the content
> of the object AND comment out the line SetMakeClass(1) (or similar).
>
> By reducing the split level you would reduce the amount of data field
> useable by the current MakeSelector mechanism, you would also loss
> performance (speed and compression) and still you would need to hand
> modify the result of MakeSelector (but having less to comment out :) ).
>
> Cheers,
> Philippe.
>
> -----Original Message-----
> From: owner-roottalk_at_pcroot.cern.ch [mailto:owner-roottalk_at_pcroot.cern.ch]
> On Behalf Of Alberto Pulvirenti
> Sent: Friday, May 19, 2006 3:51 AM
> To: ROOT Mailin List
> Subject: [ROOT] MakeSelector
>
> Dear ROOTers,
>
> I have a question about the TTree::MakeSelector() method.
> I had a TTree with a unique branch containing objects of a ROOT-derived
> type, say it "class".
> When I created the selector by TTree::MakeSelector(), I checked the list
> of selector data members which define the object which is linked to
> TTree branches in order to be filled by TTree::GetEntry(). I obtained
> that many data members were created instead of just one of the type
> "class". All these objects were datamembers of "class", which were
> treated as independent branches, instead of the one which I created in
> the beginning.
>
> There was also an object declared as "class", but it was commented.
>
> I supposed that this is due to the fact that I filled the TTree with a
> large split value. Is that hypothesis right?
> What happens if I create TTree branches with split = 0 or split = 1?
>
> Thanks and best regards,
>
> Alberto
>
>
>
Received on Thu Jun 22 2006 - 12:17:40 MEST
This archive was generated by hypermail 2.2.0 : Mon Jan 01 2007 - 16:31:59 MET