From: Christian Holm Christensen (cholm@hehi03.nbi.dk)
Date: Wed Dec 18 2002 - 13:17:52 EST
Hi Djam, Djamel Ouerdane <ouerdane@nbi.dk> wrote concerning BrTrack problem [Tue, 17 Dec 2002 20:27:41 +0100 (CET)] ---------------------------------------------------------------------- > Hi, > > It's not the first time I notice a problem with the BrTrack class > streamer. Each time I open a dst in bratroot, I get a warning about the > class version. > Today, I checked out the newest brat and merged my changes in the tof > software and in other places but NOT in BrTrack. > > when I tried a reco test from local track files (data01 and 02) to DSTs, I > got this message : > > Error in <TBuffer::CheckByteCount>: object of class BrTrack read too few > bytes: 102 instead of 166 > > Warning in <TBuffer::CheckByteCount>: BrTrack::Streamer() not in sync with > data on file, fix Streamer() > > It makes the reco job crash. What is going on with this class ? > I can see in the header file that nothing changed since august 2001! > In the cxx file, the only change is about iostream (cout). Any clue ? CINT makes a checksum based on the member, etc. of a class, and ROOT matches that against the read checksum. If those are not the same, well, you can get errors. Hence, when going from ostream operator<<(std:ostream& o, const BrTrack& t); to std::ostream operator<<(std::ostream& o, const BrTrack& t); or similar, you _may_ get a different checksum. The solution to _that_ problem is to bump the class version. Yours, ___ | Christian Holm Christensen |_| | ------------------------------------------------------------- | | Address: Sankt Hansgade 23, 1. th. Phone: (+45) 35 35 96 91 _| DK-2200 Copenhagen N Cell: (+45) 24 61 85 91 _| Denmark Office: (+45) 353 25 305 ____| Email: cholm@nbi.dk Web: www.nbi.dk/~cholm | |
This archive was generated by hypermail 2.1.5 : Wed Dec 18 2002 - 13:20:00 EST