#ifndef HTOFDIGIPAR_H
#define HTOFDIGIPAR_H
#include "TObject.h"
#include "TObjArray.h"
#include "hlocation.h"
#include "hparset.h"
class HTofDigiParCell : public TObject {
private:
Float_t halfLen;
Float_t angleRef;
Float_t attenLen;
Float_t groupVel;
Float_t slopeLeftTDC;
Float_t slopeRightTDC;
Int_t thrLeftCFD;
Int_t thrRightCFD;
Int_t thrLeftADC;
Int_t thrRightADC;
public:
HTofDigiParCell(void) {clear();}
~HTofDigiParCell(void) {}
Float_t getHalfLen() { return halfLen; }
Float_t getAngleRef() { return angleRef; }
Float_t getAttenLen() { return attenLen; }
Float_t getGroupVel() { return groupVel; }
Float_t getLeftTDCSlope() {return slopeLeftTDC; }
Float_t getRightTDCSlope() {return slopeRightTDC; }
Int_t getLeftCFDThreshold() { return thrLeftCFD; }
Int_t getRightCFDThreshold() { return thrRightCFD; }
Int_t getLeftADCThreshold() { return thrLeftADC; }
Int_t getRightADCThreshold() { return thrRightADC; }
void fill(HTofDigiParCell& c) {
halfLen=c.getHalfLen();
angleRef=c.getAngleRef();
attenLen=c.getAttenLen();
groupVel=c.getGroupVel();
slopeLeftTDC=c.getLeftTDCSlope();
slopeRightTDC=c.getRightTDCSlope();
thrLeftCFD=c.getLeftCFDThreshold();
thrRightCFD=c.getRightCFDThreshold();
thrLeftADC=c.getLeftADCThreshold();
thrRightADC=c.getRightADCThreshold();
}
void setHalfLen(Float_t f) { halfLen = f; }
void setAngleRef(Float_t f) { angleRef = f; }
void setAttenLen(Float_t f) { attenLen = f; }
void setGroupVel(Float_t f) { groupVel = f; }
void setLeftTDCSlope(Float_t f) {slopeLeftTDC = f; }
void setRightTDCSlope(Float_t f) {slopeRightTDC = f; }
void setLeftCFDThreshold(Int_t f) { thrLeftCFD = f; }
void setRightCFDThreshold(Int_t f) { thrRightCFD = f; }
void setLeftADCThreshold(Int_t f) { thrLeftADC = f; }
void setRightADCThreshold(Int_t f) { thrRightADC = f; }
void setDefaults(Int_t f);
void clear();
ClassDef(HTofDigiParCell,1)
};
class HTofDigiParMod: public TObject {
private:
TObjArray* array;
public:
HTofDigiParMod(Int_t s=0, Int_t m=0);
~HTofDigiParMod();
HTofDigiParCell& operator[](Int_t i) {
return *static_cast<HTofDigiParCell*>((*array)[i]);
}
Int_t getSize() { return array->GetEntries(); }
ClassDef(HTofDigiParMod,1)
};
class HTofDigiParSec: public TObject {
private:
TObjArray* array;
public:
HTofDigiParSec(Int_t s=0, Int_t n=22);
~HTofDigiParSec();
HTofDigiParMod& operator[](Int_t i) {
return *static_cast<HTofDigiParMod*>((*array)[i]);
}
Int_t getSize() { return array->GetEntries(); }
ClassDef(HTofDigiParSec,1)
};
class HTofDigiPar : public HParSet {
private:
TObjArray* array;
void printPause(void);
public:
HTofDigiPar(const Char_t* name="TofDigiPar",
const Char_t* title="TOF digitization parameters",
const Char_t* context="TofDigiProduction");
~HTofDigiPar(void);
HTofDigiParSec& operator[](Int_t i) {
return *static_cast<HTofDigiParSec*>((*array)[i]);
}
Int_t getSize() { return array->GetEntries(); }
Bool_t init(HParIo*,Int_t*);
Int_t write(HParIo*);
void clear();
void printParam();
void readline(const Char_t*, Int_t*);
void putAsciiHeader(TString&);
Bool_t writeline(Char_t*, Int_t, Int_t, Int_t);
ClassDef(HTofDigiPar,1)
};
#endif /* !HTOFDIGIPAR_H */
Last change: Sat May 22 13:16:01 2010
Last generated: 2010-05-22 13:16
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.