529ccb4f014ca6b1615f299e3c25c2294dd95cf3
[platform/framework/native/telephony.git] / src / FTel_SimInfoImpl.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_SimInfoImpl.h
19  * @brief       This is the header file for the %_SimInfoImpl class.
20  *
21  * This header file contains the declarations of the %_SimInfoImpl class.
22  */
23 #ifndef _FTEL_INTERNAL_SIM_INFO_IMPL_H_
24 #define _FTEL_INTERNAL_SIM_INFO_IMPL_H_
25
26
27 #include <FBaseObject.h>
28
29
30 namespace Tizen { namespace Base
31 {
32 class String;
33 } } // Tizen::Base
34
35 namespace Tizen { namespace Telephony
36 {
37 class SimInfo;
38 class _TelephonyIpcProxy;
39
40 class _SimInfoImpl
41         : public Tizen::Base::Object
42 {
43 public:
44         /**
45      * This is the default constructor for this class.
46      *
47      * @since 2.1
48      */
49         _SimInfoImpl(void);
50
51         /**
52      * This is the destructor for this class.
53      *
54      * @since 2.1
55      */
56         virtual ~_SimInfoImpl(void);
57
58         /**
59      * @see SimInfo::Construct()
60      */
61         result Construct(void);
62
63         /**
64      * @see SimInfo::GetMnc()
65      */
66         int GetMnc(void) const;
67
68         /**
69      * @see SimInfo::GetMcc()
70      */
71         int GetMcc(void) const;
72
73         /**
74      * @see SimInfo::GetSpn()
75      */
76         Tizen::Base::String GetSpn(void) const;
77
78         /**
79      * @see SimInfo::GetIccId()
80      */
81         Tizen::Base::String GetIccId(void) const;
82
83         /**
84      * @see SimInfo::GetOperatorName()
85      */
86         Tizen::Base::String GetOperatorName(void) const;
87
88         /**
89      * @see SimInfo::GetPhoneNumber()
90      */
91         Tizen::Base::String GetPhoneNumber(void) const;
92
93         /**
94      * @see SimInfo::GetImsi()
95      */
96         Tizen::Base::String GetImsi(void) const;
97
98         /**
99      * @see SimInfo::IsAvailable()
100      */
101         bool IsAvailable(void) const;
102
103         /**
104      * Gets the Impl instance.
105      *
106      * @since 2.1
107      * @return The pointer to _SimInfoImpl
108      * @param[in] simInfo    An instance of SimInfo
109      */
110         static _SimInfoImpl* GetInstance(SimInfo& simInfo);
111
112         /**
113      * Gets the Impl instance.
114      *
115      * @since 2.1
116      * @return The pointer to _SimInfoImpl
117      * @param[in] simInfo    An instance of SimInfo
118      */
119         static const _SimInfoImpl* GetInstance(const SimInfo& simInfo);
120
121 private:
122         /**
123      * This is the copy constructor for this class. Do @b not use directly.
124      *
125      * @param[in]   rhs   An instance of %_SimInfoImpl
126      */
127         _SimInfoImpl(const _SimInfoImpl& rhs);
128
129         /**
130      * This is the assignment operator for this class. Do @b not use directly.
131      *
132      * @param[in]   rhs An instance of %_SimInfoImpl
133      */
134         _SimInfoImpl& operator =(const _SimInfoImpl& rhs);
135
136         _TelephonyIpcProxy* __pTelephonyServiceProxy;
137
138 }; // _SimInfoImpl
139
140 }} // Tizen::Telephony
141 #endif // _FTEL_INTERNAL_SIM_INFO_IMPL_H_