70 bool my_CCBValid =
false;
84 : my_trig(
pset, consumesCollector()),
85 phToken_{produces<L1MuDTChambPhContainer>()},
86 thToken_{produces<L1MuDTChambThContainer>()},
87 dtConfigToken_(esConsumes<DTConfigManager, DTConfigManagerRcd, edm::Transition::BeginRun>()),
88 my_DTTFnum{
pset.getParameter<
bool>(
"DTTFSectorNumbering")},
89 my_debug{
pset.getUntrackedParameter<
bool>(
"debug")},
90 my_lut_dump_flag{
pset.getUntrackedParameter<
bool>(
"lutDumpFlag")},
91 my_lut_btic{
static_cast<short int>(
pset.getUntrackedParameter<
int>(
"lutBtic"))} {}
95 cout <<
"DTTrigProd::beginRun " << iRun.
id().
run() << endl;
103 cout <<
"[DTTrigProd] TU's Created" << endl;
106 cout <<
"Dumping luts...." << endl;
112 vector<L1MuDTChambPhDigi> outPhi;
113 vector<L1MuDTChambThDigi> outTheta;
118 cout <<
"[DTTrigProd] CCB configuration is not valid for this run, empty collection will be produced " << endl;
125 cout <<
"[DTTrigProd] Trigger algorithm run for " <<
iEvent.id() << endl;
133 int step = (*it).step() - bx_offset;
134 int sc_sector = (*it).SCId().sector();
138 (*it).ChamberId().wheel(),
140 (*it).ChamberId().station(),
155 for (
int i = 0;
i < 7;
i++) {
156 pos[
i] = (*it).position(
i);
157 qual[
i] = (*it).quality(
i);
159 int step = (*it).step() - bx_offset;
160 int sc_sector = (*it).SCId().sector();
bool CCBConfigValidity() const
flag for CCB configuration validity
DTTrigProd(const edm::ParameterSet &pset)
Constructor.
#define DEFINE_FWK_MODULE(type)
edm::ESGetToken< DTConfigManager, DTConfigManagerRcd > dtConfigToken_
edm::EDPutTokenT< L1MuDTChambPhContainer > phToken_
int getBXOffset() const
Get BX Offset.
const bool my_lut_dump_flag
vector< DTSectCollThSegm > SectCollThetaColl
T const * product() const
std::vector< DTSectCollPhSegm > SCPhTrigs() const
Return a copy of all the Sector Collector (Phi) triggers.
SectCollThetaColl::const_iterator SectCollThetaColl_iterator
std::vector< DTSectCollThSegm > SCThTrigs() const
Return a copy of all the Sector Collector (Theta) triggers.
edm::EDPutTokenT< L1MuDTChambThContainer > thToken_
void triggerReco(const edm::Event &iEvent, const edm::EventSetup &iSetup)
Run the whole trigger reconstruction chain.
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
const short int my_lut_btic
SectCollPhiColl::const_iterator SectCollPhiColl_iterator
vector< DTSectCollPhSegm > SectCollPhiColl
void produce(edm::Event &iEvent, const edm::EventSetup &iEventSetup) override
Producer: process every event and generates trigger data.
void dumpLuts(short int lut_btic, const DTConfigManager *conf) const
Dump the LUT files.
void createTUs(const edm::EventSetup &iSetup)
Create the trigger units and store them in the cache.
void beginRun(edm::Run const &iRun, const edm::EventSetup &iEventSetup) override
Create Trigger Units before starting event processing.