1 #ifndef FWCore_SOA_TableItr_h
2 #define FWCore_SOA_TableItr_h
24 #include <type_traits>
35 template <
int I,
typename... Args>
41 auto p =
static_cast<Type*
>(iArray[
I]);
42 iArray[
I] =
p + iStep;
46 template <
typename... Args>
51 auto p =
static_cast<Type*
>(iArray[0]);
52 iArray[0] =
p + iStep;
56 template <
int I,
typename... Args>
63 iArray[
I] =
p + iStep;
67 template <
typename... Args>
73 iArray[0] =
p + iStep;
78 template <
typename... Args>
110 template <
typename... Args>
115 template <
typename... Args>
147 template <
typename... Args>
bool operator==(const TableItr< Args...> &iOther)
bool operator!=(const TableItr< Args...> &iOther)
std::tuple< Args...> Layout
std::tuple< Args...> Layout
std::tuple< Args...> Layout
std::tuple< Args...> Layout
ConstTableItr & operator++()
static void advance(std::array< void const *, sizeof...(Args)> &iArray, long iStep)
TableItr(std::array< void *, sizeof...(Args)> const &iValues, long iOffset)
static void advance(std::array< void *, sizeof...(Args)> &iArray, long iStep)
TableItr< Args...> makeOffset(long iDiff) const
TableItr(std::array< void *, sizeof...(Args)> const &iValues)
value_type operator*() const
TableItr(std::array< void *, sizeof...(Args)> const &iValues, unsigned int iOffset)
ConstTableItr(std::array< void const *, sizeof...(Args)> const &iValues, long iOffset)
bool operator==(const ConstTableItr< Args...> &iOther)
TableItr< Args...> operator+(TableItr< Args...> const &iLHS, long iDiff)
const std::complex< double > I
std::array< void *, sizeof...(Args)> m_values
static void advance(std::array< void *, sizeof...(Args)> &iArray, long iStep)
std::array< void const *, sizeof...(Args)> m_values
std::tuple< Args...> Layout
std::tuple< Args...> Layout
bool operator!=(const ConstTableItr< Args...> &iOther)
ConstTableItr(std::array< void const *, sizeof...(Args)> const &iValues, unsigned int iOffset)
TableItr< Args...> makeOffset(long iDiff) const
ConstTableItr(std::array< void const *, sizeof...(Args)> const &iValues)
static void advance(std::array< void const *, sizeof...(Args)> &iArray, long iStep)