test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 {
28 public:
29  CSCTFSectorProcessor(const unsigned& endcap,
30  const unsigned& sector,
31  const edm::ParameterSet& pset,
32  bool tmb07,
33  const L1MuTriggerScales* scales,
34  const L1MuTriggerPtScale* ptScale );
35 
37  void initialize(const edm::EventSetup& c);
39 
41 
42  //returns 0 for normal fail, 1 for success, and -1 for exception
43  // on -1, Producer should produce empty collections for event
45 
47  std::vector<csctf::TrackStub> filteredStubs() const { return stub_vec_filtered; }
48 
50 
51  int minBX() const { return m_minBX; }
52  int maxBX() const { return m_maxBX; }
53 
54  void readParameters(const edm::ParameterSet& pset);
55 
56  void printDisclaimer(int firmSP, int firmFA);
57 
58  private:
59  // disallow copy and assignment
60  CSCTFSectorProcessor& operator=(const CSCTFSectorProcessor& rhs) { return *this; };
62 
64 
66  unsigned m_endcap, m_sector, TMB07;
67  unsigned m_latency;
68 
69  // All parameters below are signed to allow for uninitialized (<0) state
72  int m_etawin[7], m_etamin[8], m_etamax[8];
81  int m_widePhi;
82 
83  // following parameters were moved here from the CSCTFTrackBuilder because they naturally belong here
89  int run_core;
93  unsigned int singlesTrackOutput;
95 
97 
98  CSCTriggerContainer<csc::L1Track> l1_tracks; // fully defined L1Tracks
99  CSCTriggerContainer<csctf::TrackStub> dt_stubs; // Track Stubs to be sent to the DTTF
100  std::vector<csctf::TrackStub> stub_vec_filtered; // Collectin of stubs after applying kill_fiber and QualityEnable masks
101 
102  static const std::string FPGAs[5];
103 
104  std::map<std::string, CSCSectorReceiverLUT*> srLUTs_; // indexed by FPGA
107 
108  // firmware map
109  std::map<int, int> firmSP_Map;
111  bool initFail_;
112 };
113 
114 #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)
CSCTriggerContainer< csc::L1Track > tracks() const
std::map< int, int > firmSP_Map
CSCTFSectorProcessor(const CSCTFSectorProcessor &par)