Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Removed std:: as now using namespace std in CalendarObject.h
[xestiacalendar/.git] / source / objects / calendarobject / CalendarObject.h
1 #ifndef __OBJECTS_CALENDAROBJECT_CALENDAROBJECT_H__
2 #define __OBJECTS_CALENDAROBJECT_CALENDAROBJECT_H__
4 #include <string>
5 #include <iostream>
6 #include <fstream>
7 #include <sstream>
8 #include <vector>
9 #include <stdexcept>
10 #include <map>
12 #include "../../common/text.h"
14 using namespace std;
16 enum CalendarObjectLoadResult {
17     CALENDAROBJECTLOAD_UNITTESTFAIL = -1,
18     CALENDAROBJECTLOAD_OK,
19     CALENDAROBJECTLOAD_MISSING,
20     CALENDAROBJECTLOAD_INVALIDFORMAT,
21     CALENDAROBJECTLOAD_CANNOTOPEN
22 };
24 enum CalendarObjectValidResult{
25     CALENDAROBJECTVALID_UNITTESTFAIL = -1,
26     CALENDAROBJECTVALID_OK,
27     CALENDAROBJECTVALID_INVALIDFORMAT
28 };
30 class CalendarObject{
32         public:
33         CalendarObjectLoadResult LoadFile(string LoadFilename);
34         CalendarObjectLoadResult LoadString(string *LoadStringData);
35         CalendarObjectValidResult ValidBaseObject();
36         void ProcessBaseData();
37         
38         // Setup virtual subroutines for use by objects
39         // inheriting from CalendarObject later on.
40         
41         virtual CalendarObjectValidResult ValidObject() { return CALENDAROBJECTVALID_OK; };
42         virtual void Clear() {};
43         
44         // Object data.
45         
46         string MethodData;
47         string MethodTokens;
48         
49         string CalendarScaleData;
50         string CalendarScaleTokens;
51         
52         string UniqueID;
53         string UniqueIDTokens;
54         
55         vector<string> AttachList;
56         vector<string> AttachListTokens;
57         vector<string> AttachListEncoding;
58         vector<string> AttachListFormatType;
59         vector<string> AttachListValue;
60         
61         vector<string> CategoriesList;
62         vector<string> CategoriesListLanguage;
63         vector<string> CategoriesListTokens;
64         
65         string ClassData;
66         string ClassDataTokens;
67         
68         string CompletedData;
69         string CompletedDataTokens;
70         
71         vector<string> CommentList;
72         vector<string> CommentListAltRep;
73         vector<string> CommentListLanguage;
74         vector<string> CommentListTokens;
75         
76         vector<string> DescriptionList;
77         vector<string> DescriptionListAltRep;
78         vector<string> DescriptionListLanguage;
79         vector<string> DescriptionListTokens;
80         
81         string GeographicData;
82         string GeographicTokens;
83         
84         string LocationData;
85         string LocationDataAltRep;
86         string LocationDataLanguage;
87         string LocationDataTokens;
88         
89         string PercentCompleteData;
90         string PercentCompleteTokens;
91         
92         int PriorityData = -1;
93         string PriorityTokens;
94         
95         vector<string> ResourcesData;
96         vector<string> ResourcesDataAltRep;
97         vector<string> ResourcesDataLanguage;
98         vector<string> ResourcesDataTokens;
100         string StatusData;
101         string StatusLanguage;
102         string StatusTokens;
103         
104         string SummaryData;
105         string SummaryDataAltRep;
106         string SummaryDataLanguage;
107         string SummaryDataTokens;
108         
109         string DateTimeEndData;
110         string DateTimeEndDataValue;
111         string DateTimeEndDataTimeZoneID;
112         string DateTimeEndDataTokens;
114         string DueData;
115         string DueDataValue;
116         string DueDataTimeZoneID;
117         string DueDataTokens;
119         string DateTimeStartData;
120         string DateTimeStartDataValue;
121         string DateTimeStartDataTimeZoneID;
122         string DateTimeStartDataTokens;
124         string DurationData;
125         string DurationDataTokens;
127         vector<string> FreeBusyList;
128         vector<string> FreeBusyListType;
129         vector<string> FreeBusyListTokens;
131         string TimeTransparencyData;
132         string TimeTransparencyDataTokens;
133         
134         string TimeZoneData;
135         string TimeZoneDataTokens;
136         
137         vector<string> TimeZoneNameList;
138         vector<string> TimeZoneNameListLanguage;
139         vector<string> TimeZoneNameListTokens;
140         
141         string TimeZoneOffsetFromData;
142         string TimeZoneOffsetFromDataTokens;
144         string TimeZoneOffsetToData;
145         string TimeZoneOffsetToDataTokens;
147         string TimeZoneURLData;
148         string TimeZoneURLTokens;
150         vector<string> AttendeeList;
151         vector<string> AttendeeListMember;
152         vector<string> AttendeeListDelegatedFrom;
153         vector<string> AttendeeListDelegatedTo;
154         vector<string> AttendeeListRole;
155         vector<string> AttendeeListRSVP;
156         vector<string> AttendeeListDirectoryEntry;
157         vector<string> AttendeeListSentBy;
158         vector<string> AttendeeListCommonName;
159         vector<string> AttendeeListCalendarUserType;
160         vector<string> AttendeeListParticipationStatus;
161         vector<string> AttendeeListLanguage;
162         vector<string> AttendeeListTokens;
164         vector<string> ContactList;
165         vector<string> ContactListAltRep;
166         vector<string> ContactListLanguage;
167         vector<string> ContactListTokens;
168         
169         string OrganiserData;
170         string OrganiserDataCommonName;
171         string OrganiserDataDirectoryEntry;
172         string OrganiserDataSentByParam;
173         string OrganiserDataLanguage;
174         string OrganiserDataTokens;
175         
176         string RecurranceIDData;
177         string RecurranceIDDataTimeZoneParam;
178         string RecurranceIDDataRangeParam;
179         string RecurranceIDDataValue;
180         string RecurranceIDDataTokens;
181         
182         vector<string> RelatedToData;
183         vector<string> RelatedToDataRelationType;
184         vector<string> RelatedToDataTokens;
185         
186         string URLData;
187         string URLDataTokens;
189         vector<string> ExcludeDateData;
190         vector<string> ExcludeDateDataValue;
191         vector<string> ExcludeDateDataTimeZoneParam;
192         vector<string> ExcludeDateDataTokens;
193         
194         vector<string> RecurranceDateData;
195         vector<string> RecurranceDateDataValue;
196         vector<string> RecurranceDateDataTimeZoneParam;
197         vector<string> RecurranceDateDataTokens;
198         
199         string RecurranceRuleData;
200         string RecurranceRuleDataTokens;
201         
202         string TriggerDataList;
203         string TriggerDataValue;
204         string TriggerDataRelatedParam;
205         string TriggerDataTokens;
206         
207         string DateTimeCreatedData;
208         string DateTimeCreatedTokens;
210         string DateTimeStampData;
211         string DateTimeStampTokens;
213         string LastModifiedData;
214         string LastModifiedTokens;
216         int SequenceData = -1;
217         string SequenceTokens;
219         vector<string> XTokensData;
220         vector<string> XTokensDataTokens;
222         vector<string> RequestStatusData;
223         vector<string> RequestStatusLanguage;
224         vector<string> RequestStatusTokens;
225         
226         protected:
227         // Initial Loading Data.
228         vector<string> ObjectName;
229         vector<string> ObjectData;
231         private:
232         virtual void ProcessData() {};
233   
234 };
236 #endif
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy