00001
00002
00003
00004
00005
00006
00007
00008
00009
00011
00012 #ifndef ALGDEMUXGOLDEN_H
00013 #define ALGDEMUXGOLDEN_H
00014
00015 #include "Algorithm/AlgBase.h"
00016
00017 class CandDeMuxDigitHandle;
00018 class DmxPlaneItr;
00019 class DmxStatus;
00020
00021 class AlgDeMuxGolden : public AlgBase
00022 {
00023
00024 public:
00025
00026
00027 AlgDeMuxGolden();
00028 virtual ~AlgDeMuxGolden();
00029
00030
00031 virtual void Trace(const char *c) const;
00032
00033
00034 virtual void RunAlg(AlgConfig &acd, CandHandle &ch, CandContext &cx);
00035
00036 private:
00037
00038 Int_t fStrayPlanes;
00039 UInt_t fPlanesInSet;
00040 Int_t fStrayCut;
00041 void SetPlanesToDeterminedFit(DmxPlaneItr &planeItr, Double_t a, Double_t b,
00042 Int_t firstPlane, Int_t lastPlane);
00043 void UseGoldenFit(DmxPlaneItr &leadPlaneItr, DmxPlaneItr &goldenPlaneItr,
00044 Int_t vertexPlane, Int_t endPlane);
00045
00046 ClassDef(AlgDeMuxGolden,1)
00047
00048 };
00049
00050 #endif // ALGDEMUXGOLDEN_H
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079