Submit missing classes to previous release
authorcblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 21 Nov 2010 18:15:26 +0000 (18:15 +0000)
committercblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 21 Nov 2010 18:15:26 +0000 (18:15 +0000)
TRD/Cal/AliTRDCalDCSv2.cxx [new file with mode: 0644]
TRD/Cal/AliTRDCalDCSv2.h [new file with mode: 0644]

diff --git a/TRD/Cal/AliTRDCalDCSv2.cxx b/TRD/Cal/AliTRDCalDCSv2.cxx
new file mode 100644 (file)
index 0000000..919e553
--- /dev/null
@@ -0,0 +1,206 @@
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ *                                                                        *
+ * Author: The ALICE Off-line Project.                                    *
+ * Contributors are mentioned in the code where appropriate.              *
+ *                                                                        *
+ * Permission to use, copy, modify and distribute this software and its   *
+ * documentation strictly for non-commercial purposes is hereby granted   *
+ * without fee, provided that the above copyright notice appears in all   *
+ * copies and that both the copyright notice and this permission notice   *
+ * appear in the supporting documentation. The authors make no claims     *
+ * about the suitability of this software for any purpose. It is          *
+ * provided "as is" without express or implied warranty.                  *
+ **************************************************************************/
+
+/* $Id: AliTRDCalDCSv2.cxx 18952 2007-06-08 11:36:12Z cblume $ */
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+//  TRD calibration class v2 for TRD DCS parameters                             //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "AliTRDCalDCSv2.h"
+#include "AliTRDCalDCSFEEv2.h"
+#include "AliTRDCalDCSGTU.h"
+
+ClassImp(AliTRDCalDCSv2)
+  
+//_____________________________________________________________________________
+AliTRDCalDCSv2::AliTRDCalDCSv2()
+  :TNamed()
+  ,fGNumberOfTimeBins(-1)
+  ,fGConfigTag(-1)
+  ,fGSingleHitThres(-1)
+  ,fGThreePadClustThres(-1)
+  ,fGSelNoZS(-1)
+  ,fGTCFilterWeight(-1)
+  ,fGTCFilterShortDecPar(-1)
+  ,fGTCFilterLongDecPar(-1)
+  ,fGFastStatNoise(-1)
+  ,fGConfigVersion(0)
+  ,fGConfigName(0)
+  ,fGFilterType(0)
+  ,fGReadoutParam(0)
+  ,fGTestPattern(0)
+  ,fGTrackletMode(0)
+  ,fGTrackletDef(0)
+  ,fGTriggerSetup(0)
+  ,fGAddOptions(0)
+  ,fRunType("")
+  ,fStartTime(0)
+  ,fEndTime(0)
+  ,fFEEArr(new TObjArray(540))
+  ,fPTRArr(new TObjArray(6))
+  ,fGTUObj(new AliTRDCalDCSGTU())
+{
+  //
+  // AliTRDCalDCSv2 default constructor
+  //
+}
+
+//_____________________________________________________________________________
+AliTRDCalDCSv2::AliTRDCalDCSv2(const Text_t *name, const Text_t *title)
+  :TNamed(name,title)
+  ,fGNumberOfTimeBins(-1)
+  ,fGConfigTag(-1)
+  ,fGSingleHitThres(-1)
+  ,fGThreePadClustThres(-1)
+  ,fGSelNoZS(-1)
+  ,fGTCFilterWeight(-1)
+  ,fGTCFilterShortDecPar(-1)
+  ,fGTCFilterLongDecPar(-1)
+  ,fGFastStatNoise(-1)
+  ,fGConfigVersion(0)
+  ,fGConfigName(0)
+  ,fGFilterType(0)
+  ,fGReadoutParam(0)
+  ,fGTestPattern(0)
+  ,fGTrackletMode(0)
+  ,fGTrackletDef(0)
+  ,fGTriggerSetup(0)
+  ,fGAddOptions(0)
+  ,fRunType("")
+  ,fStartTime(0)
+  ,fEndTime(0)
+  ,fFEEArr(new TObjArray(540))
+  ,fPTRArr(new TObjArray(6))
+  ,fGTUObj(new AliTRDCalDCSGTU())
+{
+  //
+  // AliTRDCalDCSv2 constructor
+  //
+}
+
+//_____________________________________________________________________________
+AliTRDCalDCSv2::AliTRDCalDCSv2(const AliTRDCalDCSv2 &cd)
+  :TNamed(cd)
+  ,fGNumberOfTimeBins(-1)
+  ,fGConfigTag(-1)
+  ,fGSingleHitThres(-1)
+  ,fGThreePadClustThres(-1)
+  ,fGSelNoZS(-1)
+  ,fGTCFilterWeight(-1)
+  ,fGTCFilterShortDecPar(-1)
+  ,fGTCFilterLongDecPar(-1)
+  ,fGFastStatNoise(-1)
+  ,fGConfigVersion(0)
+  ,fGConfigName(0)
+  ,fGFilterType(0)
+  ,fGReadoutParam(0)
+  ,fGTestPattern(0)
+  ,fGTrackletMode(0)
+  ,fGTrackletDef(0)
+  ,fGTriggerSetup(0)
+  ,fGAddOptions(0)
+  ,fRunType("")
+  ,fStartTime(0)
+  ,fEndTime(0)
+  ,fFEEArr(new TObjArray(540))
+  ,fPTRArr(new TObjArray(6))
+  ,fGTUObj(new AliTRDCalDCSGTU())
+{
+  //
+  // AliTRDCalDCSv2 copy constructor
+  //
+}
+
+//_____________________________________________________________________________
+AliTRDCalDCSv2 &AliTRDCalDCSv2::operator=(const AliTRDCalDCSv2 &cd)
+{
+  //
+  // Assignment operator
+  //
+  if (&cd == this) return *this;
+
+  new (this) AliTRDCalDCSv2(cd);
+  return *this;
+}
+
+//_____________________________________________________________________________
+void AliTRDCalDCSv2::EvaluateGlobalParameters()
+{
+  //
+  // Do an evaluation of all global parameters
+  //
+
+  for(Int_t i=0; i<540; i++) {
+    AliTRDCalDCSFEEv2 *iDCSFEEObj;
+    iDCSFEEObj = GetCalDCSFEEObj(i);
+    if(iDCSFEEObj != NULL) {
+      if(iDCSFEEObj->GetStatusBit() == 0) {
+       // first, set the parameters of the first good ROC as global
+       fGNumberOfTimeBins    = iDCSFEEObj->GetNumberOfTimeBins();
+       fGConfigTag           = iDCSFEEObj->GetConfigTag();
+       fGSingleHitThres      = iDCSFEEObj->GetSingleHitThres();
+       fGThreePadClustThres  = iDCSFEEObj->GetThreePadClustThres();
+       fGSelNoZS             = iDCSFEEObj->GetSelectiveNoZS();
+       fGTCFilterWeight      = iDCSFEEObj->GetTCFilterWeight();
+       fGTCFilterShortDecPar = iDCSFEEObj->GetTCFilterShortDecPar();
+       fGTCFilterLongDecPar  = iDCSFEEObj->GetTCFilterLongDecPar();
+       fGFastStatNoise       = iDCSFEEObj->GetFastStatNoise();
+       fGConfigVersion       = iDCSFEEObj->GetConfigVersion();
+       fGConfigName          = iDCSFEEObj->GetConfigName();
+       fGFilterType          = iDCSFEEObj->GetFilterType();
+       fGReadoutParam        = iDCSFEEObj->GetReadoutParam();
+       fGTestPattern         = iDCSFEEObj->GetTestPattern();
+       fGTrackletMode        = iDCSFEEObj->GetTrackletMode();
+       fGTrackletDef         = iDCSFEEObj->GetTrackletDef();
+       fGTriggerSetup        = iDCSFEEObj->GetTriggerSetup();
+       fGAddOptions          = iDCSFEEObj->GetAddOptions();
+       break;
+      }
+    }
+  }
+
+  for(Int_t i=0; i<540; i++) {
+    AliTRDCalDCSFEEv2 *iDCSFEEObj;
+    iDCSFEEObj = GetCalDCSFEEObj(i);
+    if(iDCSFEEObj != NULL) {
+      if(iDCSFEEObj->GetStatusBit() == 0) {
+       // second, if any of the other good chambers differ, set the global value to -1/""
+       if(fGNumberOfTimeBins    != iDCSFEEObj->GetNumberOfTimeBins())    fGNumberOfTimeBins    = -2;
+       if(fGConfigTag           != iDCSFEEObj->GetConfigTag())           fGConfigTag           = -2;
+       if(fGSingleHitThres      != iDCSFEEObj->GetSingleHitThres())      fGSingleHitThres      = -2;
+       if(fGThreePadClustThres  != iDCSFEEObj->GetThreePadClustThres())  fGThreePadClustThres  = -2;
+       if(fGSelNoZS             != iDCSFEEObj->GetSelectiveNoZS())       fGSelNoZS             = -2;
+       if(fGTCFilterWeight      != iDCSFEEObj->GetTCFilterWeight())      fGTCFilterWeight      = -2;
+       if(fGTCFilterShortDecPar != iDCSFEEObj->GetTCFilterShortDecPar()) fGTCFilterShortDecPar = -2;
+       if(fGTCFilterLongDecPar  != iDCSFEEObj->GetTCFilterLongDecPar())  fGTCFilterLongDecPar  = -2;
+       if(fGFastStatNoise       != iDCSFEEObj->GetFastStatNoise())       fGFastStatNoise       = -2;
+       if(fGConfigVersion       != iDCSFEEObj->GetConfigVersion())       fGConfigVersion       = "mixed";
+       if(fGConfigName          != iDCSFEEObj->GetConfigName())          fGConfigName          = "mixed";
+       if(fGFilterType          != iDCSFEEObj->GetFilterType())          fGFilterType          = "mixed";
+       if(fGReadoutParam        != iDCSFEEObj->GetReadoutParam())        fGReadoutParam        = "mixed";
+       if(fGTestPattern         != iDCSFEEObj->GetTestPattern())         fGTestPattern         = "mixed";
+       if(fGTrackletMode        != iDCSFEEObj->GetTrackletMode())        fGTrackletMode        = "mixed";
+       if(fGTrackletDef         != iDCSFEEObj->GetTrackletDef())         fGTrackletDef         = "mixed";
+       if(fGTriggerSetup        != iDCSFEEObj->GetTriggerSetup())        fGTriggerSetup        = "mixed";
+       if(fGAddOptions          != iDCSFEEObj->GetAddOptions())          fGAddOptions          = "mixed";
+      }
+    }
+  }
+}
+
+
diff --git a/TRD/Cal/AliTRDCalDCSv2.h b/TRD/Cal/AliTRDCalDCSv2.h
new file mode 100644 (file)
index 0000000..4b7c518
--- /dev/null
@@ -0,0 +1,106 @@
+#ifndef ALITRDCALDCSv2_H
+#define ALITRDCALDCSv2_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
+
+/* $Id: AliTRDCalDCSv2.h 18952 2007-06-08 11:36:12Z cblume $ */
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+//  TRD calibration class v2 for TRD DCS parameters                          //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "TNamed.h"
+#include "TObjArray.h"
+
+class TString;
+
+class AliTRDCalDCSFEEv2;
+class AliTRDCalDCSPTR;
+class AliTRDCalDCSGTU;
+
+class AliTRDCalDCSv2 : public TNamed {
+
+ public:
+
+  AliTRDCalDCSv2();
+  AliTRDCalDCSv2(const Text_t *name, const Text_t *title);
+  AliTRDCalDCSv2(const AliTRDCalDCSv2 &cd);
+  AliTRDCalDCSv2 &operator=(const AliTRDCalDCSv2 &cd);
+  virtual ~AliTRDCalDCSv2() { };
+
+  void    EvaluateGlobalParameters();
+  void    SetFEEArr(TObjArray * const fa)      { fFEEArr              = fa;    }
+  void    SetPTRArr(TObjArray * const pa)      { fPTRArr              = pa;    }
+  void    SetGTUObj(AliTRDCalDCSGTU *go)       { fGTUObj              = go;    }
+  void    SetRunType(TString rt)               { fRunType = rt;                }
+  void    SetStartTime(UInt_t st)              { fStartTime = st;              }
+  void    SetEndTime(UInt_t et)                { fEndTime = et;                }
+  
+  Int_t   GetGlobalNumberOfTimeBins() const    { return fGNumberOfTimeBins;    }
+  Int_t   GetGlobalConfigTag() const           { return fGConfigTag;           }
+  Int_t   GetGlobalSingleHitThres() const      { return fGSingleHitThres;      }
+  Int_t   GetGlobalThreePadClustThres() const  { return fGThreePadClustThres;  }
+  Int_t   GetGlobalSelectiveNoZS() const       { return fGSelNoZS;             }
+  Int_t   GetGlobalTCFilterWeight() const      { return fGTCFilterWeight;      }
+  Int_t   GetGlobalTCFilterShortDecPar() const { return fGTCFilterShortDecPar; }
+  Int_t   GetGlobalTCFilterLongDecPar() const  { return fGTCFilterLongDecPar;  }
+  Int_t   GetGlobalModeFastStatNoise() const   { return fGFastStatNoise;       }
+  TString GetGlobalConfigVersion() const       { return fGConfigVersion;       }
+  TString GetGlobalConfigName() const          { return fGConfigName;          }
+  TString GetGlobalFilterType() const          { return fGFilterType;          }
+  TString GetGlobalReadoutParam() const        { return fGReadoutParam;        }
+  TString GetGlobalTestPattern() const         { return fGTestPattern;         }
+  TString GetGlobalTrackletMode() const        { return fGTrackletMode;        }
+  TString GetGlobalTrackletDef() const         { return fGTrackletDef;         }
+  TString GetGlobalTriggerSetup() const        { return fGTriggerSetup;        }
+  TString GetGlobalAddOptions() const          { return fGAddOptions;          }
+  TString GetRunType() const                   { return fRunType;              }
+  UInt_t  GetStartTime() const                 { return fStartTime;            }
+  UInt_t  GetEndTime() const                   { return fEndTime;              }
+  TObjArray*       GetFEEArr() const           { return fFEEArr;               }
+  TObjArray*       GetPTRArr() const           { return fPTRArr;               }
+  AliTRDCalDCSFEEv2* GetCalDCSFEEObj(Int_t det) 
+                                 { return (AliTRDCalDCSFEEv2*)fFEEArr->At(det); }
+  AliTRDCalDCSPTR* GetCalDCSPTRObj(Int_t det) 
+                                 { return (AliTRDCalDCSPTR*)fPTRArr->At(det); }
+  AliTRDCalDCSGTU* GetGTUObj() 
+                                 { return (AliTRDCalDCSGTU*)fGTUObj;          }
+
+ protected:
+
+  // global configuration parameters
+  Int_t   fGNumberOfTimeBins;    // Number of timebins (-1 if diverse)
+  Int_t   fGConfigTag;           // Configuration Tag (-1 if diverse)
+  Int_t   fGSingleHitThres;      // thres. of single hits (arg of readout param) (-1 if diverse)
+  Int_t   fGThreePadClustThres;  // thres. of 3-pad clusters (arg of readout param) (-1 if diverse)
+  Int_t   fGSelNoZS;             // write every fGSelNoZS'th event without ZS (-1 if diverse)
+  Int_t   fGTCFilterWeight;      // tail cancellation filter weight (-1 if diverse)
+  Int_t   fGTCFilterShortDecPar; // tail cancellation filter short decay parameter (-1 if diverse)
+  Int_t   fGTCFilterLongDecPar;  // tail cancellation filter long decay parameter (-1 if diverse)
+  Int_t   fGFastStatNoise;       // collect stat. f. fast noise mode (0: no, 1: yes, -1: diverse)
+  TString fGConfigVersion;       // Configuration version (empty if diverse)
+  TString fGConfigName;          // Configuration name (empty if diverse)
+  TString fGFilterType;          // filter type (p, pgt, nf) (empty if diverse)
+  TString fGReadoutParam;        // readout parameter (zs, nozs, testpattern) (empty if diverse)
+  TString fGTestPattern;         // value of testpattern (for readout param) (empty if diverse)
+  TString fGTrackletMode;        // tracklet mode (trk, csmtrk, notrk) (empty if diverse)
+  TString fGTrackletDef;         // definition for tracklet mode trk (empty if diverse)
+  TString fGTriggerSetup;        // trigger setup (ptrg, autotrg, autol0) (empty if diverse)
+  TString fGAddOptions;          // additional options (nopm, nion) (empty if diverse)
+  TString fRunType;              // the type of run (physics, pedestal, ...)
+  UInt_t  fStartTime;            // value from GetStartTimeDCSQuery
+  UInt_t  fEndTime;              // value from GetiEndTimeDCSQuery
+  
+  // individual configuration parameters
+  TObjArray *fFEEArr;            // config param of the individual chambers
+  TObjArray *fPTRArr;            // config param of the pretrigger
+
+  AliTRDCalDCSGTU *fGTUObj;      // GTU object
+
+  ClassDef(AliTRDCalDCSv2,1)     // TRD calibration class v2 for TRD DCS parameters
+
+};
+#endif
+