update the header for Doxygen
[platform/framework/native/bluetooth.git] / src / FNetBt_BluetoothManagerEvent.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    FNetBt_BluetoothManagerEvent.h
19  * @brief   This is the header file for the _BluetoothManagerEvent class.
20  *
21  * This header file contains the declarations of the _BluetoothManagerEvent class.
22  * The _BluetoothManagerEvent class can call a method of a listener (IBluetoothManagerEventListener object).
23  * So, when a device event is occurred, listener instances can handle it appropriately.
24  */
25 #ifndef _FNET_BT_INTERNAL_BLUETOOTH_MANAGER_EVENT_H_
26 #define _FNET_BT_INTERNAL_BLUETOOTH_MANAGER_EVENT_H_
27
28 #include <FOspConfig.h>
29 #include <FBaseResult.h>
30 #include <FBaseRt_Event.h>
31
32 namespace Tizen { namespace Base { namespace Runtime
33 {
34 class IEventListener;
35 class IEventArg;
36 } } }
37
38 namespace Tizen { namespace Net { namespace Bluetooth
39 {
40
41 /**
42  * @class   _BluetoothManagerEvent
43  * @brief   This class handles Bluetooth manager events.
44  *
45  * When a Bluetooth manager event occurs, the _BluetoothManagerEvent object finds a IBluetoothManagerEventListener object
46  * and calls an appropriate method of the listener.
47  */
48 class _BluetoothManagerEvent
49         : public Base::Runtime::_Event
50 {
51 public:
52         /**
53          * This is the default constructor.
54          */
55         _BluetoothManagerEvent(void);
56
57         /**
58          * This is the class destructor.
59          */
60         virtual ~_BluetoothManagerEvent(void);
61         result Construct(void);
62
63 protected:
64         /**
65          * Checks the argument and finds out the type of event. After that, this method calls appropriate pListener's method.
66          *
67          * @return      A result code.
68          * @param[in]   pListener           An event listener related to this Bluetooth manger event.
69          * @param[in]   arg                 An event argument including information to be passed to the event listeners
70          * @exception   E_SUCCESS           The method is successful.
71          * @exception   E_INVALID_ARG       The argument passed to a method contains invalid values.
72          * @exception   E_SYSTEM            A system error occurred.
73          */
74         virtual void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
75
76 private:
77         _BluetoothManagerEvent(const _BluetoothManagerEvent& value);
78         _BluetoothManagerEvent& operator =(const _BluetoothManagerEvent& rhs);
79
80 }; // _BluetoothManagerEvent
81
82 } } }
83 #endif // _FNET_BT_INTERNAL_BLUETOOTH_MANAGER_EVENT_H_