• Skip to content
  • Skip to link menu
KDE 4.4 API Reference
  • KDE API Reference
  • KDE-PIM Libraries
  • Sitemap
  • Contact Us
 

KCal Library

KCal::ComparisonVisitor

KCal::ComparisonVisitor Class Reference

Helper for type correct comparison of incidences via pointers. More...

#include <comparisonvisitor.h>

Inheritance diagram for KCal::ComparisonVisitor:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 ComparisonVisitor ()
virtual ~ComparisonVisitor ()
bool compare (IncidenceBase *incidence, const IncidenceBase *reference)
virtual bool visit (FreeBusy *freebusy)
virtual bool visit (Journal *journal)
virtual bool visit (Todo *todo)
virtual bool visit (Event *event)

Detailed Description

Helper for type correct comparison of incidences via pointers.

This class provides a way of correctly comparing one incidence to another, given two IncidenceBase derived pointers. It effectively provides a virtual comparison method which first type checks the two pointers to ensure they reference the same incidence type, before performing the comparison.

Usage example:

  KCal::Incidence *incidence;          // assume this is set somewhere else
  KCal::Incidence *referenceIncidence; // assume this is set somewhere else

  KCal::ComparisonVisitor visitor;

  // compare
  if ( visitor.compare( incidence, referenceIncidence ) ) {
    // incidence and referenceIncidence point to identical incidences
  }
Author:
Ingo Klöcker <kloecker@kde.org>
Since:
4.3

Definition at line 53 of file comparisonvisitor.h.


Constructor & Destructor Documentation

ComparisonVisitor::ComparisonVisitor (  ) 

Creates a visitor instance.

Definition at line 37 of file comparisonvisitor.cpp.

ComparisonVisitor::~ComparisonVisitor (  )  [virtual]

Destroys the instance.

Definition at line 41 of file comparisonvisitor.cpp.


Member Function Documentation

bool ComparisonVisitor::compare ( IncidenceBase *  incidence,
const IncidenceBase *  reference 
)

Compares the incidence referenced by incidence to the incidence referenced by reference.

Returns true, if the incidence referenced by incidence is identical to the incidence referenced by reference. Also returns true, if incidence and reference are both 0.

Basically it is a virtual equivalent of

      *incidence == *reference
Parameters:
incidence pointer to the incidence to compare with the reference incidence
reference pointer to the reference incidence
Returns:
true if the two incidences are identical or both 0

Definition at line 46 of file comparisonvisitor.cpp.

bool ComparisonVisitor::visit ( FreeBusy *  freebusy  )  [virtual]

Compares the freebusy object referenced by freebusy to the incidence passed to compare().

Returns:
true if the freebusy object is identical to the reference incidence

Reimplemented from KCal::IncidenceBase::Visitor.

Definition at line 96 of file comparisonvisitor.cpp.

bool ComparisonVisitor::visit ( Journal *  journal  )  [virtual]

Compares the journal referenced by journal to the incidence passed to compare().

Returns:
true if the journal is identical to the reference incidence

Reimplemented from KCal::IncidenceBase::Visitor.

Definition at line 83 of file comparisonvisitor.cpp.

bool ComparisonVisitor::visit ( Todo *  todo  )  [virtual]

Compares the todo referenced by todo to the incidence passed to compare().

Returns:
true if the todo is identical to the reference incidence

Reimplemented from KCal::IncidenceBase::Visitor.

Definition at line 70 of file comparisonvisitor.cpp.

bool ComparisonVisitor::visit ( Event *  event  )  [virtual]

Compares the event referenced by event to the incidence passed to compare().

Returns:
true if the event is identical to the reference incidence

Reimplemented from KCal::IncidenceBase::Visitor.

Definition at line 57 of file comparisonvisitor.cpp.


The documentation for this class was generated from the following files:
  • comparisonvisitor.h
  • comparisonvisitor.cpp

KCal Library

Skip menu "KCal Library"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

KDE-PIM Libraries

Skip menu "KDE-PIM Libraries"
  • akonadi
  •   contact
  •   kmime
  • kabc
  • kblog
  • kcal
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  •   richtextbuilders
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
Generated for KDE-PIM Libraries by doxygen 1.6.1
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal