]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/AliTOFPreprocessor.h
Added code in preprocessor to handle output from new laser drift velocity DA
[u/mrichter/AliRoot.git] / TOF / AliTOFPreprocessor.h
index e8e525ecc8b3d7b962a3047b121afa0b040b0582..47d2f3c281abaf27f74f94cb841ea6ab6428356e 100644 (file)
@@ -13,6 +13,9 @@
 // and DAQ histograms to compute online calibration constants
 
 class AliTOFDataDCS;
+class AliTOFLvHvDataPoints;
+class AliTOFChannelOnlineStatusArray;
+class AliTOFChannelOnlineArray;
 class TObjArray;
 class TH2S;
 
@@ -22,30 +25,51 @@ class AliTOFPreprocessor : public AliPreprocessor
     AliTOFPreprocessor(AliShuttleInterface* shuttle);
     virtual ~AliTOFPreprocessor();
     void   SetStoreRefData(Bool_t in){fStoreRefData=in;};
-    Bool_t GetStoreRefData() const {return fStoreRefData;};
+    Bool_t GetStoreRefData() const {return fStoreRefData;}
+    void SetFDRFlag(Bool_t flag) {fFDRFlag = flag;}
+    Bool_t GetFDRFlag() const {return fFDRFlag;}
 
   protected:
     virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime);
-    virtual UInt_t Process(TMap* dcsAliasMap);
+    virtual UInt_t Process(TMap *dcsAliasMap);
+    virtual Bool_t ProcessDCS();
 
   private:
     AliTOFPreprocessor(const AliTOFPreprocessor & proc); // copy constructor
     AliTOFPreprocessor& operator=(const AliTOFPreprocessor & proc);
-    UInt_t ProcessDCSDataPoints(TMap* dcsAliasMap);
+    UInt_t ProcessDCSDataPoints(TMap *dcsAliasMap);
+    UInt_t ProcessHVandLVdps(TMap *dcsAliasMap);
     UInt_t ProcessOnlineDelays();
     UInt_t ProcessPulserData();
     UInt_t ProcessNoiseData();
+    UInt_t ProcessFEEData(); // dummy, for the time being
+    UInt_t ProcessT0Fill();
+    UInt_t ProcessNoiseCalibTrg();
+    UInt_t ProcessReadout();
+
+    void FillWithCosmicCalibration(AliTOFChannelOnlineArray *cal); // fill with cosmic calibration
+    void FillWithCableLengthMap(AliTOFChannelOnlineArray *cal); // fill with cable-lenght map
+
+    static const Int_t fgkBinRangeAve;       // number of bins where to 
+                                             // calculate the mean
+    static const Double_t fgkIntegralThr;    // min number of entries per channel 
+                                             // to perform calculation of delay
+    static const Double_t fgkThrPar;         // parameter used to trigger the 
+                                             // calculation of the delay
+    AliTOFDataDCS *fData;                    // CDB class that stores the data
+    AliTOFLvHvDataPoints *fHVLVmaps;         // HV and LV status maps
+    AliTOFChannelOnlineArray *fCal;          // TOF Calibration object
+    Int_t fNChannels;                        // number of TOF channels
+    Bool_t fStoreRefData;                    // Flag to decide storage of Ref Data
+    Bool_t fFDRFlag;                         // Flag for FDR runs 
+    AliTOFChannelOnlineStatusArray *fStatus; // Array with TOF channels' status
+    Int_t *fMatchingWindow;                  //[fNChannels]
+                                             // Array of matching windows (one per channel) - to be used in noise runs
+    Int_t *fLatencyWindow;                   //[fNChannels]
+                                             // Array of latency windows (one per channel)
+    Bool_t fIsStatusMapChanged;              // flag to check is the status map OCDB has to be updated
+
+    ClassDef(AliTOFPreprocessor, 1);
 
-    static const Int_t fgkBinRangeAve;   // number of bins where to 
-                                         // calculate the mean
-    static const Double_t fgkThrPar;     // parameter used to trigger the 
-                                         // calculation of the delay
-    AliTOFDataDCS *fData;                // CDB class that stores the data
-    TH2S *fh2;                           // TH2S from DAQ for histograms 
-                                         // for delays  
-    TObjArray *fCal;                     // TOF Calibration object
-    Int_t fNChannels;                    // number of TOF channels
-    Bool_t fStoreRefData;                // Flag to decide storage of Ref Data
-    ClassDef(AliTOFPreprocessor, 3);
 };
 #endif