Tizen 2.1 base
[platform/framework/native/telephony.git] / src / FTel_NetworkManagerEventArg.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_NetworkManagerEventArg.h
19  * @brief       This is the header file for _NetworkManagerEventArg class.
20  *
21  * This header file contains the declarations of _NetworkManagerEventArg class.
22  */
23
24
25 #ifndef _FTEL_INTERNAL_NETWORK_MANAGER_EVENT_ARG_H_
26 #define _FTEL_INTERNAL_NETWORK_MANAGER_EVENT_ARG_H_
27
28 // Includes
29 #include <FBaseObject.h>
30 #include <FBaseDataType.h>
31 #include <FBaseRtIEventArg.h>
32 #include <FTelNetworkStatus.h>
33
34 namespace Tizen { namespace Telephony
35 {
36
37
38 /**
39  * @class   _NetworkManagerEventArg
40  * @brief   This class is used as an argument of methods of the ITelephonyNetworkEventListener class.
41  *
42  * This class is used as an argument of ITelephonyNetworkEventListener methods.
43  * When a NetworkManager event occurs, the _NetworkManagerEvent object finds a ITelephonyNetworkEventListener object
44  * which is registered for the NetworkManager object and calls an appropriate method of the listener.
45  */
46
47 class _NetworkManagerEventArg
48     : public Tizen::Base::Object
49     , public Tizen::Base::Runtime::IEventArg
50 {
51 public:
52     /**
53     * This is the constructor.
54     *
55     */
56     _NetworkManagerEventArg(void);
57
58     /**
59     * This constructor initializes the instance of this class with the specified values.
60     *
61     * @param[in]    networkstatus An instance of %NetworkStatus
62     */
63     _NetworkManagerEventArg(const NetworkStatus& networkstatus);
64
65     /**
66     * This is class destructor.
67     */
68     virtual ~_NetworkManagerEventArg(void) {};
69
70
71     /**
72      * Gets the network status
73      * @return  The instance of NetworkStatus
74      */
75     const NetworkStatus& GetNetworkStatus(void) const;
76
77     /**
78      * Gets the error code.
79      * @return  Error code of this argument.
80      */
81     result GetError(void) const;
82
83 private:
84     _NetworkManagerEventArg(const _NetworkManagerEventArg& rhs);
85     _NetworkManagerEventArg& operator =(const _NetworkManagerEventArg& rhs);
86
87 private:
88     NetworkStatus __networkStatus;
89     result __error;
90 }; // _NetworkManagerEventArg
91 } }
92
93 #endif // _FTEL_INTERNAL_NETWORK_MANAGER_EVENT_ARG_H_