Go to the documentation of this file.00001 #ifndef CSCTriggerPrimitives_CSCTriggerPrimitivesBuilder_h
00002 #define CSCTriggerPrimitives_CSCTriggerPrimitivesBuilder_h
00003
00019 #include <CondFormats/CSCObjects/interface/CSCBadChambers.h>
00020 #include <DataFormats/CSCDigi/interface/CSCComparatorDigiCollection.h>
00021 #include <DataFormats/CSCDigi/interface/CSCWireDigiCollection.h>
00022 #include <DataFormats/CSCDigi/interface/CSCALCTDigiCollection.h>
00023 #include <DataFormats/CSCDigi/interface/CSCCLCTDigiCollection.h>
00024 #include <DataFormats/CSCDigi/interface/CSCCorrelatedLCTDigiCollection.h>
00025 #include <DataFormats/CSCDigi/interface/CSCCLCTPreTriggerCollection.h>
00026 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00027
00028 class CSCDBL1TPParameters;
00029 class CSCMotherboard;
00030 class CSCMuonPortCard;
00031
00032 class CSCTriggerPrimitivesBuilder
00033 {
00034 public:
00035
00040 explicit CSCTriggerPrimitivesBuilder(const edm::ParameterSet&);
00041
00042 ~CSCTriggerPrimitivesBuilder();
00043
00045 void setConfigParameters(const CSCDBL1TPParameters* conf);
00046
00050 void build(const CSCBadChambers* badChambers,
00051 const CSCWireDigiCollection* wiredc,
00052 const CSCComparatorDigiCollection* compdc,
00053 CSCALCTDigiCollection& oc_alct, CSCCLCTDigiCollection& oc_clct,
00054 CSCCLCTPreTriggerCollection & oc_pretrig,
00055 CSCCorrelatedLCTDigiCollection& oc_lct,
00056 CSCCorrelatedLCTDigiCollection& oc_sorted_lct);
00057
00060 enum trig_cscs {MAX_ENDCAPS = 2, MAX_STATIONS = 4, MAX_SECTORS = 6,
00061 MAX_SUBSECTORS = 2, MAX_CHAMBERS = 9};
00062 private:
00063
00066 static const int min_endcap;
00067 static const int max_endcap;
00068 static const int min_station;
00069 static const int max_station;
00070 static const int min_sector;
00071 static const int max_sector;
00072 static const int min_subsector;
00073 static const int max_subsector;
00074 static const int min_chamber;
00075 static const int max_chamber;
00076
00077 int m_minBX, m_maxBX;
00078
00080 CSCMotherboard*
00081 tmb_[MAX_ENDCAPS][MAX_STATIONS][MAX_SECTORS][MAX_SUBSECTORS][MAX_CHAMBERS];
00082
00084 CSCMuonPortCard* m_muonportcard;
00085 };
00086
00087 #endif