]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSdcsSSD.h
Macro to plot pathlengths of back-to-back jets. (A. Dainese)
[u/mrichter/AliRoot.git] / ITS / AliITSdcsSSD.h
CommitLineData
b0f5e3fc 1#ifndef ALIITSDCSSSD_H
2#define ALIITSDCSSSD_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
b0f5e3fc 7//____________________________________________________________________
8//
9// Class AliITSdcsSSD
10// describes Detector Control System parameters for one SSD module.
11//
12// This class stores parametrers such as gain, threshold
13// capacitive coupling.
14//
15// Class takes care of invalid strip menagement during
16// simulation and runtime
17//
18//
19// created at: Warsaw University of Technology
20// ver. 1.0 WARSAW, 23.12.1999
21//
22//___________________________________________________________________
b0f5e3fc 23
e8189707 24#include <TObject.h>
b0f5e3fc 25
92c19c36 26class TArrayS;
27class TRandom;
b0f5e3fc 28class AliITSsegmentation;
29class AliITSresponse;
30
b0f5e3fc 31class AliITSdcsSSD: public TObject {
32
46e97372 33 public:
34 AliITSdcsSSD(); // Default constructor
35 // Standard constructor
36 AliITSdcsSSD(AliITSsegmentation *s, AliITSresponse *r);
37 virtual ~AliITSdcsSSD(); // Destructor
b0f5e3fc 38 AliITSdcsSSD(const AliITSdcsSSD &source); // copy constructor
39 AliITSdcsSSD& operator=(const AliITSdcsSSD &source); // assignment operator
b0f5e3fc 40 //________________________________________________________________
41 //
42 // Invalid strips management methods
43 //________________________________________________________________
b0f5e3fc 44 // Parameters for invalid strips MonteCarlo
b0f5e3fc 45 void SetInvalidParam(Float_t mean, Float_t sigma);
46e97372 46 void GetInvalidParam(Float_t &mean, Float_t &sigma);
b0f5e3fc 47 // Methods for creating invalid strips
b0f5e3fc 48 void SetInvalidMC(Float_t mean, Float_t sigma);
49 void SetInvalidMC();
b0f5e3fc 50 // Testing if strip is valid
b0f5e3fc 51 Bool_t IsValidN(Int_t strip); //True if strip works properly
46e97372 52 Bool_t IsValidP(Int_t strip); //True if strip works properly
b0f5e3fc 53 // Access to invalid strips
b0f5e3fc 54 TArrayS *GetInvalidP(); //Array of invalid P strips
55 TArrayS *GetInvalidN(); //Array of invalid N strips
56 Int_t GetNInvalidP(); //Number of invalid P strips
46e97372 57 Int_t GetNInvalidN(); //Number of invalid N strips
b0f5e3fc 58 // Creating invalid strips
ac74f489 59 void SetInvalidP(Int_t,Bool_t){}//Set invalid if true
60 void SetInvalidN(Int_t,Bool_t){}//Set invalid if true
46e97372 61 Float_t GetCouplingPR() {// couplings
ac74f489 62 return fCouplingPR;}
46e97372 63 Float_t GetCouplingPL() {// couplings
ac74f489 64 return fCouplingPL;}
46e97372 65 Float_t GetCouplingNR() {// couplings
ac74f489 66 return fCouplingNR;}
46e97372 67 Float_t GetCouplingNL() {// couplings
ac74f489 68 return fCouplingNL;}
b0f5e3fc 69
46e97372 70 protected:
b0f5e3fc 71 //_____________________________________________
72 //
73 // Parameters for invalid strips simulatation
46e97372 74 //_____________________________________________
b0f5e3fc 75 Float_t fCouplingPR; // couplings
76 Float_t fCouplingPL; // couplings
77 Float_t fCouplingNR; // couplings
78 Float_t fCouplingNL; // couplings
79
46e97372 80 Float_t fNstrips; //Number of strips
81 Float_t fNInvalid; //Mean number of invalid strips (for simulation)
82 Float_t fISigma; //RMS of invalid strips (Gaussian)
b0f5e3fc 83
46e97372 84 TArrayS *fInvalidP; //Array of invalid strips on P-side
85 TArrayS *fInvalidN; //Array of invalid strips on N-side
b0f5e3fc 86
87 ClassDef(AliITSdcsSSD, 1) // ITS SSD DCS specific class
88
89};
b0f5e3fc 90#endif