00001
00016 #ifndef __CALATTENDEE__H_
00017 #define __CALATTENDEE__H_
00018
00021 #include "CParticipant.h"
00022 #include <string>
00023 using namespace::std;
00024 using std::string;
00025
00028 typedef enum ParticipantRole {
00029 CHAIR = 0,
00030 REQ_PARTICIPANT,
00031 OPT_PARTICIPANT,
00032 NON_PARTICIPANT,
00033 ATTENDEE_ROLE,
00034 ORGANIZER_ROLE,
00035 DELEGATE_ROLE,
00036 OWNER_ROLE,
00037 OTHER_ROLE,
00038 ROLE_NONE
00039 };
00042 typedef enum {
00043 NEEDS_ACTION,
00044 ACCEPTED,
00045 DECLINED,
00046 TENTATIVE,
00047 DELEGATED,
00048 COMPLETED,
00049 IN_PROCESS,
00050 OTHER_STATUS,
00051 STATUS_NONE
00052 } ParticipantStatus;
00055 typedef enum {
00056
00057 INDIVIDUAL,
00058 GROUP,
00059 RESOURCE,
00060 ROOM,
00061 UNKNOWN_USER,
00062 USER_NONE
00063 } CalendarUserType;
00064
00070 class CAttendee:public CParticipant {
00071
00072 public:
00073
00077 CAttendee(CAttendee & ref);
00078
00085 CAttendee();
00086
00093 ~CAttendee();
00094
00095
00096
00097
00098 const CAttendee & operator=(const CAttendee & right);
00099
00114 bool setCalendarUserType(CalendarUserType iCalendarUserType);
00115
00123 CalendarUserType getCalendarUserType();
00124
00133 bool setMember(string szMember);
00134
00143 string getMember();
00144
00153 bool setRole(ParticipantRole iParticipantRole);
00154
00162 ParticipantRole getRole();
00163
00172 bool setParticipationStatus(ParticipantStatus iParticipantStatus);
00173
00182 ParticipantStatus getParticipationStatus();
00183
00192 bool setRSVP(bool bRsvp);
00193
00201 bool getRSVP();
00202
00212 bool setDelegatees(string szDelegatees);
00213
00222 string getDelegatees();
00223
00232 bool setDelegator(string szDelegator);
00233
00242 string getDelegator();
00246 string toString();
00247
00248
00249
00250 private:
00251
00252
00253
00254 string szMember;
00256 ParticipantRole iParticipantRole;
00258 ParticipantStatus iParticipantStatus;
00260 bool bRsvp;
00262 string szDelegatees;
00264 string szDelegators;
00266 CalendarUserType iCalendarUserType;
00269 };
00270
00271 #endif