sync with tizen_2.0
[platform/framework/native/appfw.git] / inc / FSysIRuntimeInfoGetLonglongAsyncResultListener.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012 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 /**
19 * @file FSysIRuntimeInfoGetLonglongAsyncResultListener.h
20 * @brief          This is the header file for the %IRuntimeInfoGetLonglongAsyncResultListener interface.
21 *
22 * This header file contains the declarations of the %IRuntimeInfoGetLonglongAsyncResultListener interface.
23 */
24  
25 #ifndef _FSYS_IRUNTIME_INFO_GET_LONGLONG_ASYNC_RESULT_LISTENER_H_
26 #define _FSYS_IRUNTIME_INFO_GET_LONGLONG_ASYNC_RESULT_LISTENER_H_
27  
28 #include <FBaseResult.h>
29 #include <FBaseRtIEventListener.h>
30  
31 namespace Tizen { namespace System
32 {
33  
34 /**
35 * @interface     IRuntimeInfoGetLonglongAsyncResultListener
36 * @brief          This interface defines the result listener for an asynchronous method call to the RuntimeInfo class.
37 *
38 * @since 2.0
39 *
40 * 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. 
41 *
42 */
43 class _OSP_EXPORT_ IRuntimeInfoGetLonglongAsyncResultListener
44            : public virtual Tizen::Base::Runtime::IEventListener
45 {
46 public:
47            /**
48            * 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.
49            *
50            * @since 2.0
51            */
52            virtual ~ IRuntimeInfoGetLonglongAsyncResultListener (void) {}
53            /**
54            * Called when a result received from an asynchronous method call is a key of type @c long @c long.
55            *
56            * @since 2.0
57            *
58            * @param[in]    value     The @c long @c long type runtime information
59            * @param[in]    r          An error code
60            * @exception E_SUCCESS The result is successful.
61            * @exception E_SYSTEM The method cannot proceed due to a severe system error.
62            */
63            virtual void OnResultReceivedForGetValueAsync(long long value, result r) = 0;
64  
65 protected:
66            //
67            // This method is for internal use only.
68            // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
69            //
70            // @since 2.0
71            virtual void IGetValueAsyncResultListener_Reserved1 (void){}
72  
73            //
74            // This method is for internal use only.
75            // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
76            //
77            // @since 2.0
78            virtual void IGetValueAsyncResultListener_Reserved2 (void){}
79  
80            //
81            // This method is for internal use only.
82            // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
83            //
84            // @since 2.0
85            virtual void IGetValueAsyncResultListener_Reserved3 (void){}
86  
87 }; // IRuntimeInfoGetLonglongAsyncResultListener
88  
89 } } // Tizen::System
90 #endif // _FSYS_IRUNTIME_INFO_GET_LONGLONG_ASYNC_RESULT_LISTENER_H_