00001
00002
00003
00004
00005
00006
00007
00009
00010 #ifndef CANDSHOWERSRHANDLE_H
00011 #define CANDSHOWERSRHANDLE_H
00012
00013 #include "Navigation/XxxItr.h"
00014 #include "RecoBase/CandShowerHandle.h"
00015 #include "CandSubShowerSR/CandSubShowerSRHandle.h"
00016 class CandShowerSR;
00017 class CandTrackHandle;
00018
00019 class CandShowerSRHandle : public CandShowerHandle
00020 {
00021
00022 public:
00023 CandShowerSRHandle();
00024 CandShowerSRHandle(const CandShowerSRHandle &cdh);
00025 CandShowerSRHandle(CandShowerSR *cd);
00026 virtual ~CandShowerSRHandle();
00027 virtual CandShowerSRHandle *DupHandle() const;
00028
00029 virtual void Trace(const char *c = "") const;
00030
00031 void AddSubShower(CandSubShowerSRHandle *);
00032 void RemoveSubShower(CandSubShowerSRHandle *);
00033 const CandSubShowerSRHandle *GetSubShower(Int_t) const;
00034 Int_t GetLastSubShower() const;
00035
00036 void SetNumSubShowersU(Int_t);
00037 Int_t GetNumSubShowersU() const;
00038
00039 void SetNumSubShowersV(Int_t);
00040 Int_t GetNumSubShowersV() const;
00041
00042 Float_t GetMinPhysU(Int_t) const;
00043 Float_t GetMaxPhysU(Int_t) const;
00044 Float_t GetMinPhysV(Int_t) const;
00045 Float_t GetMaxPhysV(Int_t) const;
00046 Int_t GetNPhysStrips(Int_t) const;
00047
00048 Bool_t BelongsWithTrack(CandTrackHandle *,AlgConfig &,
00049 const VldContext *,Double_t,
00050 Double_t, Double_t);
00051
00052 Bool_t BelongsWithShower(CandShowerHandle *,AlgConfig &,
00053 const VldContext *,Double_t,
00054 Double_t, Double_t);
00055 Bool_t BuriedTrack(CandTrackHandle *,Double_t,Int_t *stats=0);
00056 Bool_t IsUnphysical(Float_t xtalkFrac=0.660,
00057 Float_t xtalkCut=2.0);
00058
00059 Double_t GetPHWTime(Double_t&);
00060 Double_t GetAveTime(Double_t&);
00061
00062 ClassDef(CandShowerSRHandle,1)
00063
00064 };
00065
00066 XXXITRDEF(CandShowerSRHandle)
00067
00068 #endif