+}
+
+//____________________________________________________________________________
+
+UInt_t AliPMDDDLRawData::ComputeParity(UInt_t baseword)
+{
+ // Generate the parity bit
+
+ UInt_t count = 0;
+ for(Int_t j=0; j<29; j++)
+ {
+ if (baseword & 0x01 ) count++;
+ baseword >>= 1;
+ }
+ UInt_t parity = count%2;
+ return parity;
+}
+//____________________________________________________________________________
+void AliPMDDDLRawData::DdlMapping(Int_t iddl, Int_t imodule,
+ Int_t &beginPatchBus, Int_t &endPatchBus,
+ Int_t patchBusNo[], Int_t mcmperBus[],
+ Int_t startRowBus[], Int_t endRowBus[],
+ Int_t startColBus[], Int_t endColBus[])
+{
+ // DDL Mapping fetching from mapping database
+
+ beginPatchBus = fMapData->GetBeginPatchBus(iddl,imodule);
+ endPatchBus = fMapData->GetEndPatchBus(iddl,imodule);
+
+ for(Int_t ibus = beginPatchBus; ibus < endPatchBus+1; ibus++)
+ {
+ patchBusNo[ibus] = ibus;
+ mcmperBus[ibus] = fMapData->GetMcmperBus(iddl,ibus);
+ startRowBus[ibus] = fMapData->GetStartRowBus(iddl,ibus);
+ startColBus[ibus] = fMapData->GetStartColBus(iddl,ibus);
+ endRowBus[ibus] = fMapData->GetEndRowBus(iddl,ibus);
+ endColBus[ibus] = fMapData->GetEndColBus(iddl,ibus);
+ }
+