Definition at line 13 of file DTC.h.
Definition at line 13 of file DTC.cc.
25 auto acc = [](
int& sum,
const vector<TTStubRef>& stubsModule) {
return sum += stubsModule.size(); };
26 const int nStubs = accumulate(stubsDTC.begin(), stubsDTC.end(), 0, acc);
29 for (
int modId = 0; modId <
setup.numModulesPerDTC(); modId++) {
30 const vector<TTStubRef>& ttStubRefs = stubsDTC[modId];
31 if (ttStubRefs.empty())
36 const int blockId = modId /
setup.dtcNumModulesPerRoutingBlock();
38 const int channelId = modId %
setup.dtcNumModulesPerRoutingBlock();
41 for (
const TTStubRef& ttStubRef : ttStubRefs) {
43 Stub& stub =
stubs_.back();
46 stubs.push_back(&stub);
49 sort(stubs.begin(), stubs.end(), [](Stub* lhs, Stub* rhs) {
return abs(lhs->bend()) <
abs(rhs->bend()); });
60 stubs.erase(
limit, stubs.end());
References funct::abs(), trackerDTC::Stub::bend(), enableTruncation_, input_, remoteMonitoring_LED_IterMethod_cfg::limit, lost_, modules_, GetRecoTauVFromDQM_MC_cff::next, HLT_2018_cff::region, singleTopDQM_cfi::setup, stubs_, and trackerDTC::Stub::valid().
Definition at line 85 of file DTC.cc.
89 while (!all_of(
inputs.begin(),
inputs.end(), [](
const Stubs& channel) {
return channel.empty(); })
or
90 !all_of(stacks.begin(), stacks.end(), [](
const Stubs& channel) {
return channel.empty(); })) {
92 for (
int iInput = 0; iInput < (
int)
inputs.size(); iInput++) {
102 stack.push_back(stub);
106 bool nothingToRoute(
true);
107 for (
int iInput =
inputs.size() - 1; iInput >= 0; iInput--) {
111 nothingToRoute =
false;
118 output.push_back(
nullptr);
123 copy_if(
limit,
output.end(), back_inserter(lost), [](Stub* stub) {
return stub; });
References trackerDTC::Setup::dtcDepthMemory(), enableTruncation_, input, PixelMapPlotter::inputs, createfilelist::int, remoteMonitoring_LED_IterMethod_cfg::limit, GetRecoTauVFromDQM_MC_cff::next, trackerDTC::Setup::numFramesIO(), or, convertSQLitetoXML_cfg::output, pop_front(), setup_, and svgfig::stack.
Referenced by produce(), and split().