Hi Jens,
Use:
fChain->IsA(), TChain::Class(), TTree::Class());
instead of
fChain->Class(), TChain::Class(), TTree::Class());
Rene Brun
On Tue, 25 Feb
2003, Jens Ivar Jordre wrote:
> Howdy rooters.
>
> Processing some trees with a class inheriting from a TSelector I noticed
> some unexpected RTTI info. I've made the attached MySelector which
> illustrates the problem on ROOT checked out from CVS yesterday (Feb.
> 24th) and compiled on an x86 running RH8.0.
>
> First I create an instance of TChain and add two files to it, the trees
> in the files and the instance of TChain having the same name. Then I
> call TTree::MakeSelector(<selector name>), i.e. the member of my chain.
>
> The only lines I add to the output from
> TTree::MakeSelector("MySelector") are the following lines at the end of
> MySelector::Begin(TTree* tree):
>
> Info("Begin", "fChain is %s", fChain->ClassName());
> Info("Begin", "\n\tfChain->Class() = 0x%x
> \n\tTChain::Class() = 0x%x
> \n\tTTree::Class() = 0x%x",
> fChain->Class(), TChain::Class(), TTree::Class());
>
> When I run TChain::Process("MySelector.C") the output from
> MySelector::Begin(TTree* tree) is the following:
> ....
> Info in <TSelector::Begin>: fChain is TChain
> Info in <TSelector::Begin>:
> fChain->Class() = 0x8c59948
> TChain::Class() = 0x916d3d0
> TTree::Class() = 0x8c59948
> ....
>
> So, on the one hand fChain clames to be an instance of TChain (the first
> line) while its TClass pointer indicates that it is an instance of
> TTree. Is this the intention?
>
> Best wishes from
> Jens Ivar
>
>
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:09 MET