Tizen 2.1 base
[platform/framework/native/telephony.git] / src / FTel_NetworkStatusImpl.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_NetworkStatusImpl.h
19  * @brief       This is the header file for the _NetworkStatusImpl class.
20  *
21  * This header file contains the declarations of the _NetworkStatusImpl class.
22  */
23 #ifndef _FTEL_INTERNAL_NETWORK_STATUS_IMPL_H_
24 #define _FTEL_INTERNAL_NETWORK_STATUS_IMPL_H_
25
26
27 #include <FBaseObject.h>
28
29
30 namespace Tizen { namespace Telephony
31 {
32 class NetworkStatus;
33
34 class _NetworkStatusImpl
35         : public Tizen::Base::Object
36 {
37 public:
38         /**
39      * This is the default constructor for this class.
40      *
41      * @since   1.0
42      */
43         _NetworkStatusImpl(void);
44
45         /**
46      * This is the destructor for this class.
47      *
48      * @since   1.0
49      */
50         virtual ~_NetworkStatusImpl(void);
51
52     /**
53      * This is the copy constructor for this class.
54      *
55      * @param[in]   rhs An instance of %_NetworkStatusImpl
56      */
57     _NetworkStatusImpl(const _NetworkStatusImpl& rhs);
58
59     /**
60      * @see NetworkStatus::IsRoaming()
61      */
62         bool IsRoaming(void) const;
63
64         /**
65      * @see NetworkStatus::IsCallServiceAvailable()
66      */
67         bool IsCallServiceAvailable(void) const;
68
69         /**
70      * @see NetworkStatus::IsDataServiceAvailable()
71      */
72         bool IsDataServiceAvailable(void) const;
73
74         /**
75      * Sets the current state of roaming.
76      *
77      * @param[in]   isRoaming   The current state of roaming
78      */
79         void SetIsRoaming(bool isRoaming);
80
81         /**
82      * Sets the current state whether call service is available.
83      *
84      * @param[in]   isCallServiceAvailable   The current state whether call service is available
85      */
86         void SetIsCallServiceAvailable(bool isCallServiceAvailable);
87
88         /**
89      * Sets the current state whether date service is available.
90      *
91      * @param[in]   isDataServiceAvailable   The current state whether date service is available
92      */
93         void SetIsDataServiceAvailable(bool isDataServiceAvailable);
94
95         /**
96      * Gets the Impl instance.
97      *
98      * @since 2.1
99      * @return The pointer to _NetworkStatusImpl
100      * @param[in] networkStatus   An instance of NetworkStatus
101      */
102         static _NetworkStatusImpl* GetInstance(NetworkStatus& networkStatus);
103
104         /**
105      * Gets the Impl instance.
106      *
107      * @since 2.1
108      * @return The pointer to _NetworkStatusImpl
109      * @param[in] networkStatus   An instance of NetworkStatus
110      */
111         static const _NetworkStatusImpl* GetInstance(const NetworkStatus& networkStatus);
112
113
114         /**
115      * This is the assignment operator for this class. Do @b not use directly.
116      *
117      * @param[in]       rhs     An instance of %_NetworkStatusImpl
118      */
119         _NetworkStatusImpl& operator =(const _NetworkStatusImpl& rhs);
120
121 private:
122         bool __isRoaming;
123         bool __isCallServiceAvailable;
124         bool __isDataServiceAvailable;
125
126 }; // _NetworkStatusImpl
127
128 }} // Tizen::Telephony
129 #endif // _FTEL_INTERNAL_NETWORK_STATUS_IMPL_H_