00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00012
00013 #ifndef DMXHYPOTHESIS_H
00014 #define DMXHYPOTHESIS_H
00015
00016 #include "TObject.h"
00017 #include "Candidate/CandHandle.h"
00018 #include "CandDigit/CandDeMuxDigitHandle.h"
00019 #include "Navigation/XxxItr.h"
00020 XXXITRDEF(DmxHypothesis)
00021
00022 class AlgConfig;
00023 class DmxStatistic;
00024 class UgliGeomHandle;
00025
00026 class DmxHypothesis : public TObject{
00027
00028 public:
00029
00030 DmxHypothesis();
00031 DmxHypothesis(AlgConfig &acd, CandDeMuxDigitHandleItr &cdhitr,Int_t lowerStrip,
00032 Int_t upperStrip);
00033 virtual ~DmxHypothesis();
00034
00035 Float_t GetCoG() const;
00036 Int_t GetCompareFlag() const;
00037 Int_t GetLowerBound() const;
00038 Float_t GetMatedSignalRatio() const;
00039 Int_t GetNumberOfStripsUsed() const;
00040 Float_t GetStat() const;
00041 DmxStatistic *GetStatObject() const;
00042 Float_t GetTieBreakerStat() const;
00043 Float_t GetTimingOffset(UgliGeomHandle *ugh);
00044
00045 Int_t GetUpperBound() const;
00046 Bool_t IsValid() const;
00047 void PrintRecon();
00048 void SetStrips();
00049
00050 private:
00051
00052
00053
00054 bool fAllUsed;
00055 CandDeMuxDigitHandleItr fCdhit;
00056 Int_t fCompare;
00057 Float_t fCoG;
00058 Int_t fLowerBound;
00059 Int_t fMaxSeparation;
00060 Float_t fMatedSignalRatio;
00061
00062 Float_t fRequiredMatedSignalRatio;
00063
00064
00065 DmxStatistic *fStat;
00066 Int_t fStripsUsed;
00067
00068 Int_t fUpperBound;
00069
00070 ClassDef(DmxHypothesis, 1)
00071
00072 };
00073
00074 #endif // DMXHYPOTHESIS_H
00075
00076
00077
00078
00079
00080
00081
00082
00083