Pointer to a TSelector derived class

Dear ROOTers,

I’m trying to analyze a chain of Trees using a TSelector derived class.
I’m following the instructions at
http://root.cern.ch/download/doc/ROOTUsersGuideHTML/ch12s22.html

If I pass to the Process method the class file name ciro.C:

Long64_t Status = chain.Process("ciro.C+",ProcOption.Data());

everything seems to work properly (see the TestB.C macro attached).

I need to pass some values to my class at running time.
Following the instructions I defined a pointer to my class and
I passed it to the Process method:

ciro *CIRO = (ciro *)TSelector::GetSelector("ciro.C+");

Long64_t Status = chain.Process(CIRO,ProcOption.Data());

Now it seems to me that the Process method is not really executed anymore,
because there is no printout at all.

What am I missing ?

I attached the two macros TestA.C and TestB.C, and the class files ciro.h and ciro.C.
The input file is a bit too large. I put it in eus35xl.to.infn.it/download/ciro/
You can run the macros with .x TestA.C(“inputpath”) where inputpath is the directory where
the input file is.

I’m using root version 5.34/04 on a linux pc running ubuntu
Linux #74-Ubuntu SMP Thu Jun 6 19:43:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Cheers,
ciro
ciro.C (5.89 KB)
ciro.h (13 KB)
TestB.C (3.64 KB)
TestA.C (3.63 KB)