00001 // -*- C++ -*- 00002 // 00003 // Package: TrackAssociator 00004 // Class: TrackAssociatorParameters 00005 // 00006 /* 00007 00008 Description: track associator parameters 00009 00010 */ 00011 // 00012 // Original Author: Dmytro Kovalskyi 00013 // $Id: TrackAssociatorParameters.cc,v 1.6 2008/08/07 04:06:02 dmytro Exp $ 00014 // 00015 // 00016 00017 #include "TrackingTools/TrackAssociator/interface/TrackAssociatorParameters.h" 00018 00019 00020 void TrackAssociatorParameters::loadParameters( const edm::ParameterSet& iConfig ) 00021 { 00022 dREcal = iConfig.getParameter<double>("dREcal"); 00023 dRHcal = iConfig.getParameter<double>("dRHcal"); 00024 dRMuon = iConfig.getParameter<double>("dRMuon"); 00025 00026 dREcalPreselection = iConfig.getParameter<double>("dREcalPreselection"); 00027 dRHcalPreselection = iConfig.getParameter<double>("dRHcalPreselection"); 00028 dRMuonPreselection = iConfig.getParameter<double>("dRMuonPreselection"); 00029 00030 muonMaxDistanceX = iConfig.getParameter<double>("muonMaxDistanceX"); 00031 muonMaxDistanceY = iConfig.getParameter<double>("muonMaxDistanceY"); 00032 muonMaxDistanceSigmaX = iConfig.getParameter<double>("muonMaxDistanceSigmaX"); 00033 muonMaxDistanceSigmaY = iConfig.getParameter<double>("muonMaxDistanceSigmaY"); 00034 00035 useEcal = iConfig.getParameter<bool>("useEcal"); 00036 useHcal = iConfig.getParameter<bool>("useHcal"); 00037 useHO = iConfig.getParameter<bool>("useHO"); 00038 useCalo = iConfig.getParameter<bool>("useCalo"); 00039 useMuon = iConfig.getParameter<bool>("useMuon"); 00040 00041 theEBRecHitCollectionLabel = iConfig.getParameter<edm::InputTag>("EBRecHitCollectionLabel"); 00042 theEERecHitCollectionLabel = iConfig.getParameter<edm::InputTag>("EERecHitCollectionLabel"); 00043 theCaloTowerCollectionLabel = iConfig.getParameter<edm::InputTag>("CaloTowerCollectionLabel"); 00044 theHBHERecHitCollectionLabel = iConfig.getParameter<edm::InputTag>("HBHERecHitCollectionLabel"); 00045 theHORecHitCollectionLabel = iConfig.getParameter<edm::InputTag>("HORecHitCollectionLabel"); 00046 theDTRecSegment4DCollectionLabel = iConfig.getParameter<edm::InputTag>("DTRecSegment4DCollectionLabel"); 00047 theCSCSegmentCollectionLabel = iConfig.getParameter<edm::InputTag>("CSCSegmentCollectionLabel"); 00048 00049 accountForTrajectoryChangeCalo = iConfig.getParameter<bool>("accountForTrajectoryChangeCalo"); 00050 // accountForTrajectoryChangeMuon = iConfig.getParameter<bool>("accountForTrajectoryChangeMuon"); 00051 00052 truthMatch = iConfig.getParameter<bool>("truthMatch"); 00053 std::string type = iConfig.getParameter<std::string>("crossedEnergyType"); 00054 00055 crossedEnergyType = SinglePointAlongTrajectory; // default 00056 if ( type == "FivePointTwoSigmaElipseAlongTrajectory" ) 00057 crossedEnergyType = FivePointTwoSigmaElipseAlongTrajectory; 00058 else 00059 if ( type != "SinglePointAlongTrajectory" ) 00060 throw cms::Exception("ConfigurationError") << "Uknown algorithm type: " << type << "\n"; 00061 // propagateAllDirections = iConfig.getParameter<bool>("propagateAllDirections"); 00062 } 00063 00064 TrackAssociatorParameters::TrackAssociatorParameters( const edm::ParameterSet& iConfig ) 00065 { 00066 loadParameters( iConfig ); 00067 } 00068