Merge "fixed wrong link page" into tizen_2.1
[platform/framework/native/nfc.git] / inc / FNetNfcINdefMessageDiscoveryEventListener.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    FNetNfcINdefMessageDiscoveryEventListener.h
19  * @brief   This is the header file for the %INdefMessageDiscoveryEventListener interface.
20  *
21  * This header file contains the declarations of the %INdefMessageDiscoveryEventListener interface.
22  */
23
24 #ifndef _FNET_NFC_INDEF_MESSAGE_DISCOVERY_EVENT_LISTENER_H_
25 #define _FNET_NFC_INDEF_MESSAGE_DISCOVERY_EVENT_LISTENER_H_
26
27 #include <FBaseRtIEventListener.h>
28
29 namespace Tizen { namespace Net { namespace Nfc
30 {
31
32 class NdefMessage;
33
34 /**
35  * @interface   INdefMessageDiscoveryEventListener
36  * @brief       This interface provides a listener for the events related to the NDEF message discovery.
37  *
38  * @since       2.0
39  *
40  * The %INdefMessageDiscoveryEventListener interface specifies the methods used for creating notifications about the
41  * NDEF message discovered from the target tag.
42  *
43  * For more information on the class features, see
44  * <a href="../org.tizen.native.appprogramming/html/guide/net/nfc.htm">NFC Guide</a>.
45  */
46 class _OSP_EXPORT_ INdefMessageDiscoveryEventListener
47         : public Tizen::Base::Runtime::IEventListener
48 {
49 public:
50         /**
51          * This polymorphic destructor should be overridden if required. @n
52          * This way, the destructors of the derived classes are called when the destructor of this interface is called.
53          *
54          * @since       2.0
55          */
56         virtual ~INdefMessageDiscoveryEventListener(void) {}
57
58         /**
59          * Called to notify the application when an NDEF message, that includes the NDEF records with the specified filter 
60          * type, is detected.
61          *
62          * @since       2.0
63          *
64          * @param[in]   pMessage        The detected NDEF message
65          * @remarks
66          *              - This method can be used for read-only access to the data on the target without opening a
67          *                connection to it.
68          *              - The input NdefMessage object must be deleted by the application after use, even outside this
69          *                method. The NdefMessage::RemoveAllRecords() method must be called with @c true as the input value
70          *                immediately before the NdefMessage object is deleted.
71          */
72         virtual void OnNdefMessageDetectedN(NdefMessage* pMessage) = 0;
73
74 protected:
75         //
76         // This method is for internal use only. Using this method can cause behavioral, security-related, and
77         // consistency-related issues in the application.
78         //
79         // This method is reserved and may change its name at any time without prior notice.
80         //
81         // @since    2.0
82         //
83         virtual void INdefMessageDiscoveryEventListener_Reserved1(void) {}
84
85         //
86         // This method is for internal use only. Using this method can cause behavioral, security-related, and
87         // consistency-related issues in the application.
88         //
89         // This method is reserved and may change its name at any time without prior notice.
90         //
91         // @since    2.0
92         //
93         virtual void INdefMessageDiscoveryEventListener_Reserved2(void) {}
94
95         //
96         // This method is for internal use only. Using this method can cause behavioral, security-related, and
97         // consistency-related issues in the application.
98         //
99         // This method is reserved and may change its name at any time without prior notice.
100         //
101         // @since    2.0
102         //
103         virtual void INdefMessageDiscoveryEventListener_Reserved3(void) {}
104 }; // INdefMessageDiscoveryEventListener
105
106 } } } // Tizen::Net::Nfc
107
108 #endif // _FNET_NFC_INDEF_MESSAGE_DISCOVERY_EVENT_LISTENER_H_