- diff = fDiffCoeff;
- diff1 = fDiffCoeff1;
- }
-
- void SetDriftSpeed(Float_t p1=7.3) {
- // Drift velocity
- fDriftSpeed=p1;
- }
- Float_t DriftSpeed() {
- // drift speed
- return fDriftSpeed;
- }
-
- void SetTemperature(Float_t p1=23.) {
- // Temperature
- fTemperature=p1;
- }
- Float_t Temperature() {
- // Get temperature
- return fTemperature;
- }
-
- void SetDataType(const char *data="simulated") {
- // Type of data - real or simulated
- fDataType=data;
- }
- const char *DataType() const {
- // Get data type
- return fDataType.Data();
- }
-
- void SetParamOptions(const char *opt1="same",const char *opt2="same"){
- // Parameters: "same" or read from "file"
- fParam1=opt1; fParam2=opt2;
- }
- void ParamOptions(char *opt1,char *opt2) {
- // options
- strcpy(opt1,fParam1.Data()); strcpy(opt2,fParam2.Data());
- }
-
- void SetNoiseParam(Float_t n=0., Float_t b=20.){
- // Noise and baseline // 8.3 for ALICE with beam test measurements
- fNoise=n; fBaseline=b;
- }
- void SetNoiseAfterElectronics(Float_t n=0.){
- // Noise after electronics (ADC units) // 1.6 for ALICE from beam test measurements
- fNoiseAfterEl=n;
- }
- void GetNoiseParam(Float_t &n, Float_t &b) {
- // get noise param
- n=fNoise; b=fBaseline;
- }
- Float_t GetNoiseAfterElectronics(){
- // Noise after electronics (ADC units)
- return fNoiseAfterEl;
- }
-
- void SetDo10to8(Bool_t bitcomp=kTRUE) {
- // set the option for 10 to 8 bit compression
- fBitComp = bitcomp;
- }
-
- Bool_t Do10to8() {
- // get 10 to 8 compression option
- return fBitComp;
- }
-
- void SetZeroSupp (const char *opt="1D") {
- // Zero-suppression option - could be 1D, 2D or non-ZS
- fOption=opt;
- }
- const char *ZeroSuppOption() const {
- // Get zero-suppression option
- return fOption.Data();
- }
- void SetMinVal(Int_t mv=4) {
- // Min value used in 2D - could be used as a threshold setting
- fMinVal = mv;
- }
- Int_t MinVal() {
- // min val
- return fMinVal;
- }
-
- void SetFilenames(const char *f1="",const char *f2="",const char *f3="") {
- // Set filenames - input, output, parameters ....
- fFileName1=f1; fFileName2=f2; fFileName3=f3;
- }
- void Filenames(char *input,char *baseline,char *param) {
- // Filenames
- strcpy(input,fFileName1.Data()); strcpy(baseline,fFileName2.Data());
- strcpy(param,fFileName3.Data());
- }
-
-
- void SetOutputOption(Bool_t write=kFALSE) {
- // set output option
- fWrite = write;
- }
- Bool_t OutputOption() {
- // output option
- return fWrite;
- }
- //
- // Compression parameters
- void SetCompressParam(Int_t cp[8]);
- void GiveCompressParam(Int_t *x);
-
- //
- // Detector type response methods
- void SetNSigmaIntegration(Float_t p1=3.) {
- // Set number of sigmas over which cluster disintegration is performed
- fNsigmas=p1;
- }
- Float_t NSigmaIntegration() {
- // Get number of sigmas over which cluster disintegration is performed
- return fNsigmas;
- }
- void SetNLookUp(Int_t p1=121) {
- // Set number of sigmas over which cluster disintegration is performed
- fNcomps=p1;
- fGaus = new TArrayF(fNcomps+1);
- for(Int_t i=0; i<=fNcomps; i++) {
- Float_t x = -fNsigmas + (2.*i*fNsigmas)/(fNcomps-1);
- (*fGaus)[i] = exp(-((x*x)/2));
- // cout << "fGaus[" << i << "]: " << fGaus->At(i) << endl;
- }
- }
+ virtual void DiffCoeff(Float_t&diff,Float_t&diff1) const
+ {diff = fDiffCoeff;diff1 = fDiffCoeff1;}
+ virtual void SetDriftSpeed(Float_t p1) {// Drift velocity
+ fDriftSpeed=p1;}
+ virtual Float_t DriftSpeed() const {// drift speed
+ return fDriftSpeed;}
+ virtual void SetParamOptions(const char *opt1,const char *opt2){
+ // Parameters: "same" or read from "file"
+ fParam1=opt1; fParam2=opt2;}
+ virtual void ParamOptions(char *opt1,char *opt2) const {// options
+ strcpy(opt1,fParam1.Data()); strcpy(opt2,fParam2.Data());}
+ virtual void SetNoiseParam(Float_t n, Float_t b){
+ // Noise and baseline // 10 for ALICE with beam test measurements 2001
+ fNoise=n; fBaseline=b;}
+ virtual void GetNoiseParam(Float_t &n, Float_t &b) const {// get noise param
+ n=fNoise; b=fBaseline;}
+ virtual Bool_t Do10to8() const {// get 10 to 8 compression option
+ return fBitComp;}
+ void SetZeroSupp (const char *opt) {
+ // Zero-suppression option - could be 1D, 2D or non-ZS
+ fOption=opt;}
+ const char *ZeroSuppOption() const {// Get zero-suppression option
+ return fOption.Data();}
+ virtual void SetThresholds(Float_t mv, Float_t /* b */){
+ // Min value used in 2D - could be used as a threshold setting
+ fMinVal = mv;}
+ virtual void Thresholds(Float_t & mv, Float_t & /* b */) const
+ {mv = fMinVal;}
+ virtual void GiveCompressParam(Int_t *x) const;
+ // Detector type response methods
+ virtual void SetNSigmaIntegration(Float_t p1) {
+ // Set number of sigmas over which cluster disintegration is performed
+ fNsigmas=p1;}
+ virtual Float_t NSigmaIntegration() const {
+ // Get number of sigmas over which cluster disintegration is performed
+ return fNsigmas;}
+ virtual void SetNLookUp(Int_t p1);