Fixed raw reading and writing. Problem was, that Cvetan had
authorcholm <cholm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 7 Feb 2008 16:29:43 +0000 (16:29 +0000)
committercholm <cholm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 7 Feb 2008 16:29:43 +0000 (16:29 +0000)
commit625d7886ba7f7956c558b80792c2a9da4acb0b5d
tree81c842808d4c349dc26d322798f1ac109c66eb1e
parent69e022afdc4dfce42dda772ba649087bbd424d8b
Fixed raw reading and writing.   Problem was, that Cvetan had
put the default to read raw data with 8x32bit common data
header and the variable size RCU trailer.   However, none
of the RCU firmware that we have available to us does this,
so all raw data that we would write could not be read by
AliAltroRawStreamer!

From Cvetans comments it seems that the TPC has some
RCU firmware that does write an 8x32bit common data
header and the RCU trailers - I guess someone is not
telling us the full story here - or the TPC is in
fact using some other piece of code to read the
data with!

In any case, I implemented code in AliFMDParameters to
set and get the mode for the raw reading.   Since
AliAltroBuffer _always_ writes the newer format (CDH of
8x32bit and RCU trailer) one should leave the defaults in
AliFMDParameters when reading simulated raw data.
However, when reading raw data from the real detectors, one
need to use the old format (7x32bit CDH and no RCU trailer),
which is done by doing

   AliFMDParameters* p = AliFMDParameters::Instance();
   p->UseRcuTrailer(false);
   p->UseCompleteHeader(false);

Also implemented code in AliFMDRawReader to correctly
skip the first 19 timebins (14 before the trigger, and
5 "extra" timebins from some funny stuff in the ALTROs).
Similarly, the AliFMDRawWriter will start the data in
timebin 19 (counting from 0).
FMD/AliFMDParameters.cxx
FMD/AliFMDParameters.h
FMD/AliFMDRawReader.cxx
FMD/AliFMDRawWriter.cxx
FMD/scripts/ReadRaw.C