round_robin

Include dependency graph for round_robin.h:

digraph {
    graph [bgcolor="#00000000"]
    node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
    edge [color="#1414CE"]
    "2" [label="iterator" tooltip="iterator"]
    "1" [label="src/round_robin.h" tooltip="src/round_robin.h" fillcolor="#BFBFBF"]
    "1" -> "2" [dir=forward tooltip="include"]
}

This graph shows which files directly or indirectly include round_robin.h:

digraph {
    graph [bgcolor="#00000000"]
    node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
    edge [color="#1414CE"]
    "3" [label="src/platform/linux/wayland.cpp" tooltip="src/platform/linux/wayland.cpp"]
    "2" [label="src/platform/linux/kmsgrab.cpp" tooltip="src/platform/linux/kmsgrab.cpp"]
    "1" [label="src/round_robin.h" tooltip="src/round_robin.h" fillcolor="#BFBFBF"]
    "1" -> "2" [dir=back tooltip="include"]
    "1" -> "3" [dir=back tooltip="include"]
}

todo

namespace round_robin_util

Functions

template<class V, class It>
round_robin_t<V, It> make_round_robin(It begin, It end)
template<class V, class T>
class it_wrap_t

Public Types

using const_pointer = V const*
using const_reference = V const&
typedef std::ptrdiff_t diff_t
using difference_type = V
typedef T iterator
using iterator_category = std::random_access_iterator_tag
using pointer = V*
using reference = V&
using value_type = V

Public Functions

inline bool operator!=(const iterator &other) const
inline reference operator*()
inline const_reference operator*() const
inline iterator operator+(diff_t step)
inline iterator operator++()
inline iterator operator++(int)
inline iterator operator+=(diff_t step)
inline iterator operator-(diff_t step)
inline diff_t operator-(iterator first)
inline iterator operator--()
inline iterator operator--(int)
inline iterator operator-=(diff_t step)
inline pointer operator->()
inline const_pointer operator->() const
inline bool operator<(const iterator &other) const
inline bool operator<=(const iterator &other) const
inline bool operator==(const iterator &other) const
inline bool operator>(const iterator &other) const
inline bool operator>=(const iterator &other) const

Private Functions

inline iterator &_this()
inline const iterator &_this() const
template<class V, class It>
class round_robin_t : public round_robin_util::it_wrap_t<V, round_robin_t<V, It>>

Inheritence diagram for round_robin_util::round_robin_t:

digraph {
    graph [bgcolor="#00000000"]
    node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
    edge [color="#1414CE"]
    "1" [label="round_robin_util::round_robin_t< V, It >" tooltip="round_robin_util::round_robin_t< V, It >" fillcolor="#BFBFBF"]
    "2" [label="round_robin_util::it_wrap_t< V, round_robin_t< V, It > >" tooltip="round_robin_util::it_wrap_t< V, round_robin_t< V, It > >"]
    "1" -> "2" [dir=forward tooltip="public-inheritance"]
}

Collaboration diagram for round_robin_util::round_robin_t:

digraph {
    graph [bgcolor="#00000000"]
    node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
    edge [color="#1414CE"]
    "1" [label="round_robin_util::round_robin_t< V, It >" tooltip="round_robin_util::round_robin_t< V, It >" fillcolor="#BFBFBF"]
    "2" [label="round_robin_util::it_wrap_t< V, round_robin_t< V, It > >" tooltip="round_robin_util::it_wrap_t< V, round_robin_t< V, It > >"]
    "1" -> "2" [dir=forward tooltip="public-inheritance"]
}

Public Types

using iterator = It
using pointer = V*

Public Functions

inline void dec()
inline bool eq(const round_robin_t &other) const
inline pointer get() const
inline void inc()
inline round_robin_t(iterator begin, iterator end)

Private Members

It _begin
It _end
It _pos