Go to the documentation of this file.
12 std::pair<EtherCATFrame*, EtherCATFrameMetaData*>
15 return {&list->
list[nextIndex].first, &list->
list[nextIndex].second};
21 return nextIndex == 0;
29 nextIndex = (nextIndex + 1) % list->
list.size();
38 return remaining == 0;
list(APPEND SOURCES ${QT_RESOURCES}) set(COMPONENT_LIBS ArmarXGui ArmarXCoreObservers ArmarXCoreEigen3Variants PlotterController $
std::vector< std::pair< EtherCATFrame, EtherCATFrameMetaData > > list
std::pair< EtherCATFrame *, EtherCATFrameMetaData * > operator*() const
Get the EtherCAT frame this iterator is on with metadata.
The EtherCATFrameIterator class iterates over a set range of EtherCAT frames once.
EtherCATFrameIterator(EtherCATFrameList *list, size_t startIndex, size_t count)
Construct a new EtherCATFrameIterator that iterates over the given range of EtherCAT frames.
The EtherCATFrameList struct holds a list of EtherCAT frames that can be scheduled in round-robin-sty...
EtherCATFrameIterator & operator++()
Move this iterator to the next EtherCAT frame.
bool atEnd() const
Check if this iterator has stepped over its range.
bool hasCompletedLoop() const
Check if this iterator points to the first available register frame.
size_t getCurrentIndex() const