Cint dictionaries VS LCG dictionaries: persistency

Hi Rooters,

I developed a class deriving from the TParticle - KAParticle(please see the attached code + xml file for the lcg generation).
The problem is that if i try to write an instance of this class on a TFile a get a strange behaviour.
While with the CINT dictionaries everything is fine, with the LCG dictionaries I find in the Rootfile only a TParticle object.

Am I doing a mistake somewhere?

Cheers,
Danilo

Hi,

when do you #define STANDALONE?

Cheers, Axel.

Hi Axel,

the STANDALONE is in my makefile to be able to switch between the LCG-Reflex and cint dictionaries not changing the code.

Cheers,
Danilo

Hi Danilo,

Which version of ROOT are you using?

Cheers,
Philippe.

Hi Philippe,

5.22. Sorry for not being complete before :frowning:

Cheers,
D

Hi,

so you are saying that you #define STANDALONE only for rootcint? That won’t work. genreflex can (and needs to!) handle ClassDef.

Note that genreflex’s treatment of ClassDef only really works in v5.24 (support is very limited in v5.22).

Cheers, Axel.

Hi Axel,

thanks for the hint. This works now for single objects in RootFiles.

I am still encountering some problems (seg fault triggered by ROOT::Cintex::ROOTClassEnhancerInfo::IsA ()) when I use the TTree::Fill function to write in a branch a TClonesArray filled with my custom class objects.
This might be unrelated, in any case. I’ll investigate this further and eventually report.

Cheers,

Danilo