16f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten/*
26f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * Copyright (C) 2013 The Android Open Source Project
36f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten *
46f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * Licensed under the Apache License, Version 2.0 (the "License");
56f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * you may not use this file except in compliance with the License.
66f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * You may obtain a copy of the License at
76f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten *
86f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten *      http://www.apache.org/licenses/LICENSE-2.0
96f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten *
106f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * Unless required by applicable law or agreed to in writing, software
116f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * distributed under the License is distributed on an "AS IS" BASIS,
126f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
136f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * See the License for the specific language governing permissions and
146f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten * limitations under the License.
156f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten */
166f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
176f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten#ifndef ANDROID_IMEDIALOGSERVICE_H
186f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten#define ANDROID_IMEDIALOGSERVICE_H
196f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
206f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten#include <binder/IInterface.h>
216f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten#include <binder/IMemory.h>
226f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten#include <binder/Parcel.h>
236f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
246f1c1918d0dfece10f728711b055441e4d135c73Glenn Kastennamespace android {
256f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
266f1c1918d0dfece10f728711b055441e4d135c73Glenn Kastenclass IMediaLogService: public IInterface
276f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten{
286f1c1918d0dfece10f728711b055441e4d135c73Glenn Kastenpublic:
296f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten    DECLARE_META_INTERFACE(MediaLogService);
306f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
316f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten    virtual void    registerWriter(const sp<IMemory>& shared, size_t size, const char *name) = 0;
326f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten    virtual void    unregisterWriter(const sp<IMemory>& shared) = 0;
336f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
346f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten};
356f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
366f1c1918d0dfece10f728711b055441e4d135c73Glenn Kastenclass BnMediaLogService: public BnInterface<IMediaLogService>
376f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten{
386f1c1918d0dfece10f728711b055441e4d135c73Glenn Kastenpublic:
396f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten    virtual status_t    onTransact(uint32_t code, const Parcel& data, Parcel* reply,
406f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten                                uint32_t flags = 0);
416f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten};
426f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
436f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten}   // namespace android
446f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten
456f1c1918d0dfece10f728711b055441e4d135c73Glenn Kasten#endif  // ANDROID_IMEDIALOGSERVICE_H
46