once again about TClonesArray

Pasha Murat (murat@cdfsga.fnal.gov)
Wed, 23 Dec 1998 00:43:54 GMT


Hi Rooters,
I'm not sure everybody know this so I believe that it will be very
interesting to see what Rene/Fons would say on the subject.
I recently rediscovered that in order to store the objects of a
given class, say, "A" (which inherits from TObject), in TClonesArray a user
has to run rootcint and to generate a dictionary for this class.
Also if one wants to use TClonesArray is is necesasry to instantiate a
TROOT object.

I recognize that TClonesArray is a very smart and intelligent container but at
first sight it seems to be a little bit of an overkill:

- it is clear that one needs a dictionary to browse the object or to do I/O
in split mode;
- it also looks like the significant part of functionality - namely the
functionality of container class itself plus the I/O in sequential mode does
not require a dictionary to be generated.

So my question is if there are serious reasons to disable the functionality of
TClonesArray by 100% when a dictionary for the corresponding class is not
available and the whole ROOT system is not initialized?

regards, pasha