File indexing completed on 2024-04-06 12:31:35
0001 #ifndef TrackAssociator_TrackAssociatorParameters_h
0002 #define TrackAssociator_TrackAssociatorParameters_h 1
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0020 #include "FWCore/Framework/interface/ConsumesCollector.h"
0021 #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h"
0022 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h"
0023 #include "SimDataFormats/Track/interface/SimTrackContainer.h"
0024 #include "SimDataFormats/TrackingHit/interface/PSimHit.h"
0025 #include "SimDataFormats/Vertex/interface/SimVertexContainer.h"
0026 #include "SimDataFormats/CaloHit/interface/PCaloHitContainer.h"
0027 #include "DataFormats/CaloTowers/interface/CaloTowerCollection.h"
0028 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
0029 #include "DataFormats/DTRecHit/interface/DTRecSegment4DCollection.h"
0030 #include "DataFormats/CSCRecHit/interface/CSCSegmentCollection.h"
0031 #include "DataFormats/GEMRecHit/interface/GEMSegmentCollection.h"
0032 #include "DataFormats/GEMRecHit/interface/ME0SegmentCollection.h"
0033 #include "DataFormats/RPCRecHit/interface/RPCRecHitCollection.h"
0034 #include "DataFormats/GEMRecHit/interface/GEMRecHitCollection.h"
0035 #include "DataFormats/GEMRecHit/interface/ME0RecHitCollection.h"
0036
0037 class DetIdAssociator;
0038 class DetIdAssociatorRecord;
0039 class CaloGeometry;
0040 class CaloGeometryRecord;
0041 class GlobalTrackingGeometry;
0042 class GlobalTrackingGeometryRecord;
0043 class MagneticField;
0044 class IdealMagneticFieldRecord;
0045
0046 namespace edm {
0047 class ParameterSetDescription;
0048 }
0049
0050 class TrackAssociatorParameters {
0051 public:
0052 TrackAssociatorParameters() {}
0053 TrackAssociatorParameters(const edm::ParameterSet&, edm::ConsumesCollector&&);
0054 void loadParameters(const edm::ParameterSet&, edm::ConsumesCollector&);
0055
0056 static void fillPSetDescription(edm::ParameterSetDescription& descriptions);
0057
0058 double dREcal;
0059 double dRHcal;
0060 double dRMuon;
0061
0062 double dREcalPreselection;
0063 double dRHcalPreselection;
0064 double dRMuonPreselection;
0065 double dRPreshowerPreselection;
0066
0067
0068
0069
0070
0071
0072 bool accountForTrajectoryChangeCalo;
0073
0074
0075
0076
0077
0078
0079
0080
0081
0082 double muonMaxDistanceX;
0083 double muonMaxDistanceY;
0084 double muonMaxDistanceSigmaX;
0085 double muonMaxDistanceSigmaY;
0086
0087 bool useEcal;
0088 bool useHcal;
0089 bool useHO;
0090 bool useCalo;
0091 bool usePreshower;
0092 bool useMuon;
0093 bool truthMatch;
0094 bool useGEM;
0095 bool useME0;
0096 bool preselectMuonTracks;
0097
0098
0099 edm::InputTag theEBRecHitCollectionLabel;
0100 edm::InputTag theEERecHitCollectionLabel;
0101 edm::InputTag theCaloTowerCollectionLabel;
0102 edm::InputTag theHBHERecHitCollectionLabel;
0103 edm::InputTag theHORecHitCollectionLabel;
0104 edm::InputTag theDTRecSegment4DCollectionLabel;
0105 edm::InputTag theCSCSegmentCollectionLabel;
0106 edm::InputTag theGEMSegmentCollectionLabel;
0107 edm::InputTag theME0SegmentCollectionLabel;
0108 edm::InputTag theRPCHitCollectionLabel;
0109 edm::InputTag theGEMHitCollectionLabel;
0110 edm::InputTag theME0HitCollectionLabel;
0111
0112
0113
0114
0115
0116
0117
0118 double trajectoryUncertaintyTolerance;
0119
0120 edm::EDGetTokenT<EBRecHitCollection> EBRecHitsToken;
0121 edm::EDGetTokenT<EERecHitCollection> EERecHitsToken;
0122 edm::EDGetTokenT<CaloTowerCollection> caloTowersToken;
0123 edm::EDGetTokenT<HBHERecHitCollection> HBHEcollToken;
0124 edm::EDGetTokenT<HORecHitCollection> HOcollToken;
0125 edm::EDGetTokenT<DTRecSegment4DCollection> dtSegmentsToken;
0126 edm::EDGetTokenT<CSCSegmentCollection> cscSegmentsToken;
0127 edm::EDGetTokenT<GEMSegmentCollection> gemSegmentsToken;
0128 edm::EDGetTokenT<ME0SegmentCollection> me0SegmentsToken;
0129 edm::EDGetTokenT<RPCRecHitCollection> rpcHitsToken;
0130 edm::EDGetTokenT<GEMRecHitCollection> gemHitsToken;
0131 edm::EDGetTokenT<ME0RecHitCollection> me0HitsToken;
0132 edm::EDGetTokenT<edm::SimTrackContainer> simTracksToken;
0133 edm::EDGetTokenT<edm::SimVertexContainer> simVerticesToken;
0134 edm::EDGetTokenT<edm::PCaloHitContainer> simEcalHitsEBToken;
0135 edm::EDGetTokenT<edm::PCaloHitContainer> simEcalHitsEEToken;
0136 edm::EDGetTokenT<edm::PCaloHitContainer> simHcalHitsToken;
0137
0138 edm::ESGetToken<DetIdAssociator, DetIdAssociatorRecord> ecalDetIdAssociatorToken;
0139 edm::ESGetToken<DetIdAssociator, DetIdAssociatorRecord> hcalDetIdAssociatorToken;
0140 edm::ESGetToken<DetIdAssociator, DetIdAssociatorRecord> hoDetIdAssociatorToken;
0141 edm::ESGetToken<DetIdAssociator, DetIdAssociatorRecord> caloDetIdAssociatorToken;
0142 edm::ESGetToken<DetIdAssociator, DetIdAssociatorRecord> muonDetIdAssociatorToken;
0143 edm::ESGetToken<DetIdAssociator, DetIdAssociatorRecord> preshowerDetIdAssociatorToken;
0144 edm::ESGetToken<CaloGeometry, CaloGeometryRecord> theCaloGeometryToken;
0145 edm::ESGetToken<GlobalTrackingGeometry, GlobalTrackingGeometryRecord> theTrackingGeometryToken;
0146 edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> bFieldToken;
0147 };
0148 #endif