LCOV - code coverage report
Current view: top level - ITS/ITSbase - AliITSCalibration.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 5 17 29.4 %
Date: 2016-06-14 17:26:59 Functions: 6 22 27.3 %

          Line data    Source code
       1             : #ifndef ALIITSCALIBRATION_H
       2             : #define ALIITSCALIBRATION_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : /* $Id$ */
       7             : 
       8             : //////////////////////////////////////////////
       9             : // Base ITS calibration class               //
      10             : //////////////////////////////////////////////
      11             : 
      12             : #include <TObject.h>
      13             : #include <TString.h>
      14             : #include "AliLog.h"
      15             : #include "AliITSCorrMapSDD.h"
      16             : #include "AliITSDriftSpeedArraySDD.h"
      17             : 
      18             : class AliITSsegmentation;
      19             : class TF1;
      20             : class AliITSgeom;
      21             : 
      22             : using std::istream;
      23             : 
      24             : /////////////////////////////////////////////
      25             : //                                         //
      26             : // ITS calibration virtual base class      //
      27             : /////////////////////////////////////////////
      28             : class AliITSCalibration : public TObject {
      29             :  public:
      30             :     // Default Constructor
      31             :     AliITSCalibration();
      32             : 
      33             :     // Destructor.
      34        3840 :     virtual ~AliITSCalibration() {;}
      35             : 
      36             :     // Check for dead modules anche chips
      37             :     // Return 1 if the module/chip is dead, 0 if it is ok
      38           0 :     virtual Bool_t IsBad() const {AliError("This method must be implemented in a derived class"); return kFALSE;}
      39           0 :     virtual Bool_t IsChipBad(Int_t) const {AliError("This method must be implemented in a derived class"); return kFALSE;}
      40           0 :     virtual Bool_t IsWingBad(Int_t) const {AliError("This method must be implemented in a derived class"); return kFALSE;}
      41             :     //
      42             :     // Configuration methods
      43             :     //
      44             :     // Temperature in [degree K]
      45        1560 :     virtual void    SetTemperature(Double_t t=300.0) {fT = t;}
      46             :     // Get temperature [degree K]
      47           0 :     virtual Double_t Temperature() const {return fT;}
      48             :  
      49             :     // Get data type
      50           0 :     virtual const char  *DataType() const {return fDataType.Data();}
      51             :     // Type of data - real or simulated
      52        5400 :     virtual void    SetDataType(const char *data="simulated") {fDataType=data;}
      53             :     // Number of parameters to be set
      54             :     virtual  void   SetNDetParam(Int_t) = 0;
      55             :     // Set detector parameters: gain, coupling ...
      56             :     virtual  void   SetDetParam(Double_t *) = 0;
      57             : 
      58             :     virtual Int_t  NDetParam() const = 0;
      59             :     virtual void   GetDetParam(Double_t *) const = 0;
      60           0 :     virtual void   SetMapA(Int_t, AliITSCorrMapSDD*) {AliError("This method must be implemented in a derived class");}
      61           0 :     virtual void   SetMapT(Int_t, AliITSCorrMapSDD*) {AliError("This method must be implemented in a derived class");}
      62           0 :     virtual void   SetDriftSpeed(Int_t, AliITSDriftSpeedArraySDD*) {AliError("This method must be implemented in a derived class");}
      63             :     // Set sigmas of the charge spread function
      64             :     virtual void    SetSigmaSpread(Double_t, Double_t) = 0;
      65             :     // Get sigmas for the charge spread
      66             :     virtual void    SigmaSpread(Double_t &,Double_t &) const = 0;
      67             : 
      68             :     // Needed for SSD bad modules retrieval in the tracker
      69        2000 :     virtual void    SetModuleIndex(Int_t /*modId*/) {};
      70             : 
      71             :     // Prints out the content of this class in ASCII format.
      72             :     virtual void Print(ostream *os) const;
      73             :     // Reads in the content of this class in the format of Print
      74             :     virtual void Read(istream *is);
      75           0 :     virtual void Print(Option_t *option="") const {TObject::Print(option);}
      76           0 :     virtual Int_t Read(const char *name) {return TObject::Read(name);}
      77             : 
      78             : 
      79             :  protected:
      80             :     AliITSCalibration(const AliITSCalibration &ob); // copy constructor
      81             :     AliITSCalibration& operator=(const AliITSCalibration& source); // ass.
      82           0 :     void NotImplemented(const char *method) const {if(gDebug>0)
      83           0 :          Warning(method,"This method is not implemented for this sub-class");}
      84             : 
      85             :     TString  fDataType;   // data type - real or simulated
      86             :     
      87             :     Float_t fT;   // The temperature of the Si in Degree K.
      88             :                  // deleted here but in AliITSDetTypeSim and AliITSDetTypeRec
      89             : 
      90         130 :     ClassDef(AliITSCalibration,3) // Detector type response virtual base class 
      91             : };
      92             : // Input and output function for standard C++ input/output.
      93             : ostream& operator<<(ostream &os,AliITSCalibration &source);
      94             : istream& operator>>(istream &os,AliITSCalibration &source);
      95             : #endif

Generated by: LCOV version 1.11