CMS 3D CMS Logo

CSCTFSectorProcessor.h
Go to the documentation of this file.
1 
8 #ifndef CSCTrackFinder_CSCTFSectorProcessor_h
9 #define CSCTrackFinder_CSCTFSectorProcessor_h
10 
11 #include <vector>
12 #include <map>
13 #include <string>
18 
25 
27 public:
28  CSCTFSectorProcessor(const unsigned& endcap,
29  const unsigned& sector,
30  const edm::ParameterSet& pset,
31  bool tmb07,
32  const L1MuTriggerScales* scales,
34 
36  void initialize(const edm::EventSetup& c);
38 
40 
41  //returns 0 for normal fail, 1 for success, and -1 for exception
42  // on -1, Producer should produce empty collections for event
44 
46  std::vector<csctf::TrackStub> filteredStubs() const { return stub_vec_filtered; }
47 
49 
50  int minBX() const { return m_minBX; }
51  int maxBX() const { return m_maxBX; }
52 
53  void readParameters(const edm::ParameterSet& pset);
54 
55  void printDisclaimer(int firmSP, int firmFA);
56 
57 private:
58  // disallow copy and assignment
59  CSCTFSectorProcessor& operator=(const CSCTFSectorProcessor& rhs) { return *this; };
61 
63 
65  unsigned m_endcap, m_sector, TMB07;
66  unsigned m_latency;
67 
68  // All parameters below are signed to allow for uninitialized (<0) state
71  int m_etawin[7], m_etamin[8], m_etamax[8];
80  int m_widePhi;
81 
82  // following parameters were moved here from the CSCTFTrackBuilder because they naturally belong here
88  int run_core;
91  unsigned int singlesTrackOutput;
93 
95 
96  CSCTriggerContainer<csc::L1Track> l1_tracks; // fully defined L1Tracks
97  CSCTriggerContainer<csctf::TrackStub> dt_stubs; // Track Stubs to be sent to the DTTF
98  std::vector<csctf::TrackStub>
99  stub_vec_filtered; // Collectin of stubs after applying kill_fiber and QualityEnable masks
100 
101  static const std::string FPGAs[5];
102 
103  std::map<std::string, CSCSectorReceiverLUT*> srLUTs_; // indexed by FPGA
106 
107  // firmware map
108  std::map<int, int> firmSP_Map;
110  bool initFail_;
111 };
112 
113 #endif
std::vector< csctf::TrackStub > filteredStubs() const
CSCTriggerContainer< csctf::TrackStub > dt_stubs
CSCTFSPCoreLogic * core_
void readParameters(const edm::ParameterSet &pset)
std::vector< csctf::TrackStub > stub_vec_filtered
CSCTriggerContainer< csctf::TrackStub > dtStubs() const
void initialize(const edm::EventSetup &c)
KK.
void printDisclaimer(int firmSP, int firmFA)
static const std::string FPGAs[5]
int run(const CSCTriggerContainer< csctf::TrackStub > &)
CSCTFSectorProcessor & operator=(const CSCTFSectorProcessor &rhs)
CSCTriggerContainer< csc::L1Track > l1_tracks
std::map< std::string, CSCSectorReceiverLUT * > srLUTs_
CSCTFSectorProcessor(const unsigned &endcap, const unsigned &sector, const edm::ParameterSet &pset, bool tmb07, const L1MuTriggerScales *scales, const L1MuTriggerPtScale *ptScale)
const std::vector< double > ptScale
Definition: Utilities.cc:33
CSCTriggerContainer< csc::L1Track > tracks() const
std::map< int, int > firmSP_Map
CSCTFSectorProcessor(const CSCTFSectorProcessor &par)