Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Problem

Way back when, there were two ROOT collection classes:  TObjArray and TClonesArray.  TObjArrays had to be used for those objects that may allocate memory, as some of our MC and Recon objects do.  TClonesArray was more efficient, but reserved for those objects of fixed length.  And so..we used a mixture of TObjArrays and TClonesArrays.

...

Our quick fix, has been to increase the size of our fixed length arrays to allow for runs to carry on.  Not pretty but keeps us moving along.

 A Proposal

Meanwhile, TClonesArrays have evolved tsuch that they can contain objects that allocate memory.  Without this restriction, we could modify our ROOT structures to use TClonesArrays in all cases and ditch TObjArrays once and for all.  This affects MC, Digi, and Recon...so changes would involve mcRootData, digiRootData, reconRootData.