reflex with TObject+ClassDef classes

From: Brett Viren <bv_at_bnl.gov>
Date: Tue, 12 Oct 2010 17:29:56 -0400


Hi,

Using: ROOT 5.26/00b on 64 bit Sci.Linux, GCCXML 0.9.0_20100428 and g++ 4.3.2.

I'm trying to switch a ROOT application from using rootcint to using Reflex dictionaries. The application code is linked to one shared library holding the TObject-based classes and another with the Reflex dictionaries. The code is built using LCGCMT and in particular generates the dictionaries via the "reflex_dictionary" CMT pattern.

Now, my problem:

The Reflex dictionaries provide all required symbols except one method, that is apparently declared in ClassDef(), namely:

  ROOT::GenerateInitInstance(WCSimRootCherenkovHit const*)'

Here WCSimRootCherenkovHit is one of the TObject-based classes in question. Checking back to the old rootcint generated dictionary code I see it indeed provides these methods.

A bit of searching provided some relevant info[1][2], but nothing that helped.

Any ideas?

Thanks,
-Brett.

[1] http://root.cern.ch/root/v524/Version524.news.html
Which states: "Reflex: Full support for ClassDef() macros with the full benefits of faster I/O due to a direct access instead of a search in a map for writing out objects."

[2] http://root.cern.ch/root/roottalk/roottalk09/1116.html
Which states: must have ClassDef() based on TObject.

Received on Tue Oct 12 2010 - 23:30:03 CEST

This archive was generated by hypermail 2.2.0 : Wed Oct 13 2010 - 05:50:01 CEST