Init Tizen 2.2.1
[framework/osp/social.git] / inc / FSclCalEventInstance.h
1 // 
2 // Copyright (c) 2012 Samsung Electronics Co., Ltd. 
3 // 
4 // Licensed under the Apache License, Version 2.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //     http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16 /**
17  * @file        FSclCalEventInstance.h
18  * @brief       This is the header file for the %CalEventInstance class.
19  *
20  * This header file contains the declarations of the %CalEventInstance class.
21  */
22 #ifndef _FSCL_CAL_EVENT_INSTANCE_H_
23 #define _FSCL_CAL_EVENT_INSTANCE_H_
24
25 #include <FBaseObject.h>
26 #include <FSclTypes.h>
27
28 namespace Tizen { namespace Base
29 {
30 class String;
31 class DateTime;
32 }}
33
34 namespace Tizen { namespace Social
35 {
36
37 /**
38  * @class       CalEventInstance
39  * @brief       This class represents the instance of a calendar book event.
40  *
41  * @since       2.0
42  *
43  * @final       This class is not intended for extension.
44  *
45  * The %CalEventInstance class represents the instance of a calendar book event.
46  */
47 class _OSP_EXPORT_ CalEventInstance
48         : public Tizen::Base::Object
49 {
50
51 public:
52         /**
53          * This is the default constructor for this class.
54          *
55          * @since       2.0
56          */
57         CalEventInstance(void);
58
59         /**
60          * Copying of objects using this copy constructor is allowed.
61          *
62          * @since       2.0
63          *
64          * @param[in]   rhs             An instance of %CalEventInstance to copy
65          */
66         CalEventInstance(const CalEventInstance& rhs);
67
68         /**
69          * This destructor overrides Tizen::Base::Object::~Object().
70          *
71          * @since       2.0
72          */
73         virtual ~CalEventInstance(void);
74
75         /**
76          * Compares the specified Tizen::Base::Object with the current %CalEventInstance instance.
77          *
78          * @since       2.0
79          *
80          * @return              @c true if the specified object equals the current %CalEventInstance instance, @n
81          *                              else @c false
82          * @param[in]   rhs     The object instance to compare with the current object
83          * @see                 GetHashCode()
84          */
85         virtual bool Equals(const Tizen::Base::Object& rhs) const;
86
87         /**
88          * Gets the hash value of the current instance.
89          *
90          * @since       2.0
91          *
92          * @return              The hash value of the current instance
93          */
94         virtual int GetHashCode(void) const;
95
96         /**
97          * Gets the original event ID.
98          *
99          * @since       2.0
100          *
101          * @return              The original event ID
102          */
103         RecordId GetOriginalEventId(void) const;
104
105         /**
106          * Gets the calendar ID.
107          *
108          * @since       2.0
109          *
110          * @return              The calendar ID
111          */
112         RecordId GetCalendarId(void) const;
113
114         /**
115          * Gets the start time.
116          *
117          * @since       2.0
118          *
119          * @return              The start time
120          */
121         Tizen::Base::DateTime GetStartTime(void) const;
122
123         /**
124          * Gets the end time.
125          *
126          * @since       2.0
127          *
128          * @return              The end time
129          */
130         Tizen::Base::DateTime GetEndTime(void) const;
131
132         /**
133          * Gets the subject.
134          *
135          * @since       2.0
136          *
137          * @return              The subject
138          */
139         Tizen::Base::String GetSubject(void) const;
140
141         /**
142          * Gets the description.
143          *
144          * @since       2.0
145          *
146          * @return              The description
147          */
148         Tizen::Base::String GetDescription(void) const;
149
150         /**
151          * Gets the location.
152          *
153          * @since       2.0
154          *
155          * @return              The location
156          */
157         Tizen::Base::String GetLocation(void) const;
158
159         /**
160          * Checks whether the original event of this instance is an all day event.
161          *
162          * @since       2.0
163          *
164          * @return              @c true if the original event of this instance is an all day event, @n
165          *                              else @c false
166          */
167         bool IsAllDayEvent(void) const;
168
169         /**
170          * Gets the busy status.
171          *
172          * @since       2.0
173          *
174          * @return              The busy status
175          */
176         BusyStatus GetBusyStatus(void) const;
177
178         /**
179          * Gets the event status.
180          *
181          * @since       2.0
182          *
183          * @return              The event status
184          */
185         EventStatus GetStatus(void) const;
186
187         /**
188          * Gets the priority.
189          *
190          * @since       2.0
191          *
192          * @return              The priority
193          */
194         EventPriority GetPriority(void) const;
195
196         /**
197          * Gets the sensitivity.
198          *
199          * @since       2.0
200          *
201          * @return              The sensitivity
202          */
203         RecordSensitivity GetSensitivity(void) const;
204
205         /**
206          * Checks whether the event instance has a recurring pattern.
207          *
208          * @since       2.0
209          *
210          * @return              @c true if the event instance has a recurring pattern, @n
211          *                              else @c false
212          */
213         bool IsRecurring(void) const;
214
215         /**
216          * Checks whether the event instance has reminders.
217          *
218          * @since       2.0
219          *
220          * @return              @c true if the event instance has reminders, @n
221          *                              else @c false
222          */
223         bool HasReminder(void) const;
224
225         /**
226          * Copying of objects using this copy assignment operator is allowed.
227          *
228          * @since       2.0
229          *
230          * @param[in]   rhs             An instance of %CalEventInstance to copy
231          */
232         CalEventInstance& operator =(const CalEventInstance& rhs);
233
234 private:
235         friend class _CalEventInstanceImpl;
236         class _CalEventInstanceImpl* __pCalEventInstanceImpl;
237 }; // CalEventInstance
238
239 }} // Tizen::Social
240
241 #endif // _FSCL_CAL_EVENT_INSTANCE_H_
242