5c623a7fccdda4b96337fa707f9ae5d0c9f5d786
[profile/ivi/wrt-plugins-tizen.git] / src / platform / API / Call / CallHistoryEntryProperties.h
1 /*
2  * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
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
18 #ifndef TIZENAPIS_API_CALLHISTORY_ENTRY_PROPERTIES_H_
19 #define TIZENAPIS_API_CALLHISTORY_ENTRY_PROPERTIES_H_
20
21 #include <dpl/shared_ptr.h>
22 #include <string>
23 #include <vector>
24
25 namespace TizenApis {
26 namespace Api {
27 namespace Call {
28 class CallHistoryEntryProperties;
29 typedef DPL::SharedPtr<CallHistoryEntryProperties> CallHistoryEntryPropertiesPtr;
30 typedef std::vector<CallHistoryEntryPropertiesPtr> CallHistoryEntryList;
31 typedef DPL::SharedPtr<CallHistoryEntryList> CallHistoryEntryListPtr;
32 typedef std::vector<std::string> stringArray;
33 typedef DPL::SharedPtr<stringArray> stringArrayPtr;
34
35 class CallHistoryEntryProperties
36 {
37 private:
38         unsigned long m_entryId;
39         std::string m_accountId;
40         std::string m_callType;
41         std::string m_remoteParty;
42         std::string m_contactId;
43         std::string m_contactDetails;
44         std::string m_forwardedFrom;
45         time_t m_startTime;
46         unsigned long m_duration;
47         std::string m_endReason;
48         stringArrayPtr m_usedCapabilities;
49         std::string m_kind;
50         std::string m_direction;
51         stringArrayPtr m_recording;
52         unsigned long m_cost;
53         std::string m_currency;
54
55         bool m_filterMark;
56
57 public:
58         void setEntryId(const unsigned long EntryId);
59         void setAccountId(const std::string AccountId);
60         void setCallType(const std::string CallType);
61         void setRemoteParty(const std::string RemoteParty);
62         void setContactId(const std::string ContactId);
63         void setContactDetails(const std::string ContactDetails);
64         void setForwardedFrom(const std::string ForwardedFrom);
65         void setStartTime(const time_t StartTime);
66         void setDuration(const unsigned long Duration);
67         void setEndReason(const std::string EndReason);
68         void setUsedCapabilities(const stringArrayPtr &UsedCapabilities);
69         void setKind(const std::string Kind);
70         void setDirection(const std::string Direction);
71         void setRecording(const stringArrayPtr &Recording);
72         void setCost(const unsigned long Cost);
73         void setCurrency(const std::string Currency);
74         void setFilterMark(const bool mark);
75
76         unsigned long getEntryId() const;
77         std::string getAccountId() const;
78         std::string getCallType() const;
79         std::string getRemoteParty() const;
80         std::string getContactId() const;
81         std::string getContactDetails() const;
82         std::string getForwardedFrom() const;
83         time_t getStartTime() const;
84         unsigned long getDuration() const;
85         std::string getEndReason() const;
86         stringArrayPtr getUsedCapabilities() const;
87         std::string getKind() const;
88         std::string getDirection() const;
89         stringArrayPtr getRecording() const;
90         unsigned long getCost() const;
91         std::string getCurrency() const;
92         bool getFilterMark() const;
93         
94         CallHistoryEntryProperties();
95 };
96 }
97 }
98 }
99
100 #endif