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