Re: Writing data with rootcint dictionaries, reading with Reflex dictionaries?

From: Philippe Canal <pcanal_at_fnal.gov>
Date: Mon, 12 Dec 2011 21:06:41 -0600


Hi Brett,

What does the header claim 'fTracks' to be?

Philippe.

On 12/12/11 7:30 PM, Brett Viren wrote:
> Hi,
>
> Root 5.32/00, GCC 4.6.2, Debian GNU/Linux, x86.
>
> I'm trying to migrate some TTree producing code from rootcint to Reflex
> dictionaries. When I try to read some old file produced by the
> rootcint-based code using the Reflex version of the code I get some
> warnings and some errors. If only rootcint dictionaries or only
> Reflex ones are used for both producing and consuming there is no
> problem.
>
> The classes in question inherit from TObject. For the Reflex-based
> version the ClassImp() is not included and when reading I call
> Cintext::Enable() before loading the Reflex dictionaries into ROOT.
>
> Is this mixing that I'm attempting supported?
>
> The warnings have to do with Rtypes apparently changing into plain old
> data types. For example:
>
> ------------------------------------------------------------------------
> Warning in<TStreamerInfo::CompareContent>: The following data member of
> the on-file layout version 1 of class 'WCSimRootTrigger' differs from
> the in-memory layout version 1:
> Int_t fMode; //
> vs
> int fMode; //
> ------------------------------------------------------------------------
>
> The error is that apparently a "TClonesArray*" is changed to a
> "TClonesArray".
>
> ------------------------------------------------------------------------
> Warning in<TStreamerInfo::BuildOld>: Cannot convert
> WCSimRootTrigger::fTracks from type:TClonesArray* to type:TClonesArray,
> skip element
> ------------------------------------------------------------------------
>
> Thanks,
> -Brett.
>
>
Received on Tue Dec 13 2011 - 04:06:50 CET

This archive was generated by hypermail 2.2.0 : Tue Dec 13 2011 - 17:50:02 CET