// 4. Write raw data
AliACORDERawData rawdata;
- rawdata.WriteACORDERawData(Modules);
+ rawdata.WriteACORDERawData(Modules,(ndig > 1));
}
//_____________________________________________________________________________
return *this;
}
-void AliACORDERawData::WriteACORDERawData(Bool_t *b)
+void AliACORDERawData::WriteACORDERawData(Bool_t *b,Bool_t multi)
{
// set words
- SetACORDERawWords(b);
+ SetACORDERawWords(b,multi);
// open output file
const char *fileName = AliDAQ::DdlFileName("ACORDE",0);
fFile->Seekp(current_position);
}
-void AliACORDERawData::SetACORDERawWords(Bool_t *b)
+void AliACORDERawData::SetACORDERawWords(Bool_t *b,Bool_t multi)
{
// set modules
for (Int_t i=0;i<30;i++) {
if (b[i]) {
fWord9|=(1<<i);
- fWord11|=(1<<i);
+ if (multi) fWord11|=(1<<i);
}
if (b[i+30]) {
fWord10|=(1<<i);
- fWord12|=(1<<i);
+ if (multi) fWord12|=(1<<i);
}
} // end for
// set labels
virtual ~AliACORDERawData();
AliACORDERawData &operator=(const AliACORDERawData &r); // ass. op.
- void WriteACORDERawData(Bool_t *b);
- void SetACORDERawWords(Bool_t *b);
+ void WriteACORDERawData(Bool_t *b,Bool_t multi);
+ void SetACORDERawWords(Bool_t *b,Bool_t multi);
private:
Int_t bit = iChannel % 30;
if (rawStream.GetWord(index) & (1 << bit))
new ((*digitsArray)[digitsArray->GetEntriesFast()]) AliACORDEdigit(iChannel+1,0);
- // separate digits for single and multi muon signals !!!
- // TO BE DONE!!
- // if (GetWord(index+1) & (1 << bit))
- // new ((*digitsArray)[digitsArray->GetEntriesFast()]) AliACORDEdigit(iChannel+1,0); // multi-muon digit
}
}