CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_4/src/RecoTracker/TkHitPairs/src/CosmicHitPairGenerator.cc

Go to the documentation of this file.
00001 //#include "RecoTracker/TkHitPairs/interface/LayerWithHits.h"
00002 #include "RecoTracker/TkHitPairs/interface/CosmicHitPairGenerator.h"
00003 #include "RecoTracker/TkHitPairs/interface/SeedLayerPairs.h"
00004 #include "RecoTracker/TkHitPairs/interface/CosmicHitPairGeneratorFromLayerPair.h"
00005 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00006 
00007 using namespace std;
00008 
00009 
00010 CosmicHitPairGenerator::CosmicHitPairGenerator(SeedLayerPairs& layers,
00011                                                    const edm::EventSetup& iSetup)
00012 {
00013 
00014   vector<SeedLayerPairs::LayerPair> layerPairs = layers();
00015   vector<SeedLayerPairs::LayerPair>::const_iterator it;
00016   for (it = layerPairs.begin(); it != layerPairs.end(); it++) {
00017     add( (*it).first, (*it).second,iSetup);
00018   }
00019 
00020 }
00021 
00022 
00023 
00024 CosmicHitPairGenerator::~CosmicHitPairGenerator()
00025 {
00026   Container::const_iterator it;
00027   for (it = theGenerators.begin(); it!= theGenerators.end(); it++) {
00028     delete (*it);
00029   }
00030 }
00031 
00032 
00033 void CosmicHitPairGenerator::add(
00034                                    const LayerWithHits *inner, const LayerWithHits *outer,
00035                                    const edm::EventSetup& iSetup) 
00036 { 
00037   theGenerators.push_back( 
00038                           new CosmicHitPairGeneratorFromLayerPair( inner, outer, iSetup));
00039 }
00040 
00041 void CosmicHitPairGenerator::hitPairs(
00042                                         const TrackingRegion& region, 
00043                                         OrderedHitPairs & pairs,
00044                                         const edm::EventSetup& iSetup)
00045 {
00046 
00047   Container::const_iterator i;
00048   for (i=theGenerators.begin(); i!=theGenerators.end(); i++) {
00049     (**i).hitPairs( region, pairs, iSetup); 
00050   }
00051  
00052 }
00053 
00054