12 const Container& wiresInConsecutiveGroups,
13 int numberOfGroups ) :
14 theNumberOfGroups(numberOfGroups) {
18 int countConsecutive = 0;
20 for (
int igs : consecutiveGroups) {
25 for (
int ic = 0; ic != igs; ++ic ) {
27 int wiresInGroup= wiresInConsecutiveGroups[countConsecutive];
29 firstWire += wiresInGroup;
34 firstWire += wiresInConsecutiveGroups[countConsecutive];
41 if ( countGroups != numberOfGroups ) {
42 edm::LogError(
"CSC") <<
"CSCGangedWireGrouping: ERROR in parsing wire info from DDD..." <<
"\n";
43 edm::LogError(
"CSC") <<
"groups expected = " << numberOfGroups <<
44 " groups seen = " << countGroups <<
"\n";
45 edm::LogError(
"CSC") <<
"Please report this error to Tim.Cox@cern.ch" <<
"\n";
48 LogTrace(
"CSCWireGeometry|CSC") <<
"CSCGangedWireGrouping constructor complete," <<
49 " wire group list follows... ";
52 LogTrace(
"CSCWireGeometry|CSC") <<
" wg# 1st wire #wires";
91 if ( wire < (firstWire + wiresInGroup) ) wireG = ++
id;
102 float middleWire = 0.;
Container theNumberOfWiresPerWireGroup
CSCGangedWireGrouping(const Container &consecutiveGroups, const Container &wiresInConsecutiveGroups, int numberOfGroups)
Container theFirstWireOfEachWireGroup
std::vector< int > Container
int numberOfWiresPerGroup(int wireGroup) const override
Container::const_iterator CIterator
int wireGroup(int wire) const override
float middleWireOfGroup(int wireGroup) const override