Modify doxygen link page.
[platform/framework/native/telephony.git] / src / FTel_CallInfoImpl.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17 /**
18  * @file    FTel_CallInfoImpl.h
19  * @brief   This is the header file for the %_CallInfoImpl class.
20  *
21  * This header file contains the declarations of the %_CallInfoImpl class.
22  */
23 #ifndef _FTEL_INTERNAL_CALL_INFO_IMPL_H_
24 #define _FTEL_INTERNAL_CALL_INFO_IMPL_H_
25
26
27 #include <FBaseObject.h>
28 #include <FBaseString.h>
29 #include <FTelTypes.h>
30
31
32 namespace Tizen { namespace Telephony
33 {
34 class CallInfo;
35
36 /**
37  * @class _CallInfoImpl
38  * @brief This class provides methods to obtain detailed information about a call.
39  * @since 2.1
40  *
41  * The %_CallInfoImpl class provides methods to obtain detailed call information, such as the call type and number.
42  */
43 class _CallInfoImpl
44         : public Tizen::Base::Object
45 {
46 public:
47         /**
48      * This is the default constructor for this class.
49      *
50      *  @since 2.1
51      */
52         _CallInfoImpl(void);
53
54         /**
55      * This is the copy constructor for the %_CallInfoImpl class.
56      *
57      * @since 2.1
58      *
59      * @param[in] rhs The call information
60      */
61         _CallInfoImpl(const _CallInfoImpl& rhs);
62
63         /**
64      * Initializes this instance of %_CallInfoImpl with the specified call type and the phone number.
65      *
66      * @param[in] type   The call type
67      * @param[in] number The phone number @n
68      */
69         _CallInfoImpl(CallType type, const Tizen::Base::String& number);
70
71         /**
72      * This is the destructor for this class.
73      *
74      * @since 2.1
75      */
76         virtual ~_CallInfoImpl(void);
77
78         /**
79      * @see CallInfo::GetCallType()
80      */
81         CallType GetCallType(void) const;
82
83         /**
84      * @see CallInfo::GetNumber()
85      */
86         Tizen::Base::String GetNumber(void) const;
87
88         /**
89      * Sets the call type.
90      *
91      * @param[in]   callType
92      */
93         void SetCallType(CallType callType);
94
95         /**
96      * Sets the phone number.
97      *
98      * @param[in]   number
99      */
100         void SetNumber(const Tizen::Base::String& number);
101
102         /**
103      * Checks whether the the specified instance of %_CallInfoImpl equals the current instance.
104      *
105      * @return   @c true if the specified instance equals the current instance, @n
106      *           else @c false
107      * @param[in]   obj An instance of %_CallInfoImpl
108      * @remarks  The method returns @c false if the specified object is not %_CallInfoImpl.
109      */
110         virtual bool Equals(const Tizen::Base::Object& obj) const;
111
112         /**
113      * Gets the hash value of the current instance.
114      *
115      * @return   The hash value of the current instance
116      */
117         virtual int GetHashCode(void) const;
118
119         /**
120      * Gets the Impl instance.
121      *
122      * @since 2.1
123      * @return  The pointer to _CallInfoImpl
124      * @param[in]   callInfo   An instance of CallInfo
125      */
126         static _CallInfoImpl* GetInstance(CallInfo& callInfo);
127
128         /**
129      * Gets the Impl instance.static int OnCallStatusChanged(const TelTapiEvent_t* pTapiEvent, void* pUserData);
130      *
131      *
132      * @since 2.1
133      * @return  The pointer to _CallInfoImpl
134      * @param[in]   callInfo   An instance of CallInfo
135      */
136         static const _CallInfoImpl* GetInstance(const CallInfo& callInfo);
137
138         /**
139      * This is the assignment operator.
140      *
141      * @param[in] rhs An instance of %_CallInfoImpl
142      */
143         _CallInfoImpl& operator =(const _CallInfoImpl& rhs);
144
145 private:
146         CallType __callType;
147         Tizen::Base::String __number;
148
149 }; // _CallInfoImpl
150
151 }} // Tizen::Telephony
152 #endif // _FTEL_INTERNAL_CALL_INFO_IMPL_H_