#include <DetGroupMerger.h>
Definition at line 7 of file DetGroupMerger.h.
void DetGroupMerger::addSameLevel |
( |
std::vector< DetGroup > && |
gvec, |
|
|
std::vector< DetGroup > & |
result |
|
) |
| |
|
static |
void DetGroupMerger::doubleIndexSize |
( |
std::vector< DetGroup > & |
vec | ) |
|
|
static |
Definition at line 82 of file DetGroupMerger.cc.
References mps_fire::i.
83 int indSize = vec.front().indexSize();
84 for (vector<DetGroup>::iterator
i=vec.begin();
i!=vec.end();
i++) {
85 i->setIndexSize( 2*indSize);
void DetGroupMerger::incrementAndDoubleSize |
( |
std::vector< DetGroup > & |
vec | ) |
|
|
static |
Definition at line 90 of file DetGroupMerger.cc.
References mps_fire::i.
91 int indSize = vec.front().indexSize();
92 for (vector<DetGroup>::iterator
i=vec.begin();
i!=vec.end();
i++) {
93 i->incrementIndex( indSize);
void DetGroupMerger::mergeTwoLevels |
( |
std::vector< DetGroup > && |
one, |
|
|
std::vector< DetGroup > && |
two, |
|
|
std::vector< DetGroup > & |
result |
|
) |
| |
|
static |
Definition at line 34 of file DetGroupMerger.cc.
References eostools::move().
38 int indSize1 =
one.front().indexSize();
39 int indSize2 = two.front().indexSize();
41 for (
auto && dg :
one) {
43 result.back().setIndexSize(indSize1+indSize2);
45 for (
auto && dg : two) {
47 result.back().incrementIndex(indSize1);
void DetGroupMerger::orderAndMergeTwoLevels |
( |
std::vector< DetGroup > && |
one, |
|
|
std::vector< DetGroup > && |
two, |
|
|
std::vector< DetGroup > & |
result, |
|
|
int |
firstIndex, |
|
|
int |
firstCrossed |
|
) |
| |
|
static |
Definition at line 8 of file DetGroupMerger.cc.
References eostools::move().
Referenced by PixelForwardLayer::groupedCompatibleDetsV(), PixelForwardLayerPhase1::groupedCompatibleDetsV(), TECLayer::groupedCompatibleDetsV(), Phase2EndcapLayer::groupedCompatibleDetsV(), CompositeTECWedge::groupedCompatibleDetsV(), TIDRing::groupedCompatibleDetsV(), TBLayer::groupedCompatibleDetsV(), TIBRing::groupedCompatibleDetsV(), Phase2EndcapRing::groupedCompatibleDetsV(), PixelBlade::groupedCompatibleDetsV(), TOBRod::groupedCompatibleDetsV(), Phase1PixelBlade::groupedCompatibleDetsV(), Phase2OTBarrelRod::groupedCompatibleDetsV(), and CompositeTECPetal::groupedCompatibleDetsV().
13 if (
one.empty() && two.empty())
return;
21 else if (two.empty()) {
static void incrementAndDoubleSize(std::vector< DetGroup > &vec)
static void mergeTwoLevels(std::vector< DetGroup > &&one, std::vector< DetGroup > &&two, std::vector< DetGroup > &result)
static void doubleIndexSize(std::vector< DetGroup > &vec)