KCalCore Library
visitor.h
00001 /* 00002 This file is part of the kcalcore library. 00003 00004 Copyright (c) 2001-2003 Cornelius Schumacher <schumacher@kde.org> 00005 Copyright (c) 2003-2004 Reinhold Kainhofer <reinhold@kainhofer.com> 00006 Copyright (c) 2005 Rafal Rzepecki <divide@users.sourceforge.net> 00007 Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. 00008 Contact: Alvaro Manera <alvaro.manera@nokia.com> 00009 00010 This library is free software; you can redistribute it and/or 00011 modify it under the terms of the GNU Library General Public 00012 License as published by the Free Software Foundation; either 00013 version 2 of the License, or (at your option) any later version. 00014 00015 This library is distributed in the hope that it will be useful, 00016 but WITHOUT ANY WARRANTY; without even the implied warranty of 00017 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00018 Library General Public License for more details. 00019 00020 You should have received a copy of the GNU Library General Public License 00021 along with this library; see the file COPYING.LIB. If not, write to 00022 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00023 Boston, MA 02110-1301, USA. 00024 */ 00025 00026 #ifndef KCALCORE_VISITOR_P_H 00027 #define KCALCORE_VISITOR_P_H 00028 00029 #include "event.h" 00030 #include "journal.h" 00031 #include "todo.h" 00032 #include "freebusy.h" 00033 00034 namespace KCalCore { 00035 00043 class KCALCORE_EXPORT Visitor //krazy:exclude=dpointer 00044 { 00045 public: 00047 virtual ~Visitor(); 00048 00054 virtual bool visit( Event::Ptr event ); 00055 00061 virtual bool visit( Todo::Ptr todo ); 00062 00068 virtual bool visit( Journal::Ptr journal ); 00069 00075 virtual bool visit( FreeBusy::Ptr freebusy ); 00076 00077 protected: 00082 Visitor(); 00083 }; 00084 00085 } // end namespace 00086 00087 #endif