84 if (
x2y2z.size() == 1) {
86 const std::map<size_t, size_t>&
y2z =
x2y2z.begin()->second;
91 size_t y =
x2y2z.begin()->second.begin()->first;
92 std::map<size_t, size_t>
x2z;
93 std::map<size_t, std::map<size_t, size_t> >::const_iterator
itx2y2z;
96 const std::map<size_t, size_t>&
y2z =
itx2y2z->second;
98 if (
y2z.size() != 1 ||
99 y !=
y2z.begin()->first) {
104 size_t z =
y2z.begin()->second;
121 const std::map<size_t, size_t>&
y2z =
itx2y2z->second;
126 std::map<size_t, size_t>::const_iterator
ity2z;
143 std::unique_ptr<IndexPattern>
fx;
145 std::map<size_t, IndexPattern*>
startSections = SectionedIndexPattern::detectLinearSections(
x2zStart, 2);
161 std::map<size_t, IndexPattern*>
sections = SectionedIndexPattern::detectLinearSections(
y2zOffset, 2);
167 std::unique_ptr<IndexPattern>
fy;
169 fy = std::unique_ptr<IndexPattern> (
sections.begin()->second);
175 if (
fx->getType() == IndexPatternType::Linear &&
fy->getType() == IndexPatternType::Linear) {
179 if (
ipx->getLinearSlopeDy() == 0 &&
ipy->getLinearSlopeDy() == 0) {
183 ipx->setLinearConstantTerm(
ipx->getLinearConstantTerm() +
ipy->getLinearConstantTerm());