IEffectClient.h revision d71a1be83ff31cdb6599c351f9832cefc8d447ba
1d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent/* 2d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * Copyright (C) 2010 The Android Open Source Project 3d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * 4d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * Licensed under the Apache License, Version 2.0 (the "License"); 5d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * you may not use this file except in compliance with the License. 6d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * You may obtain a copy of the License at 7d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * 8d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * http://www.apache.org/licenses/LICENSE-2.0 9d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * 10d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * Unless required by applicable law or agreed to in writing, software 11d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * distributed under the License is distributed on an "AS IS" BASIS, 12d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * See the License for the specific language governing permissions and 14d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent * limitations under the License. 15d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent */ 16d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 17d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent#ifndef ANDROID_IEFFECTCLIENT_H 18d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent#define ANDROID_IEFFECTCLIENT_H 19d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 20d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent#include <utils/RefBase.h> 21d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent#include <binder/IInterface.h> 22d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent#include <binder/Parcel.h> 23d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent#include <binder/IMemory.h> 24d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 25d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurentnamespace android { 26d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 27d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurentclass IEffectClient: public IInterface 28d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent{ 29d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurentpublic: 30d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent DECLARE_META_INTERFACE(EffectClient); 31d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 32d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent virtual void controlStatusChanged(bool controlGranted) = 0; 33d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent virtual void enableStatusChanged(bool enabled) = 0; 34d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent virtual void commandExecuted(int cmdCode, int cmdSize, void *pCmdData, int replySize, void *pReplyData) = 0; 35d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent}; 36d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 37d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent// ---------------------------------------------------------------------------- 38d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 39d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurentclass BnEffectClient: public BnInterface<IEffectClient> 40d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent{ 41d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurentpublic: 42d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent virtual status_t onTransact( uint32_t code, 43d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent const Parcel& data, 44d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent Parcel* reply, 45d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent uint32_t flags = 0); 46d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent}; 47d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 48d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent}; // namespace android 49d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent 50d71a1be83ff31cdb6599c351f9832cefc8d447baEric Laurent#endif // ANDROID_IEFFECTCLIENT_H 51