00001
00002
00003 #ifndef FARDETSTRIPHANDLE_H
00004 #define FARDETSTRIPHANDLE_H
00005
00006 #include "FarDetStrip.h"
00007 #include "Navigation/XxxItr.h"
00008 #include "RecoBase/CandStripHandle.h"
00009 #include "Conventions/StripEnd.h"
00010 #include "Conventions/CalDigitType.h"
00011 #include "Conventions/CalTimeType.h"
00012
00013 class FarDetStripHandle : public CandStripHandle
00014 {
00015
00016 public:
00017 FarDetStripHandle();
00018 FarDetStripHandle(const FarDetStripHandle &csh);
00019 FarDetStripHandle(FarDetStrip *cs);
00020 virtual ~FarDetStripHandle();
00021 virtual FarDetStripHandle *DupHandle() const;
00022 virtual void Trace(const char* c) const;
00023
00024 void SetPlane(Int_t plane);
00025 void SetStrip(Int_t strip);
00026 void SetTime(CalTimeType::CalTimeType_t caltype_t, Double_t* time);
00027 void SetCharge(CalDigitType::CalDigitType_t caltype_t, Double_t* charge);
00028 void SetFibreLengths(Double_t* green, Double_t* wls, Double_t* clear, Double_t half);
00029 void SetXtalk(Int_t* xtalk);
00030
00031 Int_t GetPlane() const;
00032 Int_t GetStrip() const;
00033 Double_t GetTime() const;
00034 Double_t GetTime(StripEnd::StripEnd_t stripend_t) const;
00035 Double_t GetTime(CalTimeType::CalTimeType_t caltype_t) const;
00036 Double_t GetTime(StripEnd::StripEnd_t stripend_t,CalTimeType::CalTimeType_t caltype_t) const;
00037 Double_t GetTime(CalTimeType::CalTimeType_t caltype_t,StripEnd::StripEnd_t stripend_t) const;
00038 Double_t GetBegTime() const;
00039 Double_t GetBegTime(StripEnd::StripEnd_t stripend_t) const;
00040 Double_t GetBegTime(CalTimeType::CalTimeType_t caltype_t) const;
00041 Double_t GetBegTime(StripEnd::StripEnd_t stripend_t,CalTimeType::CalTimeType_t caltype_t) const;
00042 Double_t GetBegTime(CalTimeType::CalTimeType_t caltype_t,StripEnd::StripEnd_t stripend_t) const;
00043 Double_t GetEndTime() const;
00044 Double_t GetEndTime(StripEnd::StripEnd_t stripend_t) const;
00045 Double_t GetEndTime(CalTimeType::CalTimeType_t caltype_t) const;
00046 Double_t GetEndTime(StripEnd::StripEnd_t stripend_t,CalTimeType::CalTimeType_t caltype_t) const;
00047 Double_t GetEndTime(CalTimeType::CalTimeType_t caltype_t,StripEnd::StripEnd_t stripend_t) const;
00048 Double_t GetCharge() const;
00049 Double_t GetCharge(StripEnd::StripEnd_t stripend_t) const;
00050 Double_t GetCharge(CalDigitType::CalDigitType_t caltype_t) const;
00051 Double_t GetCharge(StripEnd::StripEnd_t stripend_t,CalDigitType::CalDigitType_t caltype_t) const;
00052 Double_t GetCharge(CalDigitType::CalDigitType_t caltype_t,StripEnd::StripEnd_t stripend_t) const;
00053 Double_t GetGreenFibre(StripEnd::StripEnd_t stripend_t) const;
00054 Double_t GetWlsPigtail(StripEnd::StripEnd_t stripend_t) const;
00055 Double_t GetClearFibre(StripEnd::StripEnd_t stripend_t) const;
00056 Double_t GetHalfLength() const;
00057 Int_t IsXtalk(StripEnd::StripEnd_t stripend_t) const;
00058
00059 private:
00060
00061 ClassDef(FarDetStripHandle,1)
00062
00063 };
00064
00065 XXXITRDEF(FarDetStripHandle)
00066
00067 #endif
00068