1 #ifndef ALIITSRESPONSESDD_H
2 #define ALIITSRESPONSESDD_H
4 #include "AliITSresponse.h"
8 class AliITSresponseSDD :
9 public AliITSresponse {
12 // Configuration methods
16 virtual ~AliITSresponseSDD() {
19 AliITSresponseSDD(const AliITSresponseSDD &source); // copy constructor
20 AliITSresponseSDD& operator=(const AliITSresponseSDD &source); // ass. op.
22 virtual void SetMaxAdc(Float_t p1=1023) {
23 // Adc-count saturation value
26 virtual Float_t MaxAdc() {
27 // Get maximum Adc-count value
31 virtual void SetMagicValue(Float_t p1=450.) {
32 // Set maximum Adc-magic value
35 virtual Float_t MagicValue() {
36 // Get maximum Adc-magic value
40 virtual void SetDiffCoeff(Float_t p1=5.) {
41 // Diffusion coefficient
44 virtual Float_t DiffCoeff() {
45 // Get diffusion coefficient
49 virtual void SetQref(Float_t p1=120.) {
53 virtual Float_t Qref() {
58 virtual void SetDriftSpeed(Float_t p1=7.5) {
62 virtual Float_t DriftSpeed() {
67 virtual void SetTemperature(Float_t p1=23.) {
71 virtual Float_t Temperature() {
76 virtual void SetDataType(char *data="simulated") {
77 // Type of data - real or simulated
80 virtual char *DataType() {
85 virtual void SetParamOptions(Option_t *opt1="same",Option_t *opt2="same"){
86 // Parameters: "same" or read from "file"
87 fParam1=opt1; fParam2=opt2;
89 virtual void ParamOptions(Option_t *&opt1,Option_t *&opt2) {
91 opt1=fParam1; opt2=fParam2;
94 virtual void SetNoiseParam(Float_t n=3., Float_t b=20.){
96 fNoise=n; fBaseline=b;
98 virtual void GetNoiseParam(Float_t &n, Float_t &b) {
100 n=fNoise; b=fBaseline;
103 virtual void SetZeroSupp(Option_t *opt="2D") {
104 // Zero-suppression option - could be 1D, 2D or non-ZS
107 virtual Option_t *ZeroSuppOption() {
108 // Get zero-suppression option
111 virtual void SetMinVal(Int_t mv=4) {
112 // Min value used in 2D - could be used as a threshold setting
115 virtual Int_t MinVal() {
120 virtual void SetFilenames(char *f1=0,char *f2=0, char *f3=0) {
121 // Set filenames - input, output, parameters ....
122 fFileName1=f1; fFileName2=f2; fFileName3=f3;
124 virtual void Filenames(const char*input,const char*baseline,const char*param) {
126 input=fFileName1; baseline=fFileName2; param=fFileName3;
130 virtual void SetOutputOption(Bool_t write=kFALSE) {
134 Bool_t OutputOption() {
139 // Compression parameters
140 virtual void SetCompressParam(Int_t cp[8]);
141 void GiveCompressParam(Int_t *x);
144 // Detector type response methods
145 virtual void SetNSigmaIntegration(Float_t p1) {
146 // Set number of sigmas over which cluster disintegration is performed
148 virtual Float_t NSigmaIntegration() {
149 // Get number of sigmas over which cluster disintegration is performed
152 virtual void SetSigmaSpread(Float_t p1, Float_t p2) {
153 // Set sigmas of the charge spread function
155 virtual void SigmaSpread(Float_t &s1, Float_t &s2) {
156 // Get sigmas for the charge spread
159 virtual Float_t IntPH(Float_t eloss) {
160 // Pulse height from scored quantity (eloss)
163 virtual Float_t IntXZ(AliITSsegmentation *) {
164 // Charge disintegration
171 Int_t fCPar[8]; // Hardware compression parameters
172 //Int_t fNDetPar; // Number of detector param
173 //Float_t fDetPar[fNDetPar];
175 Float_t fNoise; // Noise
176 Float_t fBaseline; // Baseline
177 Float_t fTopValue; // still unclear to me
178 Float_t fTemperature; // Temperature
179 Float_t fDriftSpeed; // Drift velocity
181 Float_t fMaxAdc; // Adc saturation value
182 Float_t fDiffCoeff; // Diffusion Coefficient
183 Float_t fQref; // Coulomb repulsion
185 Int_t fZeroSuppFlag; // Zero-suppression flag
186 Int_t fMinVal; // Min value used in 2D zero-suppression algo
188 Bool_t fWrite; // Write option for the compression algorithms
189 Option_t *fOption; //!
190 // Zero-suppresion option (1D, 2D or none)
191 Option_t *fParam1; //!
192 //Read baselines from file option
193 Option_t *fParam2; //!
194 //Read compression algo thresholds from file
197 // input keys : run, module #
198 char* fFileName1; //!
199 // input keys : run, module #
200 char* fFileName2; //!
201 // baseline & noise val or output coded // signal or monitored bgr.
202 char* fFileName3; //!
203 // param values or output coded signal
205 ClassDef(AliITSresponseSDD,1) // SDD response