1c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah/* 2c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * Copyright (C) 2010 The Android Open Source Project 3c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * Copyright (C) 2012-2013, The Linux Foundation. All rights reserved. 4c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * 5c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * Not a Contribution, Apache license notifications and license are 6c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * retained for attribution purposes only. 7c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 8c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * Licensed under the Apache License, Version 2.0 (the "License"); 9c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * you may not use this file except in compliance with the License. 10c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * You may obtain a copy of the License at 11c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * 12c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * http://www.apache.org/licenses/LICENSE-2.0 13c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * 14c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * Unless required by applicable law or agreed to in writing, software 15c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * distributed under the License is distributed on an "AS IS" BASIS, 16c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * See the License for the specific language governing permissions and 18c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah * limitations under the License. 19c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah */ 20c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 21c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#ifndef ANDROID_IQCLIENT_H 22c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#define ANDROID_IQCLIENT_H 23c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 24c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#include <stdint.h> 25c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#include <sys/types.h> 26c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#include <utils/Errors.h> 27c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#include <utils/RefBase.h> 28c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#include <binder/IInterface.h> 29c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 30c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shahnamespace qClient { 31c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah// ---------------------------------------------------------------------------- 32c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shahclass IQClient : public android::IInterface 33c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah{ 34c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shahpublic: 35c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah DECLARE_META_INTERFACE(QClient); 362299e93cfd2fbf8d0ea59e27e775e9baa27bf04aNaseer Ahmed virtual android::status_t notifyCallback(uint32_t command, 372299e93cfd2fbf8d0ea59e27e775e9baa27bf04aNaseer Ahmed const android::Parcel* inParcel, 382299e93cfd2fbf8d0ea59e27e775e9baa27bf04aNaseer Ahmed android::Parcel* outParcel) = 0; 39c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah}; 40c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 41c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah// ---------------------------------------------------------------------------- 42c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 43c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shahclass BnQClient : public android::BnInterface<IQClient> 44c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah{ 45c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shahpublic: 46c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah virtual android::status_t onTransact( uint32_t code, 47c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah const android::Parcel& data, 48c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah android::Parcel* reply, 49c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah uint32_t flags = 0); 50c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah}; 51c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 52c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah// ---------------------------------------------------------------------------- 53c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah}; // namespace qClient 54c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah 55c59c27830019a78f668f6fb2e9518483587ce098Saurabh Shah#endif // ANDROID_IQCLIENT_H 56