Selection of ADC words updated to get correct calibration
authorcoppedis <coppedis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 16 Nov 2009 15:02:31 +0000 (15:02 +0000)
committercoppedis <coppedis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 16 Nov 2009 15:02:31 +0000 (15:02 +0000)
ZDC/AliZDCRawStream.cxx
ZDC/ZDCEMDda.cxx
ZDC/ZDCLASERda.cxx
ZDC/ZDCPEDESTALda.cxx

index 516bfa6..b75a80b 100644 (file)
@@ -406,7 +406,7 @@ Bool_t AliZDCRawStream::Next()
     
     if(fPosition>=fDataOffset){
       if((fBuffer&0xff000001) == 0xff000001){ // ************** Mapping
-        // DARC 1st datum @ fDataOffset+1 \ ZRC 1st valid datum fDataOffset=0
+        // DARC 1st datum @ fDataOffset+1 \ ZRC 1st valid datum @ fDataOffset=0
         if((fPosition==fDataOffset+1) || (fPosition==fDataOffset)){ 
           printf("\n\n ------ AliZDCRawStream -> Reading mapping from StartOfData event ------\n");
           fCurrentCh=0; fCurrScCh=0;   
@@ -782,7 +782,7 @@ Bool_t AliZDCRawStream::Next()
     // ********************************** VME SCALER DATA **********************************
     //  Reading VME scaler data 
     if(fIsScHeaderRead && fPosition>=fScStartCounter+1){ // *** Scaler word
-      fADCModule = kScalerGeo;
+      fADCModule = kScalerGeo; fIsADCDataWord = kFALSE;        
       fScEvCounter = fBuffer;
       Int_t nWords = (Int_t) (fScNWords);
       if(fPosition == fScStartCounter+nWords) fIsScHeaderRead = kFALSE;
@@ -792,7 +792,7 @@ Bool_t AliZDCRawStream::Next()
     // ******************************** TRIGGER SCALER DATA ********************************
     //  Reading trigger scaler data 
     if(fIsTriggerScaler && fPosition>=fTrigCountStart+1){
-      fADCModule = kTrigScales;
+      fADCModule = kTrigScales; fIsADCDataWord = kFALSE;       
       if(fPosition == fTrigCountStart+1)      fMBTrigInput = fBuffer;              
       else if(fPosition == fTrigCountStart+2) fCentralTrigInput = fBuffer;                 
       else if(fPosition == fTrigCountStart+3) fSCentralTrigInput = fBuffer;
@@ -811,7 +811,7 @@ Bool_t AliZDCRawStream::Next()
     // ******************************* TRIGGER HISTORY WORDS ******************************
     //  Reading trigger history
     if(fIsTriggerHistory && fPosition>=fTrigHistStart+1){
-       fADCModule = kTrigHistory;      
+       fADCModule = kTrigHistory; fIsADCDataWord = kFALSE;     
        if(fPosition == fTrigHistStart+1){
          fPileUpBit1stWord = (fBuffer & 0x80000000) >> 31;
          fL0Bit1stWord = (fBuffer & 0x40000000) >> 30;        
index 9d92b46..7b79fb7 100644 (file)
@@ -74,6 +74,7 @@ int main(int argc, char **argv) {
   // No. of ZDC cabled ch.
   int const kNChannels = 24;
   int const kNScChannels = 32;
+  Int_t kFirstADCGeo=0, kLastADCGeo=3;
 
   /* log start of process */
   printf("ZDC EMD program started\n");  
@@ -347,7 +348,8 @@ int main(int argc, char **argv) {
         
        if(rawStreamZDC->IsADCDataWord() && !(rawStreamZDC->IsUnderflow())
             && !(rawStreamZDC->IsOverflow()) && det!=-1
-            && (rawStreamZDC->GetADCGain() == 1)){ // Selecting LOW RES ch.s
+            && (rawStreamZDC->GetADCGain() == 1 && // Selecting LOW RES ch.s
+             rawStreamZDC->GetADCModule()>=kFirstADCGeo && rawStreamZDC->GetADCModule()<=kLastADCGeo)){
 
          //printf("  IsADCWord %d, IsUnderflow %d, IsOverflow %d\n",
          //  rawStreamZDC->IsADCDataWord(),rawStreamZDC->IsUnderflow(),rawStreamZDC->IsOverflow());
index c8b8ff4..b86eacd 100644 (file)
@@ -66,6 +66,7 @@ int main(int argc, char **argv) {
   int status = 0;
   int const kNChannels = 24;
   int const kNScChannels = 32;
+  Int_t kFirstADCGeo=0, kLastADCGeo=3;
   
   Int_t ich=0;
   Int_t adcMod[2*kNChannels], adcCh[2*kNChannels], sigCode[2*kNChannels];
@@ -337,8 +338,9 @@ int main(int argc, char **argv) {
          Int_t detector = rawStreamZDC->GetSector(0);
          Int_t sector = rawStreamZDC->GetSector(1);
          
-         if(rawStreamZDC->IsADCDataWord() && !(rawStreamZDC->IsUnderflow())
-            && !(rawStreamZDC->IsOverflow()) && detector!=-1){
+         if(rawStreamZDC->IsADCDataWord() && !(rawStreamZDC->IsUnderflow()) && 
+            !(rawStreamZDC->IsOverflow()) && detector!=-1 &&
+             rawStreamZDC->GetADCModule()>=kFirstADCGeo && rawStreamZDC->GetADCModule()<=kLastADCGeo){
            
            if(sector!=5){ // Physics signals
              if(detector==1)      index = sector;   // *** ZNC
index e1d07b6..616dfde 100644 (file)
@@ -68,6 +68,7 @@ int main(int argc, char **argv) {
   int status = 0;
   int const kNChannels = 24;
   int const kNScChannels = 32;
+  Int_t kFirstADCGeo=0, kLastADCGeo=3;
   
   Int_t ich=0;
   Int_t adcMod[2*kNChannels], adcCh[2*kNChannels], sigCode[2*kNChannels];
@@ -299,7 +300,7 @@ int main(int argc, char **argv) {
          }
          else{
             printf("ZDCPEDESTALda.cxx -> NO STANDALONE_PEDESTAL RUN raw data found\n");
-           printf("   Attributes: %x\n", message);
+           printf("   CDH attributes: %x\n", message);
             return -1;
          }
         }
@@ -339,7 +340,8 @@ int main(int argc, char **argv) {
         //printf(" rawData: det %d sec %d  value %d\n", 
         //     detector, sector,rawStreamZDC->GetADCGain(),rawStreamZDC->GetADCValue() );
         
-        if(rawStreamZDC->IsADCDataWord() && (detector!=-1)){
+        if((rawStreamZDC->IsADCDataWord()) && (detector!=-1) &&
+            (rawStreamZDC->GetADCModule()>=kFirstADCGeo && rawStreamZDC->GetADCModule()<=kLastADCGeo)){
          if(sector!=5){ // Physics signals
            if(detector==1) index = sector; // *** ZNC
            else if(detector==2) index = sector+5; // *** ZPC