b7d8bf1e9548df6f21a809749263f765b4f90461
[u/mrichter/AliRoot.git] / ITS / AliITSresponseSPD.h
1 #ifndef ALIITSRESPONSESPD_H
2 #define ALIITSRESPONSESPD_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /*
7 $Id$
8 */
9
10 #include "AliITSresponse.h"
11 #include <TString.h>
12
13 //----------------------------------------------
14 //
15 // ITS response class for SPD
16 //
17 class AliITSresponseSPD :  public AliITSresponse {
18  public:
19     AliITSresponseSPD(); // default constructor
20     virtual ~AliITSresponseSPD() {} // destructror
21     // Configuration methods
22     // sets the diffusion coeffeciant.
23     virtual  void   SetDiffCoeff(Float_t p1=0) {fDiffCoeff=p1;}
24     // returns the diffusion coeffeciant
25     virtual  Float_t   DiffCoeff() {return fDiffCoeff;}
26     // Set Threshold and noise + threshold fluctuations parameter values
27     virtual  void   SetThresholds(Float_t thresh=2000, Float_t sigma=280)
28         {fThresh=thresh; fSigma=sigma;}
29     // Get Threshold and noise + threshold fluctuations parameter values
30     virtual  void   Thresholds(Float_t &thresh, Float_t &sigma)
31         {thresh=fThresh; sigma=fSigma;}
32     // set coupling parameters
33     virtual  void   SetNoiseParam(Float_t col=0., Float_t row=0.)
34         {fCouplCol=col; fCouplRow=row;}   
35     // get coupling parameters
36     virtual  void   GetNoiseParam(Float_t &col, Float_t &row)
37         {col=fCouplCol; row=fCouplRow;}
38     // Sets the fraction of Dead SPD Pixels
39     virtual void SetFractionDead(Float_t d=0.01){ fDeadPixels = d;}
40     // Retruns the fraction of Dead SPD Pixels
41     virtual Float_t GetFractionDead(){return fDeadPixels;}
42     // Type of data - real or simulated
43     virtual void    SetDataType(char *data="simulated") {fDataType=data;}
44     // Get data typer
45     virtual const char  *DataType() const {return fDataType.Data();}
46
47  protected:
48     Float_t fDiffCoeff;       // Sigma diffusion coefficient (not used) 
49     Float_t fThresh;          // Threshold value
50     Float_t fSigma;           // Noise + threshold fluctuations value
51     Float_t fCouplCol;        // Coupling probability along a column
52     Float_t fCouplRow;        // Coupling probability along a row
53     Float_t fDeadPixels;      // the fraction of dead pixels
54
55     TString fDataType;        // Type of data - real or simulated
56
57     ClassDef(AliITSresponseSPD,1) // SPD response
58 };
59
60 #endif