12652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang/* 22652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * Copyright 2016 The Android Open Source Project 32652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * 42652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * Licensed under the Apache License, Version 2.0 (the "License"); 52652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * you may not use this file except in compliance with the License. 62652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * You may obtain a copy of the License at 72652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * 82652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * http://www.apache.org/licenses/LICENSE-2.0 92652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * 102652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * Unless required by applicable law or agreed to in writing, software 112652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * distributed under the License is distributed on an "AS IS" BASIS, 122652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 132652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * See the License for the specific language governing permissions and 142652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang * limitations under the License. 152652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang */ 162652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 172652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang#ifndef ANDROID_I_MEDIA_RESOURCE_MONITOR_H 182652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang#define ANDROID_I_MEDIA_RESOURCE_MONITOR_H 192652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 2047f876b74be0a2d6d417f5ff385f85d835a97fe9Jiyong Park#ifndef __ANDROID_VNDK__ 2147f876b74be0a2d6d417f5ff385f85d835a97fe9Jiyong Park 222652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang#include <binder/IInterface.h> 232652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 242652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kangnamespace android { 252652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 262652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang// ---------------------------------------------------------------------- 272652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 282652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kangclass IMediaResourceMonitor : public IInterface { 292652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kangpublic: 3017576de056a57753eb4af797545db88ef4f81ef0Colin Cross DECLARE_META_INTERFACE(MediaResourceMonitor) 312652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 32a2a6be113f263bc12c81d3c81069f592cc76a6c7Dongwon Kang // Values should be in sync with Intent.EXTRA_MEDIA_RESOURCE_TYPE_XXX. 33a2a6be113f263bc12c81d3c81069f592cc76a6c7Dongwon Kang enum { 34a2a6be113f263bc12c81d3c81069f592cc76a6c7Dongwon Kang TYPE_VIDEO_CODEC = 0, 35a2a6be113f263bc12c81d3c81069f592cc76a6c7Dongwon Kang TYPE_AUDIO_CODEC = 1, 36a2a6be113f263bc12c81d3c81069f592cc76a6c7Dongwon Kang }; 37a2a6be113f263bc12c81d3c81069f592cc76a6c7Dongwon Kang 38a2a6be113f263bc12c81d3c81069f592cc76a6c7Dongwon Kang virtual void notifyResourceGranted(/*in*/ int32_t pid, /*in*/ const int32_t type) = 0; 392652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 402652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang enum { 412652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang NOTIFY_RESOURCE_GRANTED = IBinder::FIRST_CALL_TRANSACTION, 422652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang }; 432652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang}; 442652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 452652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang// ---------------------------------------------------------------------- 462652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 472652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kangclass BnMediaResourceMonitor : public BnInterface<IMediaResourceMonitor> { 482652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kangpublic: 492652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang virtual status_t onTransact(uint32_t code, const Parcel& data, Parcel* reply, 502652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang uint32_t flags = 0); 512652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang}; 522652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 532652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang// ---------------------------------------------------------------------- 542652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 552652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang}; // namespace android 562652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang 5747f876b74be0a2d6d417f5ff385f85d835a97fe9Jiyong Park#else // __ANDROID_VNDK__ 5847f876b74be0a2d6d417f5ff385f85d835a97fe9Jiyong Park#error "This header is not visible to vendors" 5947f876b74be0a2d6d417f5ff385f85d835a97fe9Jiyong Park#endif // __ANDROID_VNDK__ 6047f876b74be0a2d6d417f5ff385f85d835a97fe9Jiyong Park 612652c17bcf78ba307ef8cf8389a02d51b37d595bDongwon Kang#endif // ANDROID_I_MEDIA_RESOURCE_MONITOR_H 62