#ifndef HSTART2HITFPAR_H_
#define HSTART2HITFPAR_H_
#include "TArrayF.h"
#include "hparcond.h"
class HParamList;
class HStart2HitFPar : public HParCond {
private:
Int_t fModules;
Int_t fStrips;
TArrayF fMeanTime;
TArrayF fWidth;
private:
HStart2HitFPar(const HStart2HitFPar& source);
HStart2HitFPar& operator=(const HStart2HitFPar& source);
public:
HStart2HitFPar(const Char_t* name = "Start2HitFPar",
const Char_t* title = "Start2 Hit Finder Parameters",
const Char_t* context = "Start2HitFParProduction") :
HParCond(name, title, context),
fModules(0), fStrips(0) {}
~HStart2HitFPar() {}
void clear();
void printParams();
void putParams(HParamList* l);
Bool_t getParams(HParamList* l);
UInt_t getModules();
UInt_t getStrips();
Float_t getMeanTime(Int_t m, Int_t s);
Float_t getWidth(Int_t m, Int_t s);
ClassDef(HStart2HitFPar, 1)
};
inline UInt_t HStart2HitFPar::getModules()
{
return fModules;
}
inline UInt_t HStart2HitFPar::getStrips()
{
return fStrips;
}
inline Float_t HStart2HitFPar::getMeanTime(Int_t m, Int_t s)
{
if (m >= 0 && m < fModules &&
s >= 0 && s < fStrips &&
(fStrips * m + s) < fMeanTime.GetSize()) {
return fMeanTime[fStrips * m + s];
}
return -1e10;
}
inline Float_t HStart2HitFPar::getWidth(Int_t m, Int_t s)
{
if (m >= 0 && m < fModules &&
s >= 0 && s < fStrips &&
(fStrips * m + s) < fWidth.GetSize()) {
return fWidth[fStrips * m + s];
}
return -1e10;
}
#endif /*HSTART2HITFPAR_H_*/