2e8c17743727bb90b172b2483f05747baa4fc3c5
[platform/framework/native/appfw.git] / inc / FSysIRuntimeInfoGetLonglongAsyncResultListener.h
1 //
2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
3 //
4 // Licensed under the Apache License, Version 2.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //     http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16  
17 /**
18 * @file FSysIRuntimeInfoGetLonglongAsyncResultListener.h
19 * @brief          This is the header file for the %IRuntimeInfoGetLonglongAsyncResultListener interface.
20 *
21 * This header file contains the declarations of the %IRuntimeInfoGetLonglongAsyncResultListener interface.
22 */
23  
24 #ifndef _FSYS_IRUNTIME_INFO_GET_LONGLONG_ASYNC_RESULT_LISTENER_H_
25 #define _FSYS_IRUNTIME_INFO_GET_LONGLONG_ASYNC_RESULT_LISTENER_H_
26  
27 #include <FBaseResult.h>
28 #include <FBaseRtIEventListener.h>
29  
30 namespace Tizen { namespace System
31 {
32  
33 /**
34 * @interface     IRuntimeInfoGetLonglongAsyncResultListener
35 * @brief          This interface defines the result listener for an asynchronous method call to the %RuntimeInfo class.
36 *
37 * @since 2.0
38 *
39 * The %IRuntimeInfoGetLonglongAsyncResultListener interface defines the result listener for an asynchronous method call to the RuntimeInfo class. An instance of this interface is removed automatically by platform, after result is notified. 
40 *
41 */
42 class _OSP_EXPORT_ IRuntimeInfoGetLonglongAsyncResultListener
43            : public virtual Tizen::Base::Runtime::IEventListener
44 {
45 public:
46            /**
47            * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called.
48            *
49            * @since 2.0
50            */
51            virtual ~ IRuntimeInfoGetLonglongAsyncResultListener (void) {}
52            /**
53            * Called when a result received from an asynchronous method call is a key of type @c long @c long.
54            *
55            * @since 2.0
56            *
57            * @param[in]    value     The @c long @c long type runtime information
58            * @param[in]    r          An error code
59            * @exception E_SUCCESS The result is successful.
60            * @exception E_SYSTEM The method cannot proceed due to a severe system error.
61            */
62            virtual void OnResultReceivedForGetValueAsync(long long value, result r) = 0;
63  
64 protected:
65            //
66            // This method is for internal use only.
67            // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
68            //
69            // @since 2.0
70            virtual void IGetValueAsyncResultListener_Reserved1 (void){}
71  
72            //
73            // This method is for internal use only.
74            // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
75            //
76            // @since 2.0
77            virtual void IGetValueAsyncResultListener_Reserved2 (void){}
78  
79            //
80            // This method is for internal use only.
81            // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
82            //
83            // @since 2.0
84            virtual void IGetValueAsyncResultListener_Reserved3 (void){}
85  
86 }; // IRuntimeInfoGetLonglongAsyncResultListener
87  
88 } } // Tizen::System
89 #endif // _FSYS_IRUNTIME_INFO_GET_LONGLONG_ASYNC_RESULT_LISTENER_H_