LCOV - code coverage report
Current view: top level - STEER/ESD - AliESDAD.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 11 36 30.6 %
Date: 2016-06-14 17:26:59 Functions: 14 42 33.3 %

          Line data    Source code
       1             : #ifndef ALIESDAD_H
       2             : #define ALIESDAD_H
       3             : 
       4             : //-------------------------------------------------------------------------
       5             : //     Container class for ESD AD data
       6             : //     Author: Michal Broz
       7             : //     Michal.Broz@cern.ch
       8             : //-------------------------------------------------------------------------
       9             : 
      10             : #include <AliVAD.h>
      11             : 
      12             : class AliESDAD : public AliVAD 
      13             : {
      14             : public:
      15             :   AliESDAD();
      16             :   AliESDAD(const AliESDAD&o);
      17             :   AliESDAD(UInt_t BBtriggerADA,   UInt_t BGtriggerADA,
      18             :               UInt_t BBtriggerADC,   UInt_t BGtriggerADC,
      19             :               Float_t *Multiplicity, Float_t *Adc, 
      20             :               Float_t *Time, Float_t *Width, Bool_t *BBFlag, Bool_t *BGFlag);
      21             :   void Copy(TObject &obj) const;
      22             : 
      23         156 :   virtual ~AliESDAD() {};
      24             : 
      25             :   // Setters
      26           0 :   void SetBBtriggerADA(UInt_t BBtrigger) {fBBtriggerADA=BBtrigger;}
      27           0 :   void SetBGtriggerADA(UInt_t BGtrigger) {fBGtriggerADA=BGtrigger;}
      28           0 :   void SetBBtriggerADC(UInt_t BBtrigger) {fBBtriggerADC=BBtrigger;}
      29           0 :   void SetBGtriggerADC(UInt_t BGtrigger) {fBGtriggerADC=BGtrigger;}
      30             :   void SetMultiplicity(Float_t Multiplicity[16])
      31           0 :     {for(Int_t i=0;i<16;i++) fMultiplicity[i]=Multiplicity[i];}
      32             :   void SetADC(Float_t adc[16])
      33           0 :     {for(Int_t i=0;i<16;i++) fAdc[i]=adc[i];}
      34             :   void SetTime(Float_t time[16])
      35           0 :     {for(Int_t i=0;i<16;i++) fTime[i]=time[i];}
      36             :   void SetWidth(Float_t width[16])
      37           0 :     {for(Int_t i=0;i<16;i++) fWidth[i]=width[i];}    
      38             :   void SetBBFlag(Bool_t BBFlag[16])
      39           0 :     {for(Int_t i=0;i<16;i++) fBBFlag[i]=BBFlag[i];} 
      40             :   void SetBGFlag(Bool_t BGFlag[16])
      41           0 :     {for(Int_t i=0;i<16;i++) fBGFlag[i]=BGFlag[i];}   
      42             : 
      43           0 :   void SetADATime(Float_t time) {fADATime = time;}
      44           0 :   void SetADCTime(Float_t time) {fADCTime = time;}
      45           0 :   void SetADATimeError(Float_t err) {fADATimeError = err;}
      46           0 :   void SetADCTimeError(Float_t err) {fADCTimeError = err;}
      47             : 
      48           0 :   void SetADADecision(Decision des) {fADADecision = des;}
      49           0 :   void SetADCDecision(Decision des) {fADCDecision = des;}
      50             : 
      51           0 :   void SetTriggerChargeA(UShort_t chargeA) {fTriggerChargeA = chargeA;}
      52           0 :   void SetTriggerChargeC(UShort_t chargeC) {fTriggerChargeC = chargeC;}
      53           0 :   void SetTriggerBits(UShort_t triggerBits) {fTriggerBits = triggerBits;}
      54             :   
      55           0 :   void SetPFBBFlag(Int_t channel, Int_t clock, Bool_t flag) { fIsBB[channel][clock] = flag; }
      56           0 :   void SetPFBGFlag(Int_t channel, Int_t clock, Bool_t flag) { fIsBG[channel][clock] = flag; }
      57             :   
      58             :   void SetADCTail(Float_t adc[16])
      59           0 :     {for(Int_t i=0;i<16;i++) fAdcTail[i]=adc[i];}
      60             :     
      61             :   void SetADCTrigger(Float_t adc[16])
      62           0 :     {for(Int_t i=0;i<16;i++) fAdcTrigger[i]=adc[i];}
      63             : 
      64             :   // Getters  
      65             :   virtual Short_t  GetNbPMADA() const;
      66             :   virtual Short_t  GetNbPMADC() const;
      67             :   virtual Float_t  GetMTotADA() const;
      68             :   virtual Float_t  GetMTotADC() const; 
      69             : 
      70             :   virtual Float_t  GetMultiplicity(Int_t i) const;
      71             :   virtual Float_t  GetMultiplicityADA(Int_t i) const;
      72             :   virtual Float_t  GetMultiplicityADC(Int_t i) const;    
      73             :   virtual Float_t  GetAdc(Int_t i) const;
      74             :   virtual Float_t  GetAdcADA(Int_t i) const; 
      75             :   virtual Float_t  GetAdcADC(Int_t i) const;   
      76             :   virtual Float_t  GetTime(Int_t i) const;
      77             :   virtual Float_t  GetTimeADA(Int_t i) const;   
      78             :   virtual Float_t  GetTimeADC(Int_t i) const;    
      79             :   virtual Float_t  GetWidth(Int_t i) const;
      80             :   virtual Float_t  GetWidthADA(Int_t i) const;
      81             :   virtual Float_t  GetWidthADC(Int_t i) const;
      82             :   virtual Bool_t   BBTriggerADA(Int_t i) const;
      83             :   virtual Bool_t   BGTriggerADA(Int_t i) const;
      84             :   virtual Bool_t   BBTriggerADC(Int_t i) const;
      85             :   virtual Bool_t   BGTriggerADC(Int_t i) const;  
      86             :   virtual Bool_t   GetBBFlag(Int_t i) const;
      87             :   virtual Bool_t   GetBGFlag(Int_t i) const;
      88             : 
      89          16 :   virtual Float_t  GetADATime() const { return fADATime; }
      90          16 :   virtual Float_t  GetADCTime() const { return fADCTime; }
      91           0 :   virtual Float_t  GetADATimeError() const { return fADATimeError; }
      92           0 :   virtual Float_t  GetADCTimeError() const { return fADCTimeError; }
      93             : 
      94          16 :   virtual Decision GetADADecision() const { return fADADecision; }
      95          16 :   virtual Decision GetADCDecision() const { return fADCDecision; }
      96             : 
      97          16 :   virtual UShort_t GetTriggerChargeA() const { return fTriggerChargeA; }
      98          16 :   virtual UShort_t GetTriggerChargeC() const { return fTriggerChargeC; }
      99          16 :   virtual UShort_t GetTriggerBits() const { return fTriggerBits; }
     100             :   
     101        5376 :   virtual Bool_t   GetPFBBFlag(Int_t channel, Int_t clock) const { return fIsBB[channel][clock]; } 
     102        5376 :   virtual Bool_t   GetPFBGFlag(Int_t channel, Int_t clock) const { return fIsBG[channel][clock]; }
     103             :   
     104             :   virtual Float_t  GetAdcTail(Int_t i) const;
     105             :   virtual Float_t  GetAdcTailADA(Int_t i) const; 
     106             :   virtual Float_t  GetAdcTailADC(Int_t i) const; 
     107             :   
     108             :   virtual Float_t  GetAdcTrigger(Int_t i) const;
     109             :   virtual Float_t  GetAdcTriggerADA(Int_t i) const; 
     110             :   virtual Float_t  GetAdcTriggerADC(Int_t i) const;    
     111             :   
     112             :   AliESDAD &operator=(const AliESDAD& source);
     113             :     
     114             : protected:
     115             : 
     116             :   UInt_t  fBBtriggerADA;     // bit mask for Beam-Beam trigger in ADA
     117             :   UInt_t  fBGtriggerADA;     // bit mask for Beam-Gas trigger in ADA
     118             :   UInt_t  fBBtriggerADC;     // bit mask for Beam-Beam trigger in ADC
     119             :   UInt_t  fBGtriggerADC;     // bit mask for Beam-Gas trigger in ADC
     120             : 
     121             :   Float_t fMultiplicity[16]; //  multiplicity for each channel
     122             :   Float_t fAdc[16];          //  charge signal for each channel
     123             :   Float_t fTime[16];         //  time for each channel
     124             :   Float_t fWidth[16];        //  time width for each channel
     125             :   Bool_t  fBBFlag[16];       //  BB Flags from Online AD Electronics
     126             :   Bool_t  fBGFlag[16];       //  BG Flags from Online AD Electronics
     127             : 
     128             :   Float_t fADATime;          // Average time in ADA
     129             :   Float_t fADCTime;          // Average time in ADC
     130             :   Float_t fADATimeError;     // Error in the average time in ADA
     131             :   Float_t fADCTimeError;     // Error in the average time in ADC
     132             : 
     133             :   Decision fADADecision;     // ADA final decision based on average time of channels
     134             :   Decision fADCDecision;     // ADC final decision based on average time of channels
     135             : 
     136             :   UShort_t fTriggerChargeA;  // Sum of the trigger (clock=10) charge on A side
     137             :   UShort_t fTriggerChargeC;  // Sum of the trigger (clock=10) charge on C side
     138             :   UShort_t fTriggerBits;     // AD trigger bits as defined in the firmware
     139             :   
     140             :   Bool_t   fIsBB[16][21];  // BB flag for all channels and 21 clocks
     141             :   Bool_t   fIsBG[16][21];  // BG flag for all channels and 21 clocks
     142             :   
     143             :   Float_t fAdcTail[16];      //  tail of charge signal for each channel
     144             :   Float_t fAdcTrigger[16];   //  charge trigger signal for each channel
     145             : 
     146         516 :   ClassDef(AliESDAD,13)
     147             : };
     148             : 
     149             : #endif

Generated by: LCOV version 1.11