LCOV - code coverage report
Current view: top level - MUON/MUONcalib - AliMUONPedestal.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 18 5.6 %
Date: 2016-06-14 17:26:59 Functions: 1 22 4.5 %

          Line data    Source code
       1             : #ifndef ALIMUONPEDESTAL_H
       2             : #define ALIMUONPEDESTAL_H
       3             : 
       4             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       5             : * See cxx source for full Copyright notice                               */
       6             : 
       7             : // $Id$
       8             : 
       9             : /// \ingroup calib
      10             : /// \class AliMUONPedestal
      11             : /// \brief Implementation of the pedestal computing
      12             : /// 
      13             : //  Author Alberto Baldisseri, JL Charvet 
      14             : 
      15             : #ifndef ROOT_TObject
      16             : #  include <TObject.h>
      17             : #endif
      18             : #ifndef ROOT_TString
      19             : #  include <TString.h>
      20             : #endif
      21             : 
      22             : class AliMUONVStore;
      23             : 
      24             : class TTimeStamp;
      25             : class TTree;
      26             : class TFile;
      27             : 
      28             : using std::ofstream;
      29             : using std::ostream;
      30             : 
      31             : class AliMUONPedestal : public TObject
      32             : {
      33             :   public:
      34             :     AliMUONPedestal();
      35             :     AliMUONPedestal(TRootIOCtor* dummy);
      36             :     virtual ~AliMUONPedestal();
      37             :     
      38             :     /// return the number of current events
      39           0 :     void SetAliNCurrentEvents(Int_t events) {fNCurrentEvents = events;}
      40             :     /// return the number of events
      41           0 :     void SetAliNEvents(Int_t events) {fNEvents = events;}
      42             :     /// return the Run number
      43           0 :     void SetAliRunNumber(Int_t run) {fRunNumber = run;}
      44             :     /// return the total number of channels (or pads)
      45           0 :     void SetAliNChannel(Int_t nch) {fNChannel = nch;}
      46             :     /// output .log file of DAs
      47           0 :     void SetAlifilcout(ofstream* stream) {fFilcout = stream;}
      48             :     /// return date and time
      49           0 :     TTimeStamp* GetDate() const {return fDate;}
      50             :     /// Count parity errors per Buspatch
      51           0 :     AliMUONVStore* GetErrorBuspatchTable() const {return fErrorBuspatchTable;}
      52             :     /// return the name of DAPedestal .root file
      53             :     const char* GetHistoFileName() const;
      54             :     /// load MuonTrk configuration from ascii dbfile
      55             :     void LoadConfig(const char* dbfile);
      56             :     /// sum pedestal values for mean and sigma determination
      57             :     void MakePed(Int_t bp,Int_t manu,Int_t ch,Int_t charge);
      58             : 
      59             :     /// set config flag
      60           0 :     void SetconfigDA(Int_t ind) {fConfig = ind;}
      61             :      /// set Histos flag
      62           0 :     void SetHistos(Int_t ind) {fHistos = ind;}
      63             :    /// set Nb of evt threshold to calculate pedestal
      64           0 :     void SetnEvthreshold(Int_t ind) {fNEvthreshold = ind;}
      65             :     /// set DA status (return code)
      66           0 :     void SetStatusDA(Int_t ind) {fStatusDA = ind;}
      67             :     /// get DA status (return code)
      68           0 :     Int_t GetStatusDA() const {return fStatusDA;}
      69             :     /// sorting flag
      70           0 :     void SetnSorting(Int_t ind) {fSorting = ind;}
      71             :     /// set specific  DA prefixname
      72           0 :     void SetprefixDA(const char* folder) { fPrefixDA=folder;}
      73             :      /// set specific LDC prefixname
      74           0 :     void SetprefixLDC(const char* folder) { fPrefixLDC=folder;}
      75             :    /// set the index of calibration runs
      76           0 :     void SetAliIndex(Int_t ind) {fIndex = ind;}
      77             :     /// Compute the pedestal data (mean, sigma)
      78             :     void Finalize();
      79             :     /// Create String to be put into file or AMORE DB
      80             :     void MakeASCIIoutput(ostream& out) const;
      81             :     /// Create Histograms
      82             :     void CreateControlHistos();
      83             :     /// Fill Histograms
      84             :     void MakeControlHistos();
      85             : 
      86           0 :     Int_t ADCMax() const { return 4095; }
      87             : 
      88             : protected:
      89             :     //    Int_t fN; ///<
      90             :     Int_t fNCurrentEvents; ///< Number of current events
      91             :     Int_t fNEvthreshold; ///< Nbevt threshold (pedestal calculation)
      92             :     Int_t fSorting; ///< sorting flag (pedestal values)
      93             :     Int_t fNEvents; ///< Number of events
      94             :     Int_t fRunNumber; ///< run number
      95             :     Int_t fNChannel; ///< Nb of channels (pads)
      96             :     Int_t fNManu; ///<  Nb of Manu
      97             :     Int_t fNManuConfig; ///<  Nb of Manu in the current detector configuration
      98             :     Int_t fConfig; ///< flag 1(0) for reading(or not) configuration ascii file
      99             :     Int_t fStatusDA; ///< DA return code (0=OK)
     100             :     Int_t fHistos; ///< flag for Histograms (0,1=standard, 2=ntuple with charge)
     101             :     AliMUONVStore* fErrorBuspatchTable; ///< Table for buspatches with parity errors 
     102             :     AliMUONVStore* fManuBuspatchTable; ///< Occupancy rate for each (buspatch, manu)
     103             :     AliMUONVStore* fManuBPoutofconfigTable; ///< (buspatch, manu) out of config
     104             :  
     105             :     TTimeStamp* fDate; ///< date
     106             :     ofstream* fFilcout; ///< .log output file
     107             :     TString fHistoFileName; ///< .root histo file
     108             :     AliMUONVStore* fPedestalStore; ///< data container:  (Pedmean,sigma) values for each (BP,manuId)
     109             :     Int_t fIndex; ///< calibration run index
     110             :     TString fPrefixDA; ///< specific DA prefixname
     111             :     TString fPrefixLDC; ///< specific LDC prefixname
     112             :     TFile* fHistoFile; ///< .root histo file
     113             :     TTree* fTree ; ///< charge Tree
     114             : 
     115             :   static const Int_t fgkADCMax; ///< max channel count
     116             :   
     117             :   private:
     118             :     /// Not implemented
     119             :     AliMUONPedestal(const AliMUONPedestal& rhs);
     120             :     /// Not implemented
     121             :     AliMUONPedestal& operator = (const AliMUONPedestal& rhs);
     122             : 
     123          18 :   ClassDef(AliMUONPedestal,6) // Pedestal computing for DA
     124             : };
     125             : 
     126             : #endif

Generated by: LCOV version 1.11