51f569fa47bdbb4277c14322b3fca2b8d90a601c
[platform/framework/native/appfw.git] / inc / FIoIMmcStorageFormatListener.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         FIoIMmcStorageFormatListener.h
19 * @brief        This is the header file for the %IMmcStorageFormatListener interface.
20 *
21 * This header file contains the declarations of the %IMmcStorageFormatListener interface.
22 */
23
24 #ifndef _FIO_IMMC_STORAGE_FORMAT_LISTENER_H_
25 #define _FIO_IMMC_STORAGE_FORMAT_LISTENER_H_
26
27 #include <FBaseRtIEventListener.h>
28
29 namespace Tizen { namespace Io
30 {
31
32 /**
33 * @interface     IMmcStorageFormatListener
34 * @brief          This interface is the listener to receive the result of external MMC format operations.
35 * @since         2.0
36 *
37 * The %IMmcStorageFormatListener interface must be registered and implemented by an application to receive the result of
38 * external MMC format operations.
39 *
40 * @see MmcStorageManager
41 */
42 class _OSP_EXPORT_ IMmcStorageFormatListener
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 called.
48         *
49         * @since        2.0
50         */
51         virtual ~IMmcStorageFormatListener(void) {}
52
53         /**
54         * Called when external MMC format operation is done.
55         *
56         * @since                2.0
57         *
58         * @param[in]    r                               The result of external MMC format operation
59         * @exception    E_SUCCESS               The format operation is successful.
60         * @exception    E_IO                    An unexpected device failure has occurred as the media ejected suddenly.
61         * @exception    E_SYSTEM                The method cannot proceed due to a severe system error.
62         */
63         virtual void OnMmcStorageFormatted(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 IMmcStorageFormatListener_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 IMmcStorageFormatListener_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 IMmcStorageFormatListener_Reserved3(void) {}
86
87 }; // IMmcStorageFormatListener
88
89 } } // Tizen::Io
90
91 #endif // _FIO_IMMC_STORAGE_FORMAT_LISTENER_H