1be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root/*
2be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * Copyright (C) 2010 The Android Open Source Project
3be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root *
4be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * Licensed under the Apache License, Version 2.0 (the "License");
5be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * you may not use this file except in compliance with the License.
6be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * You may obtain a copy of the License at
7be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root *
8be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root *      http://www.apache.org/licenses/LICENSE-2.0
9be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root *
10be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * Unless required by applicable law or agreed to in writing, software
11be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * distributed under the License is distributed on an "AS IS" BASIS,
12be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * See the License for the specific language governing permissions and
14be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root * limitations under the License.
15be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root */
16be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
17be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root#ifndef ANDROID_IMOUNTSHUTDOWNOBSERVER_H
18be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root#define ANDROID_IMOUNTSHUTDOWNOBSERVER_H
19be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
20be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root#include <binder/IInterface.h>
21be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root#include <binder/Parcel.h>
22be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
23be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Rootnamespace android {
24be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
25be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Rootclass IMountShutdownObserver: public IInterface
26be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root{
27be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Rootpublic:
28be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root    DECLARE_META_INTERFACE(MountShutdownObserver);
29be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
30be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root    virtual void onShutDownComplete(const int32_t statusCode) = 0;
31be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root};
32be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
33be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root// ----------------------------------------------------------------------------
34be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
35be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Rootclass BnMountShutdownObserver: public BnInterface<IMountShutdownObserver>
36be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root{
37be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Rootpublic:
38be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root    virtual status_t    onTransact( uint32_t code,
39be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root                                    const Parcel& data,
40be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root                                    Parcel* reply,
41be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root                                    uint32_t flags = 0);
42be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root};
43be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
44be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root}; // namespace android
45be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root
46be857d42849eaaa554d4772dbba7755f8a0f3547Kenny Root#endif // ANDROID_IMOUNTSHUTDOWNOBSERVER_H
47