Go to the documentation of this file.00001 #ifndef CosmicTrackingRegion_H
00002 #define CosmicTrackingRegion_H
00003
00011 #include "RecoTracker/TkTrackingRegions/interface/TrackingRegionBase.h"
00012 #include "RecoTracker/TkTrackingRegions/interface/TkTrackingRegionsMargin.h"
00013
00014 #include "RecoTracker/TkTrackingRegions/interface/HitRZConstraint.h"
00015 #include "RecoTracker/TkTrackingRegions/interface/OuterHitPhiPrediction.h"
00016 #include "FWCore/Framework/interface/EventSetup.h"
00017 #include "RecoTracker/TkSeedingLayers/interface/SeedingLayer.h"
00018 #include <vector>
00019 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00020
00021 class OuterEstimator;
00022 class BarrelDetLayer;
00023 class ForwardDetLayer;
00024 typedef TransientTrackingRecHit::ConstRecHitPointer SeedingHit;
00025
00026 class CosmicTrackingRegion : public TrackingRegionBase {
00027 public:
00028
00029
00030
00032 CosmicTrackingRegion() { }
00033 virtual ~CosmicTrackingRegion() { }
00058 CosmicTrackingRegion( const GlobalVector & dir,
00059 const GlobalPoint & vertexPos,
00060 float ptMin, float rVertex, float zVertex,
00061 float deltaEta, float deltaPhi,
00062 float dummy = 0.)
00063 : TrackingRegionBase( dir, vertexPos, Range( -1/ptMin, 1/ptMin),
00064 rVertex, zVertex),
00065 measurementTrackerName_("")
00066 { }
00067
00068 CosmicTrackingRegion(const GlobalVector & dir,
00069 const GlobalPoint & vertexPos,
00070 float ptMin, float rVertex, float zVertex,
00071 float deltaEta, float deltaPhi,
00072 const edm::ParameterSet & extra)
00073 : TrackingRegionBase( dir, vertexPos, Range( -1/ptMin, 1/ptMin),
00074 rVertex, zVertex)
00075 {
00076 measurementTrackerName_ = extra.getParameter<std::string>("measurementTrackerName");
00077 }
00078
00079
00080
00082
00083
00086
00087
00089
00090
00091 virtual TrackingRegion::Hits hits(
00092 const edm::Event& ev,
00093 const edm::EventSetup& es,
00094 const ctfseeding::SeedingLayer* layer) const;
00095
00096 virtual HitRZCompatibility* checkRZ(
00097 const DetLayer* layer,
00098 const Hit & outerHit,
00099 const edm::EventSetup& iSetup) const {return 0; }
00100
00101 CosmicTrackingRegion * clone() const { return new CosmicTrackingRegion(*this); }
00102
00103 std::string name() const { return "CosmicTrackingRegion"; }
00104
00105
00106 private:
00107
00108 std::string measurementTrackerName_;
00109 };
00110
00111 #endif