]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONPadStatusMaker.h
Coding violation fixes
[u/mrichter/AliRoot.git] / MUON / AliMUONPadStatusMaker.h
index 5eb2e3fa4287bf69bfd0d80aa7e42b58b61b08a0..528533625547dedacbe84b5431e4b6063877e2ad 100644 (file)
@@ -21,6 +21,7 @@
 
 class TExMap;
 class AliMUONCalibrationData;
+class AliMUONRecoParam;
 class AliMUONVCalibParam;
 class AliMUONVTrackerData;
 class AliMUONVStore;
@@ -30,7 +31,10 @@ class AliMUONPadStatusMaker : public TObject
 public:
   AliMUONPadStatusMaker(const AliMUONCalibrationData& calibData);
   virtual ~AliMUONPadStatusMaker();
-      
+  
+  /// Get the reference to the calibrationdata object we use.
+  const AliMUONCalibrationData& CalibrationData() const { return fkCalibrationData; }
+  
   /** Get access to internal status store (for debug only, as it may not be complete,
     depending on whether you've already called PadStatus for all possible de,manu
     combinations or not...
@@ -94,6 +98,22 @@ public:
   void SetManuOccupancyLimits(float low, float high) { fManuOccupancyLimits.Set(low,high); }
   /// Get manu occupancy limits
   TVector2 ManuOccupancyLimits() const { return fManuOccupancyLimits; }
+
+  /// Set Low and High bus patch occupancy limits
+  void SetBuspatchOccupancyLimits(float low, float high) { fBuspatchOccupancyLimits.Set(low,high); }
+  /// Get bus patch occupancy limits
+  TVector2 BuspatchOccupancyLimits() const { return fBuspatchOccupancyLimits; }
+
+  /// Set Low and High DE occupancy limits
+  void SetDEOccupancyLimits(float low, float high) { fDEOccupancyLimits.Set(low,high); }
+  /// Get DE occupancy limits
+  TVector2 DEOccupancyLimits() const { return fDEOccupancyLimits; }
+  
+  void SetLimits(const AliMUONRecoParam& recoParams);
+
+  void Report(UInt_t mask);
+  
+  static Float_t SwitchValue(const TObjArray& dcsArray);
   
 private:
   /// Not implemented
@@ -122,7 +142,7 @@ private:
 
   Int_t HVStatus(Int_t detElemId, Int_t manuId) const;
 
-  Int_t OtherStatus(Int_t detElemId, Int_t manuId) const;
+  Int_t OccupancyStatus(Int_t detElemId, Int_t manuId) const;
   
   void SetHVStatus(Int_t detElemId, Int_t index, Int_t status) const;
 
@@ -174,13 +194,17 @@ private:
   };
   
   /// Other
-  enum EOtherStatus
+  enum EOccupancyStatus
   {
     kManuOccupancyTooLow = (1<<1),
-    kManuOccupancyTooHigh = (1<<2)
+    kManuOccupancyTooHigh = (1<<2),
+    kBusPatchOccupancyTooLow = (1<<3),
+    kBusPatchOccupancyTooHigh = (1<<4),
+    kDEOccupancyTooLow = (1<<5),
+    kDEOccupancyTooHigh = (1<<6)
   };
   
-  const AliMUONCalibrationData& fCalibrationData; //!< helper class to get data access (not owner)
+  const AliMUONCalibrationData& fkCalibrationData; //!< helper class to get data access (not owner)
   
   TVector2 fGainA1Limits; //!< Low and High threshold for gain a0 parameter
   TVector2 fGainA2Limits; //!< Low and High threshold for gain a1 parameter
@@ -193,6 +217,8 @@ private:
   TVector2 fPedSigmaLimits; //!< Low and High threshold for pedestal sigma
   
   TVector2 fManuOccupancyLimits; //!< Low and High manu occupancy limits
+  TVector2 fBuspatchOccupancyLimits; //!< Low and High buspatch occupancy limits
+  TVector2 fDEOccupancyLimits; //!< Low and High DE occupancy limits
   
   AliMUONVStore* fStatus; //!< statuses of the pads