Q: Warning in <TClass::TClass>: no dictionary for class DETS available

Pasha Murat (murat@cdfsga.fnal.gov)
Sat, 25 Oct 1997 05:31:24 GMT


Hello,

I'm sorry, but this time I can't give an exact description of the problem.
Let me instead ask kind of general question - may be it has a pretty simple
answer.
I succedeed in writing out a "mini-DST" event with 37 different data banks
in it (it is a real CDF data event, that's why it is pretty difficult to revert
the problem back to a toy example).
Reading the data back however appeared to be quite independent thing: for
6 out of 37 banks ROOT complains:
--------------------------------------------------------------------------------
root [0] gSystem->Load("rec/bpad.so")
(int)0
root [1] TFile f("bpad.root")
root [2] TTree* tree = (TTree*) f.Get("Bpad")
Warning in <TClass::TClass>: no dictionary for class DETS available
Warning in <TClass::TClass>: no dictionary for class TL2Q available
Warning in <TClass::TClass>: no dictionary for class TAGZ available
Warning in <TClass::TClass>: no dictionary for class QTOW available
Warning in <TClass::TClass>: no dictionary for class CESQ available
Warning in <TClass::TClass>: no dictionary for class CPRQ available
--------------------------------------------------------------------------------
If however I ask about the definition of one of these classes, ROOT
finds something resonable:
--------------------------------------------------------------------------------
root [3] TClass* t3 = gROOT->GetClass("TAGZ");
root [4] .p t3
(class TClass*)0x108ffdf8
--------------------------------------------------------------------------------
The question is what does the diagnostics above mean - does it indicate
a problem with writing the data out or it has nothing to do with writing the data
but says that I did something wrong when generating ROOT dictionary and the
corresponding shared library instead?

Or it points to a mismatch between 2 definitions of the event format in the
executable which wrote the data and in the shared library used after that?

I'd appreciate any comments, thanks, Pasha.