Missing method in the class reference


there is (in the source code (TChain.h)):

virtual Long64_t Process(TSelector *selector, Option_t *option="", Long64_t nentries=kBigNumber, Long64_t firstentry=0);

and implemented in TChain.cxx:

Long64_t TChain::Process(TSelector* selector, Option_t* option, Long64_t nentries, Long64_t firstentry)

which is missing at:


cheers, Asen.

Hi arsen,

It’s hidden from CINT (#ifndef CINT) and thus also from ROOT’s doc. I have no idea why CINT is not allowed to see this function, but I’ll find out.

Cheers, Axel.


the reason it’s hidden from CINT is because users should not be able to pass an interpreted class deriving from the compiled TSelector through CINT - TChain::Process() will not be able to call the functions re-implemented in the derived, interpreted class, as the vtable doesn’t span the compiled-interpreted border. Instead, TTree::Process() has a hand crafted implementation for CINT. That’s the overload that claims to take a void*. We will try to fix that one to take a TSelector*. The implementation in TChain will continue to be hidden from CINT, but the doc will at least contain the (proper) one from TTree.

I hope that explanation is satisfying for you.

Cheers, Axel.