2 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 * @author Shi Hezhang (hezhang.shi@samsung.com)
19 * @author Pan Rui (r.pan@samsung.com)
23 #ifndef WRTDEVICEAPIS_TASK_TASK_FILTER_H_
24 #define WRTDEVICEAPIS_TASK_TASK_FILTER_H_
26 #include <dpl/shared_ptr.h>
27 #include <Task/CalendarTask.h>
29 namespace WrtDeviceApis {
33 const int TASK_FILTER_UNDEFINED_ID = -1;
34 const int TASK_FILTER_UNDEFINED_TASK_ID = -1;
35 const int TASK_FILTER_UNDEFINED_TIME_T_MEMBERS = -1;
37 typedef std::vector<CalendarTask::TaskStatus> StatusList;
38 typedef DPL::SharedPtr<StatusList> StatusListPtr;
40 typedef std::vector<CalendarTask::TaskPriority> PriorityList;
41 typedef DPL::SharedPtr<PriorityList> PriorityListPtr;
48 virtual ~TaskFilter();
50 int getIdFilter() const;
51 void setIdFilter(int value);
53 int getTaskIdFilter() const;
54 void setTaskIdFilter(int value);
56 std::string getDescriptionFilter() const;
57 void setDescriptionFilter(const std::string &value);
59 std::string getSubjectFilter() const;
60 void setSubjectFilter(const std::string &value);
62 time_t getDueDateMinFilter() const;
63 time_t getDueDateMaxFilter() const;
64 void setDueDateMinFilter(time_t value);
65 void setDueDateMaxFilter(time_t value);
66 void setDueDateFilter(time_t value);
68 //CalendarTask::TaskPriority getPriorityFilter() const;
69 // void setPriorityFilter(CalendarTask::TaskPriority value );
71 // CalendarTask::TaskStatus getStatusFilter() const;
72 // void setStatusFilter(CalendarTask::TaskStatus value );
74 PriorityListPtr getPriorityFilter() const;
75 void setPriorityFilter(const PriorityListPtr &value);
77 StatusListPtr getStatusFilter() const;
78 void setStatusFilter(const StatusListPtr &value);
80 bool getIdIsSet() const;
81 bool getTaskIdIsSet() const;
82 bool getDescriptionIsSet() const;
83 bool getSubjectIsSet() const;
84 bool getDueDateIsSet() const;
85 bool getPriorityIsSet() const;
86 bool getStatusIsSet() const;
91 std::string m_description;
92 std::string m_subject;
95 StatusListPtr m_status;
96 PriorityListPtr m_priority;
97 //CalendarTask::TaskStatus m_status;
98 //CalendarTask::TaskPriority m_priority;
100 bool m_descriptionIsSet;
102 bool m_locationIsSet;
105 typedef DPL::SharedPtr<TaskFilter> TaskFilterPtr;
111 #endif // WRTDEVICEAPIS_TASK_EVENT_FILTER_H_