ATLAS Offline Software
CombinationsIterator.cxx
Go to the documentation of this file.
1 #include "CombinationsIterator.h"
2 
3 std::ostream& operator << (std::ostream& os, const CombinationsIterator& iter) {
4  os << std::boolalpha
5  << " generator: " << iter.m_gen
6  << " end: " << iter.m_end
7  << " input vals: ";
8  for(const auto& hj : iter.m_input_vals) {
9  os << static_cast<const void*>(hj.get()) << '\n';
10  }
11 
12  os << '\n' <<" vals: ";
13 
14  for(const auto& hj : iter.m_vals) {
15  os << static_cast<const void*>(hj.get()) << '\n';
16  }
17 
18  return os;
19 }
20 
22  const HypoJetVector& iv,
23  bool end):
24  m_gen{CombinationsGenerator(iv.size(), k)},
25  m_k{k},
26  m_input_vals{iv},
27  m_end{end}
28 {
29  auto indices = m_gen.get();
30  std::transform(indices.cbegin(),
31  indices.cend(),
32  std::back_inserter(m_vals),
33  [iv = this->m_input_vals](const auto& ind) {
34  return iv.at(ind);
35  });
36 }
37 
38 
40  return CombinationsIterator(m_k, m_input_vals, true);
41 }
CombinationsIterator::m_k
std::size_t m_k
Definition: CombinationsIterator.h:96
CombinationsIterator::m_end
bool m_end
Definition: CombinationsIterator.h:101
Trk::indices
std::pair< long int, long int > indices
Definition: AlSymMatBase.h:24
CombinationsGenerator
Definition: CombinationsGenerator.h:24
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
CombinationsIterator::endIter
CombinationsIterator endIter() const
Definition: CombinationsIterator.cxx:39
CombinationsIterator::m_vals
HypoJetVector m_vals
Definition: CombinationsIterator.h:99
Amg::transform
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
Definition: GeoPrimitivesHelpers.h:156
HypoJetVector
std::vector< pHypoJet > HypoJetVector
Definition: HypoJetDefs.h:27
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
CombinationsIterator::CombinationsIterator
CombinationsIterator()
Definition: CombinationsIterator.h:41
CombinationsIterator::m_gen
CombinationsGenerator m_gen
Definition: CombinationsIterator.h:95
operator<<
std::ostream & operator<<(std::ostream &os, const CombinationsIterator &iter)
Definition: CombinationsIterator.cxx:3
CombinationsIterator
Definition: CombinationsIterator.h:26
CombinationsIterator.h
CombinationsIterator::m_input_vals
HypoJetVector m_input_vals
Definition: CombinationsIterator.h:98
checkFileSG.ind
list ind
Definition: checkFileSG.py:118
fitman.k
k
Definition: fitman.py:528