KCalendarCore::OccurrenceIterator

KCalendarCore::OccurrenceIterator Class Reference

#include <occurrenceiterator.h>

Public Member Functions

 OccurrenceIterator (const Calendar &calendar, const QDateTime &start=QDateTime(), const QDateTime &end=QDateTime())
 
 OccurrenceIterator (const Calendar &calendar, const KCalendarCore::Incidence::Ptr &incidence, const QDateTime &start=QDateTime(), const QDateTime &end=QDateTime())
 
bool hasNext () const
 
Incidence::Ptr incidence () const
 
void next ()
 
QDateTime occurrenceStartDate () const
 
QDateTime recurrenceId () const
 

Detailed Description

Iterate over calendar items in a calendar.

The iterator takes recurrences and exceptions to recurrences into account

The iterator does not iterate the occurrences of all incidences chronologically.

Since
4.11

Definition at line 34 of file occurrenceiterator.h.

Constructor & Destructor Documentation

OccurrenceIterator::OccurrenceIterator ( const Calendar calendar,
const QDateTime start = QDateTime(),
const QDateTime end = QDateTime() 
)
explicit

Creates iterator that iterates over all occurrences of all incidences between.

Private class that helps to provide binary compatibility between releases.

Parameters
startand
end(inclusive)

Right now there is little point in the iterator, but: With an iterator it should be possible to solve this more memory efficiently and with immediate results at the beginning of the selected timeframe. Either all events are iterated simoulatneously, resulting in occurrences of all events in parallel in the correct time-order, or incidence after incidence, which would be even more efficient.

By making this class a friend of calendar, we could also use the internally available data structures.

Definition at line 164 of file occurrenceiterator.cpp.

OccurrenceIterator::OccurrenceIterator ( const Calendar calendar,
const KCalendarCore::Incidence::Ptr incidence,
const QDateTime start = QDateTime(),
const QDateTime end = QDateTime() 
)

Creates iterator that iterates over all occurrences of.

Parameters
incidencebetween
startand
end(inclusive)

Definition at line 202 of file occurrenceiterator.cpp.

Member Function Documentation

Incidence::Ptr OccurrenceIterator::incidence ( ) const

Returns either main incidence or exception, depending on occurrence.

Definition at line 228 of file occurrenceiterator.cpp.

void OccurrenceIterator::next ( )

Advance iterator to the next occurrence.

Definition at line 223 of file occurrenceiterator.cpp.

QDateTime OccurrenceIterator::occurrenceStartDate ( ) const

Returns the start date of the occurrence.

This is either the occurrence date, or the start date of an exception which overrides that occurrence.

Definition at line 233 of file occurrenceiterator.cpp.

QDateTime OccurrenceIterator::recurrenceId ( ) const

Returns the recurrence Id.

This is the date where the occurrence starts without exceptions, this id is used to identify one exact occurrence.

Definition at line 238 of file occurrenceiterator.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Nov 30 2020 22:51:32 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.