Class podio::RelationRange

template<typename ReferenceType>
class RelationRange

A simple helper class that allows to return related objects in a way that makes it possible to use the return type in a range-based for loop.

Public Types

using ConstIteratorType = typename std::vector<ReferenceType>::const_iterator

Public Functions

RelationRange() = delete
inline RelationRange(ConstIteratorType begin, ConstIteratorType end)
inline ConstIteratorType begin() const

begin of the range (necessary for range-based for loop)

inline ConstIteratorType end() const

end of the range (necessary for range-based for loop)

inline size_t size() const

convenience overload for size

inline bool empty() const

convenience overload to check if the range is empty

inline ReferenceType operator[](size_t i) const

Indexed access.

inline ReferenceType at(size_t i) const

Indexed access with range check.