Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

CandStripHandle.h

Go to the documentation of this file.
00001 
00002 // $Id: CandStripHandle.h,v 1.22 2007/11/08 13:50:05 musser Exp $
00003 //
00004 // CandStripHandle.h
00005 //
00006 // CandStripHandle is the access handle to CandStrip.
00007 //
00008 //
00009 // Author:  J. Musser 2004.08.01
00010 //
00012 
00013 #ifndef CANDSTRIPHANDLE_H
00014 #define CANDSTRIPHANDLE_H
00015 
00016 #include "CandDigit/CandDigitHandle.h"
00017 #include "Candidate/CandHandle.h"
00018 #include "Conventions/CalDigitType.h"
00019 #include "Conventions/PlaneView.h"
00020 #include "Conventions/StripEnd.h"
00021 #include "Navigation/XxxItr.h"
00022 #include "Plex/PlexStripEndId.h"
00023 class CandStrip;
00024 
00025 class PlexStripEndId;
00026 
00027 class CandStripHandle : public CandHandle
00028 {
00029 
00030   friend class CandTrack;
00031   friend class CandTrackHandle;
00032 
00033 public:
00034   CandStripHandle();
00035   CandStripHandle(const CandStripHandle &cdh);
00036   CandStripHandle(CandStrip *cd);
00037   virtual ~CandStripHandle();
00038   virtual CandStripHandle *DupHandle() const;
00039 
00040   virtual void Trace(const char *c = "") const;
00041 
00042   virtual Int_t GetPlane() const;
00043   
00044   virtual Int_t GetStrip() const;
00045  
00046   virtual void SetTPos(Double_t);
00047   virtual Double_t GetTPos() const;
00048   virtual Double_t GetTPos(Double_t orthopos) const;
00049 
00050   virtual void SetZPos(Double_t);
00051   virtual Double_t GetZPos() const;
00052   
00053   void SetCalTimeType(CalTimeType::CalTimeType_t);
00054   CalTimeType::CalTimeType_t GetCalTimeType() const; 
00055  
00056   virtual Double_t GetTime(StripEnd::StripEnd_t = StripEnd::kWhole) const; 
00057   virtual Double_t GetBegTime(StripEnd::StripEnd_t = StripEnd::kWhole) const;
00058   virtual Double_t GetEndTime(StripEnd::StripEnd_t = StripEnd::kWhole) const;
00059   virtual Double_t GetCorrBegTime() const;
00060   
00061 // default is StripEnd::StripEnd_t = StripEnd::kWhole
00062 //            CalDigitType::CalDigitType_t = CalDigitType::kPE
00063   virtual Double_t GetCharge() const;
00064   virtual Double_t GetCharge(StripEnd::StripEnd_t) const;
00065   virtual Double_t GetCharge(CalDigitType::CalDigitType_t) const;
00066   virtual Double_t GetCharge(StripEnd::StripEnd_t,CalDigitType::CalDigitType_t) const;
00067   virtual Double_t GetCharge(CalDigitType::CalDigitType_t,StripEnd::StripEnd_t) const;
00068   virtual Int_t GetNDigit(StripEnd::StripEnd_t = StripEnd::kWhole) const;
00069 
00070 // return 1 if all digits with StripEnd::StripEnd_t have veto set
00071   virtual UShort_t GetDemuxVetoFlag(StripEnd::StripEnd_t = StripEnd::kWhole) const;
00072 
00073   virtual PlexStripEndId GetStripEndId(StripEnd::StripEnd_t = StripEnd::kWhole) const;
00074 
00075   virtual PlaneView::PlaneView_t GetPlaneView() const;
00076 
00077   virtual void SetBestStripEndId(const PlexStripEndId);
00078 
00079   static NavKey KeyFromPlane(const CandStripHandle *);
00080   static NavKey KeyFromPlaneStripTime(const CandStripHandle *);
00081   static NavKey KeyFromView(const CandStripHandle *);
00082   static NavKey StripSRKeyFromPSEId(const CandStripHandle *csh);
00083   static NavKey StripSRKeyFromBegTime(const CandStripHandle *csh);
00084   
00085 ClassDef(CandStripHandle,1)           // User access handle to CandStrip
00086 
00087 };
00088 
00089 XXXITRDEF(CandStripHandle)
00090 
00091 #endif                                              // CANDSTRIPHANDLE_H

Generated on Mon Feb 15 11:06:29 2010 for loon by  doxygen 1.3.9.1