LCOV - code coverage report
Current view: top level - STEER/ESD - AliESDVZEROfriend.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 19 34 55.9 %
Date: 2016-06-14 17:26:59 Functions: 20 38 52.6 %

          Line data    Source code
       1             : #ifndef ALIESDVZEROFRIEND_H
       2             : #define ALIESDVZEROFRIEND_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : ///////////////////////////////////////////////////////////////////////////////
       7             : ///
       8             : /// This is a class for containing all the VZERO DDL raw data
       9             : /// It is written to the ESD-friend file
      10             : ///
      11             : ///////////////////////////////////////////////////////////////////////////////
      12             : 
      13             : #include "AliVVZEROfriend.h"
      14             : 
      15             : class AliESDVZEROfriend: public AliVVZEROfriend {
      16             :   public :
      17             :     AliESDVZEROfriend();
      18             :     virtual ~AliESDVZEROfriend();
      19             : 
      20             :     AliESDVZEROfriend(const AliESDVZEROfriend& vzerofriend);
      21             :     AliESDVZEROfriend& operator = (const AliESDVZEROfriend& vzerofriend);
      22             : 
      23             :     void Reset();
      24             : 
      25             : // Getters of various scalers and Minimum Bias flags :
      26             : 
      27             :    ULong64_t          GetBBScalers(Int_t channel) const  
      28           0 :       { return        fBBScalers[channel]; }
      29             :    ULong64_t          GetBGScalers(Int_t channel) const  
      30           0 :       { return        fBGScalers[channel]; }
      31             :    UInt_t             GetTriggerScalers(Int_t num_scaler) const 
      32           0 :       { return        fScalers[num_scaler]; }
      33             :    UInt_t             GetBunchNumbersMB(Int_t num_bunch) const 
      34           0 :       { return        fBunchNumbers[num_bunch]; }
      35             :    UShort_t           GetChargeMB(Int_t channel, Int_t num_bunch) const  
      36           0 :       { return        fChargeMB[channel][num_bunch]; } 
      37             :    Bool_t             GetIntMBFlag(Int_t channel, Int_t num_bunch) const   
      38           0 :       { return        fIsIntMB[channel][num_bunch]; } 
      39             :    Bool_t             GetBBMBFlag(Int_t channel, Int_t num_bunch) const   
      40           0 :       { return        fIsBBMB[channel][num_bunch]; }  
      41             :    Bool_t             GetBGMBFlag(Int_t channel, Int_t num_bunch) const   
      42           0 :       { return        fIsBGMB[channel][num_bunch]; }      
      43             :        
      44             : // Getters of ADC signals, ADC pedestals, time information and corresponding flags :
      45             : 
      46             :     Float_t           GetADC(Int_t channel) const
      47           0 :       { return fADC[channel][kNEvOfInt/2]; }
      48             :     Float_t           GetPedestal(Int_t channel, Int_t event) const
      49           0 :       { return fADC[channel][event]; }
      50             :     Bool_t            GetIntegratorFlag(Int_t channel, Int_t event) const
      51           0 :       { return fIsInt[channel][event]; }
      52             :     Bool_t            GetBBFlag(Int_t channel, Int_t event) const
      53       21504 :       { return fIsBB[channel][event]; } 
      54             :     Bool_t            GetBGFlag(Int_t channel, Int_t event) const
      55       21504 :       { return fIsBG[channel][event]; }   
      56             :     Float_t            GetTime(Int_t channel) const
      57           0 :       { return fTime[channel]; }
      58             :     Float_t            GetWidth(Int_t channel) const
      59           0 :       { return fWidth[channel]; }
      60             : 
      61             :     // Setters
      62             :     void              SetBBScalers(Int_t channel, ULong64_t scalers)
      63         512 :       { fBBScalers[channel] = scalers; }
      64             :     void              SetBGScalers(Int_t channel, ULong64_t scalers)
      65         512 :       { fBGScalers[channel] = scalers; }
      66             :     void              SetTriggerScalers(Int_t num_scaler, UInt_t scaler)
      67         128 :       { fScalers[num_scaler] = scaler; }
      68             :     void              SetBunchNumbersMB(Int_t num_bunch, UInt_t bunch)
      69          80 :       { fBunchNumbers[num_bunch] = bunch; }
      70             :     void              SetChargeMB(Int_t channel,Int_t num_bunch, UShort_t charge)
      71        5120 :       { fChargeMB[channel][num_bunch] = charge; }
      72             :     void              SetIntMBFlag(Int_t channel,Int_t num_bunch, Bool_t flag)
      73        2560 :       { fIsIntMB[channel][num_bunch] = flag; }
      74             :     void              SetBBMBFlag(Int_t channel,Int_t num_bunch, Bool_t flag)
      75        2560 :       { fIsBBMB[channel][num_bunch] = flag; }
      76             :     void              SetBGMBFlag(Int_t channel,Int_t num_bunch, Bool_t flag)
      77        2560 :       { fIsBGMB[channel][num_bunch] = flag; }
      78             : 
      79             :     void              SetPedestal(Int_t channel, Int_t event, Float_t adc)
      80       21504 :       { fADC[channel][event] = adc; }
      81             :     void              SetIntegratorFlag(Int_t channel, Int_t event, Bool_t flag)
      82       10752 :       { fIsInt[channel][event] = flag; }
      83             :     void              SetBBFlag(Int_t channel, Int_t event, Bool_t flag)
      84        5888 :       { fIsBB[channel][event] = flag; }
      85             :     void              SetBGFlag(Int_t channel, Int_t event, Bool_t flag)
      86        5888 :       { fIsBG[channel][event] = flag; }
      87             :     void              SetTime(Int_t channel, Float_t time)
      88        1024 :       { fTime[channel] = time; }
      89             :     void              SetWidth(Int_t channel, Float_t width)
      90        1024 :       { fWidth[channel] = width; }
      91             : 
      92             :     UShort_t          GetTriggerInputs() const
      93           0 :       { return fTrigger; }
      94             :     UShort_t          GetTriggerInputsMask() const
      95           0 :       { return fTriggerMask; }
      96             :     void              SetTriggerInputs(UShort_t inputs)
      97           8 :       { fTrigger = inputs; }
      98             :     void              SetTriggerInputsMask(UShort_t mask)
      99           8 :       { fTriggerMask = mask; }
     100             : 
     101             :   private:
     102             : 
     103             :     ULong64_t     fBBScalers[kNChannels];        // 'Beam-Beam' scalers for all channels
     104             :     ULong64_t     fBGScalers[kNChannels];        // 'Beam-Gas' scalers for all channels
     105             :     UInt_t        fScalers[kNScalers];           // Trigger scalers
     106             :     UInt_t        fBunchNumbers[kNBunches];      // Bunch numbers for the previous 10 MB events
     107             :     UShort_t      fChargeMB[kNChannels][kNBunches]; // ADC counts for all channels for the previous 10 MB events
     108             :     Bool_t        fIsIntMB[kNChannels][kNBunches];  // 'Integrator' flag for all channels for the previous 10 MB events
     109             :     Bool_t        fIsBBMB[kNChannels][kNBunches];   // 'Beam-Beam' flag for all channels for the previous 10 MB events
     110             :     Bool_t        fIsBGMB[kNChannels][kNBunches];   // 'Beam-Gas' for all channels for the previous 10 MB events
     111             : 
     112             :     Float_t       fADC[kNChannels][kNEvOfInt];   // ADC counts for all channels and all events of interest
     113             :     Bool_t        fIsInt[kNChannels][kNEvOfInt]; // 'Integrator' flag for all channels 
     114             :     Bool_t        fIsBB[kNChannels][kNEvOfInt];  // 'Beam-Beam' flag for all channels
     115             :     Bool_t        fIsBG[kNChannels][kNEvOfInt];  // 'Beam-Gas' flag for all channels
     116             :     Float_t       fTime[kNChannels];             // leading time for all channels - from HPTDC - in nanoseconds
     117             :     Float_t       fWidth[kNChannels];            // pulse width for all channels - from HPTDC - in nanoseconds
     118             : 
     119             :     UShort_t      fTrigger;        // VZERO trigger inputs
     120             :     UShort_t      fTriggerMask;    // VZERO trigger inputs mask
     121             : 
     122         204 :     ClassDef(AliESDVZEROfriend, 3) // container class for VZERO DDL raw data
     123             : };
     124             : 
     125             : #endif

Generated by: LCOV version 1.11