X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONRawStreamTriggerHP.cxx;h=e944c839df38a0b3aadc7324000fa5299d7b85ec;hb=1535db975ca19b694d1d3f269ba3a6dde46de5f6;hp=1e4df43d542aef8d20e310101529d946a0941bac;hpb=481d806424563b7b3f86a7f07f11afba975efa82;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONRawStreamTriggerHP.cxx b/MUON/AliMUONRawStreamTriggerHP.cxx index 1e4df43d542..e944c839df3 100644 --- a/MUON/AliMUONRawStreamTriggerHP.cxx +++ b/MUON/AliMUONRawStreamTriggerHP.cxx @@ -217,12 +217,15 @@ Bool_t AliMUONRawStreamTriggerHP::NextDDL() Swap(reinterpret_cast(fBuffer), dataSize / sizeof(UInt_t)); // Swap needed for mac power pc. #endif + // Check if this is a scalar event. + bool scalerEvent = (GetReader()->GetDataHeader()->GetL1TriggerMessage() & 0x1) == 0x1; + bool result = false; try { // Since we might allocate memory inside OnNewBuffer in the event // handler we need to trap any memory allocation exception to be robust. - result = fDecoder.Decode(fBuffer, dataSize); + result = fDecoder.Decode(fBuffer, dataSize, scalerEvent); fHadError = (result == true ? kFALSE : kTRUE); } catch (const std::bad_alloc&) @@ -325,17 +328,17 @@ AliMUONDDLTrigger* AliMUONRawStreamTriggerHP::GetDDLTrigger() const } fDDLObject->AddRegHeader(regHeader); - const AliLocalStruct* ls = rh->GetFirstLocalStruct(); - while (ls != NULL) + const AliLocalStruct* lstruct = rh->GetFirstLocalStruct(); + while (lstruct != NULL) { // Copy local structure and scalars and add everything into DDL object. - memcpy(localStruct.GetData(), ls->GetData(), sizeof(AliMUONLocalInfoStruct)); - if (ls->GetScalars() != NULL) + memcpy(localStruct.GetData(), lstruct->GetData(), sizeof(AliMUONLocalInfoStruct)); + if (lstruct->GetScalars() != NULL) { - memcpy(localStruct.GetScalers(), ls->GetScalars(), sizeof(AliMUONLocalScalarsStruct)); + memcpy(localStruct.GetScalers(), lstruct->GetScalars(), sizeof(AliMUONLocalScalarsStruct)); } fDDLObject->AddLocStruct(localStruct, iReg); - ls = ls->Next(); + lstruct = lstruct->Next(); } }