]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONDigitizerV3.h
New class for AOD<->MC association
[u/mrichter/AliRoot.git] / MUON / AliMUONDigitizerV3.h
index e63929716a85309d176019f3145240e39ca42d3f..bad43a58a7ae74cfb75581bb03162e81a80d443b 100644 (file)
@@ -19,7 +19,6 @@
 class AliMUONCalibrationData;
 class AliMUONVDigit;
 class AliMUONLogger;
-class AliMUONTriggerEfficiencyCells;
 class TClonesArray;
 class TF1;
 class TString;
@@ -44,7 +43,12 @@ public:
                                        const AliMUONVCalibParam& gains,
                                        Int_t channel,
                                        Float_t charge,
-                                       Bool_t addNoise=kFALSE);
+                                       Bool_t addNoise=kFALSE,
+                                       Bool_t noiseOnly=kFALSE);
+  
+  /// Set calibration data
+  void SetCalibrationData(AliMUONCalibrationData* calibrationData) 
+                          {fCalibrationData = calibrationData;}
   
 private:
   /// Not implemented
@@ -55,15 +59,11 @@ private:
   void ApplyResponse(const AliMUONVDigitStore& store, AliMUONVDigitStore& filteredStore);
 
   void ApplyResponseToTrackerDigit(AliMUONVDigit& digit, Bool_t addNoise);
-  void ApplyResponseToTriggerDigit(const AliMUONVDigitStore& digitStore, AliMUONVDigit& digit);
 
   AliLoader* GetLoader(const TString& foldername);
   
 private:  
 
-  AliMUONVDigit* FindCorrespondingDigit(const AliMUONVDigitStore& digitStore,
-                                       AliMUONVDigit& digit) const;
-
   void GenerateNoisyDigits(AliMUONVDigitStore& digitStore);
   void GenerateNoisyDigitsForOneCathode(AliMUONVDigitStore& digitStore, 
                                         Int_t detElemId, Int_t cathode);
@@ -73,12 +73,14 @@ private:
                         const AliMUONVDigitStore& input,
                         Int_t mask);
   
+  static TF1* NoiseFunction();
+  
+  void CreateInputDigitStore();
+
 private:
   Bool_t fIsInitialized; ///< are we initialized ?
   AliMUONCalibrationData* fCalibrationData; //!< pointer to access calib parameters
   AliMUONTriggerElectronics* fTriggerProcessor; ///< pointer to the trigger part of the job
-  AliMUONTriggerEfficiencyCells* fTriggerEfficiency; ///< trigger efficiency map  
-  TF1* fNoiseFunction; //!< function to randomly get signal above n*sigma_ped
   TF1* fNoiseFunctionTrig; //!< function to get noise disribution on trig. chambers
   Int_t fGenerateNoisyDigits; //!< whether or not we should generate noise-only digits for tracker (1) and trigger (2)
   static const Double_t fgkNSigmas; ///< \brief number of sigmas above ped to use 
@@ -87,8 +89,9 @@ private:
   AliMUONVTriggerStore* fTriggerStore; //!< trigger objects
   AliMUONVDigitStore* fDigitStore; //!< temporary digits
   AliMUONVDigitStore* fOutputDigitStore; //!< digits we'll output to disk
+  AliMUONVDigitStore* fInputDigitStore; //!< input digit store
   
-  ClassDef(AliMUONDigitizerV3,6) // MUON Digitizer V3-5
+  ClassDef(AliMUONDigitizerV3,8) // MUON Digitizer V3-8
 };
 
 #endif