LCOV - code coverage report
Current view: top level - ZDC/ZDCbase - AliZDCCalib.cxx (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 87 1.1 %
Date: 2016-06-14 17:26:59 Functions: 1 18 5.6 %

          Line data    Source code
       1             : /**************************************************************************
       2             :  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       3             :  *                                                                        *
       4             :  * Author: The ALICE Off-line Project.                                    *
       5             :  * Contributors are mentioned in the code where appropriate.              *
       6             :  *                                                                        *
       7             :  * Permission to use, copy, modify and distribute this software and its   *
       8             :  * documentation strictly for non-commercial purposes is hereby granted   *
       9             :  * without fee, provided that the above copyright notice appears in all   *
      10             :  * copies and that both the copyright notice and this permission notice   *
      11             :  * appear in the supporting documentation. The authors make no claims     *
      12             :  * about the suitability of this software for any purpose. It is          *
      13             :  * provided "as is" without express or implied warranty.                  *
      14             :  **************************************************************************/
      15             : 
      16             : /* $Id$ */
      17             : 
      18             : ///////////////////////////////////////////////////////////////////////////////
      19             : //                                                                           //
      20             : // class for ZDC calibration                                                 //
      21             : // -> values for energy calibration and relative sector calibration          //
      22             : //                                                                           //
      23             : ///////////////////////////////////////////////////////////////////////////////
      24             : 
      25             : #include "AliZDCCalib.h"
      26             : 
      27          12 : ClassImp(AliZDCCalib)
      28             : 
      29             : //________________________________________________________________
      30             : AliZDCCalib::AliZDCCalib():
      31           0 : TNamed()
      32           0 : {
      33           0 :   Reset();
      34           0 : }
      35             : 
      36             : //________________________________________________________________
      37             : AliZDCCalib::AliZDCCalib(const char* name):
      38           0 : TNamed()
      39           0 : {
      40             :   // Constructor
      41           0 :   TString namst = "Calib_";
      42           0 :   namst += name;
      43           0 :   SetName(namst.Data());
      44           0 :   SetTitle(namst.Data());
      45           0 :   Reset();
      46           0 :   for(Int_t i=0; i<6; i++){
      47           0 :     fEnCalibration[i] = 0.;
      48           0 :     if(i<5){
      49           0 :       fZN1EqualCoeff[i] = 0.;
      50           0 :       fZP1EqualCoeff[i] = 0.;
      51           0 :       fZN2EqualCoeff[i] = 0.;
      52           0 :       fZP2EqualCoeff[i] = 0.;
      53           0 :     }
      54             :   }
      55           0 : }
      56             : 
      57             : //________________________________________________________________
      58             : AliZDCCalib::AliZDCCalib(const AliZDCCalib& calibda) :
      59           0 :   TNamed(calibda)
      60           0 : {
      61             :   // Copy constructor
      62           0 :   SetName(calibda.GetName());
      63           0 :   SetTitle(calibda.GetName());
      64           0 :   Reset();
      65           0 :   for(int i=0; i<6; i++){
      66           0 :     fEnCalibration[i] = calibda.GetEnCalib(i);
      67           0 :     if(i<5){
      68           0 :       fZN1EqualCoeff[i] =  calibda.GetZN1EqualCoeff(i);
      69           0 :       fZP1EqualCoeff[i] =  calibda.GetZP1EqualCoeff(i);
      70           0 :       fZN2EqualCoeff[i] =  calibda.GetZN2EqualCoeff(i);
      71           0 :       fZP2EqualCoeff[i] =  calibda.GetZP2EqualCoeff(i);
      72           0 :     }
      73             :   }
      74           0 : }
      75             : 
      76             : //________________________________________________________________
      77             : AliZDCCalib &AliZDCCalib::operator =(const AliZDCCalib& calibda)
      78             : {
      79             : // assignment operator
      80           0 :   SetName(calibda.GetName());
      81           0 :   SetTitle(calibda.GetName());
      82           0 :   Reset();
      83           0 :   for(int i=0; i<6; i++){
      84           0 :      fEnCalibration[i] = calibda.GetEnCalib(i);
      85           0 :      if(i<5){
      86           0 :       fZN1EqualCoeff[i] =  calibda.GetZN1EqualCoeff(i);
      87           0 :       fZP1EqualCoeff[i] =  calibda.GetZP1EqualCoeff(i);
      88           0 :       fZN2EqualCoeff[i] =  calibda.GetZN2EqualCoeff(i);
      89           0 :       fZP2EqualCoeff[i] =  calibda.GetZP2EqualCoeff(i);
      90           0 :      }
      91             :   }
      92             :   
      93           0 :   return *this;
      94             : }
      95             : 
      96             : //________________________________________________________________
      97             : AliZDCCalib::~AliZDCCalib()
      98           0 : {
      99           0 : }
     100             : 
     101             : //________________________________________________________________
     102             : void AliZDCCalib::Reset()
     103             : {
     104             :   // Reset
     105           0 :   memset(fEnCalibration,0,6*sizeof(Float_t));
     106           0 :   memset(fZN1EqualCoeff,0,5*sizeof(Float_t));
     107           0 :   memset(fZP1EqualCoeff,0,5*sizeof(Float_t));
     108           0 :   memset(fZN2EqualCoeff,0,5*sizeof(Float_t));
     109           0 :   memset(fZP2EqualCoeff,0,5*sizeof(Float_t));
     110           0 : }                                                                                       
     111             : 
     112             : 
     113             : //________________________________________________________________
     114             : void  AliZDCCalib::Print(Option_t *) const
     115             : {
     116             :    // Printing of calibration object
     117           0 :    printf("\n\n ####### Energy calibration coefficients #######    \n");
     118           0 :    printf("  ZN1 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[0]);
     119           0 :    printf("  ZP1 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[1]);
     120           0 :    printf("  ZN2 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[2]);
     121           0 :    printf("  ZP2 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[3]);
     122           0 :    printf("  ZEM1 = %.2f (E[TeV]/ADCch.) \n",fEnCalibration[4]);
     123           0 :    printf("  ZEM2 = %.2f (E[TeV]/ADCch.) \n",fEnCalibration[5]);
     124             :  
     125           0 :    printf("\n\n ####### Equalization coefficients ####### \n");
     126           0 :    printf("  ZN1 -> %1.2f %1.2f %1.2f %1.2f %1.2f  \n",
     127           0 :     fZN1EqualCoeff[0],fZN1EqualCoeff[1],fZN1EqualCoeff[2],fZN1EqualCoeff[3],fZN1EqualCoeff[4]);
     128           0 :    printf("  ZP1 -> %1.2f %1.2f %1.2f %1.2f %1.2f  \n",
     129           0 :     fZP1EqualCoeff[0],fZP1EqualCoeff[1],fZP1EqualCoeff[2],fZP1EqualCoeff[3],fZP1EqualCoeff[4]);
     130           0 :    printf("  ZN2 -> %1.2f %1.2f %1.2f %1.2f %1.2f  \n",
     131           0 :     fZN2EqualCoeff[0],fZN2EqualCoeff[1],fZN2EqualCoeff[2],fZN2EqualCoeff[3],fZN2EqualCoeff[4]);
     132           0 :    printf("  ZP2 -> %1.2f %1.2f %1.2f %1.2f %1.2f  \n",
     133           0 :     fZP2EqualCoeff[0],fZP2EqualCoeff[1],fZP2EqualCoeff[2],fZP2EqualCoeff[3],fZP2EqualCoeff[4]);
     134             : 
     135           0 : } 
     136             : 
     137             : //________________________________________________________________
     138             : void AliZDCCalib::SetEnCalib(Float_t* EnCalib) 
     139             : {
     140             :   // Set energy calibration coefficients
     141           0 :   if(EnCalib) for(int t=0; t<6; t++) fEnCalibration[t] = EnCalib[t];
     142           0 :   else for(int t=0; t<6; t++) fEnCalibration[t] = 0.;
     143           0 : }
     144             : 
     145             : //________________________________________________________________
     146             : void AliZDCCalib::SetZN1EqualCoeff(Float_t* EqualCoeff)
     147             : {
     148             :   // Set ZN1 equalization coefficients
     149           0 :   if(EqualCoeff) for(int t=0; t<5; t++) fZN1EqualCoeff[t] = EqualCoeff[t];
     150           0 :   else for(int t=0; t<5; t++) fZN1EqualCoeff[t] = 1.;
     151           0 : }
     152             :  
     153             : //________________________________________________________________
     154             : void AliZDCCalib::SetZP1EqualCoeff(Float_t* EqualCoeff)
     155             : {
     156             :   // Set ZP1 equalization coefficients
     157           0 :   if(EqualCoeff) for(int t=0; t<5; t++) fZP1EqualCoeff[t] = EqualCoeff[t];
     158           0 :   else for(int t=0; t<5; t++) fZP1EqualCoeff[t] = 1.;
     159           0 : }
     160             : //________________________________________________________________
     161             : void AliZDCCalib::SetZN2EqualCoeff(Float_t* EqualCoeff)
     162             : {
     163             :   // Set ZN2 equalization coefficients
     164           0 :   if(EqualCoeff) for(int t=0; t<5; t++) fZN2EqualCoeff[t] = EqualCoeff[t];
     165           0 :   else for(int t=0; t<5; t++) fZN2EqualCoeff[t] = 1.;
     166           0 : }
     167             :  
     168             : //________________________________________________________________
     169             : void AliZDCCalib::SetZP2EqualCoeff(Float_t* EqualCoeff)
     170             : {
     171             :   // Set ZN1 equalization coefficients
     172           0 :   if(EqualCoeff) for(int t=0; t<5; t++) fZP2EqualCoeff[t] = EqualCoeff[t];
     173           0 :   else for(int t=0; t<5; t++) fZP2EqualCoeff[t] = 1.;
     174           0 : }
     175             :  

Generated by: LCOV version 1.11