]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRIGGER/AliTRIPreprocessor.cxx
Update master to aliroot
[u/mrichter/AliRoot.git] / TRIGGER / AliTRIPreprocessor.cxx
index 30819a6d38b21c3c3f05e01d6975f6c1bd9e4792..a0d93c5d2912af5c8e98c1d9c30f4db174a0f702 100644 (file)
@@ -29,6 +29,9 @@
 #include "AliCDBEntry.h"
 #include "AliLog.h"
 #include "AliITSTriggerConditions.h"
+
+#include "AliTOFFEEReader.h"
+#include "AliTOFTriggerMask.h"
           
 #include <TTimeStamp.h>
 #include <TObjString.h>
@@ -58,6 +61,7 @@ AliTRIPreprocessor::AliTRIPreprocessor(AliShuttleInterface* shuttle) :
        //
        
        AddRunType("PHYSICS");
+       AddRunType("STANDALONE_PULSER");
 }
 
 //______________________________________________________________________________________________
@@ -107,11 +111,36 @@ UInt_t AliTRIPreprocessor::Process(TMap* /*dcsAliasMap*/)
        typedef Short_t (AliTRIPreprocessor::*AliProcessTriggerData)();
        const AliProcessTriggerData processTriggerDataArray[AliTRIPreprocessor::kNDetectorsMap]= { 
                &AliTRIPreprocessor::ProcessSPDTriggerData,
-               0,
-               0,
-               0,
-               0,
-               &AliTRIPreprocessor::ProcessTOFTriggerData,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; 
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessTOFTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData,
+               &AliTRIPreprocessor::ProcessEmptyTriggerData}; 
 
 
        // getting the list of triggering detectors from DAQ logbook
@@ -124,7 +153,10 @@ UInt_t AliTRIPreprocessor::Process(TMap* /*dcsAliasMap*/)
                  for (Int_t i = 0; i<length; i++){
                        AliDebug(2,Form("%d-th bit = %c in index %d",i,triggerDetectorMask[length-1-i],length-1-i));
                        if (triggerDetectorMask[length-1-i] == '1'){
-                               AliInfo(Form("Processing Trigger data for %s",fgkDetectorsMapName[i]));
+                               Log("****************************************");
+                               Log(Form("Processing Trigger data for %s",fgkDetectorsMapName[i]));
+                               Log("****************************************");
+                              
                                result+=(this->*processTriggerDataArray[i])();
                        }
                }
@@ -146,7 +178,7 @@ Short_t AliTRIPreprocessor::ProcessSPDTriggerData()
 
        // Read new conditions from dcs fxs
        AliITSTriggerConditions* newCond = new AliITSTriggerConditions();
-       TString fxsID = "PITConditions";
+       TString fxsID = "pit_conditions";
        TList* list = GetFileSources(kDCS, fxsID.Data());
        if (!list) {
                AliError("FXS file not found.");
@@ -218,8 +250,40 @@ Short_t AliTRIPreprocessor::ProcessTOFTriggerData()
        //
 
        Log("************** Processing TOF Trigger data... **************");
+
+       const char * nameFile = GetFile(kDCS,"TofFeeLightMap", ""); 
+       AliInfo(Form("toffeeLight file name = %s",nameFile));
+       if (nameFile == NULL) {
+         return 1;
+       } 
+       AliTOFFEEReader feeReader;
+       feeReader.LoadFEElightConfig(nameFile);
+       feeReader.ParseFEElightConfig();
+       AliTOFTriggerMask triggerMask;
+       triggerMask.SetTriggerMaskArray(feeReader.GetTriggerMaskArray());
+
+       AliCDBMetaData metaData;
+       metaData.SetBeamPeriod(0);
+       metaData.SetResponsible("Roberto Preghenella");
+       metaData.SetComment("TOF trigger mask");
+       if (!Store("TOF", "TriggerMask", &triggerMask, &metaData, 0, kTRUE)) {
+         Log("error while storing TriggerMask object");
+         return 1;
+       }
+       Log("TriggerMask object successfully stored");
+
        Log("************************* ...done.*************************");
        return 0;
 }
+//______________________________________________________________________________________________
+Short_t AliTRIPreprocessor::ProcessEmptyTriggerData() 
+{
+       //
+       // Processing TOF Trigger Data
+       //
+
+       Log("************** Trigger data Processing not yet implemented **************");
+       return 0;
+}