107bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani/* 2d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema* Copyright (c) 2014 The Linux Foundation. All rights reserved. 307bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* 407bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* Redistribution and use in source and binary forms, with or without 507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* modification, are permitted provided that the following conditions are 607bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* met: 707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* * Redistributions of source code must retain the above copyright 807bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* notice, this list of conditions and the following disclaimer. 907bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* * Redistributions in binary form must reproduce the above 1007bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* copyright notice, this list of conditions and the following 1107bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* disclaimer in the documentation and/or other materials provided 1207bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* with the distribution. 1307bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* * Neither the name of The Linux Foundation. nor the names of its 1407bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* contributors may be used to endorse or promote products derived 1507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* from this software without specific prior written permission. 1607bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* 1707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 1807bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 1907bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 2007bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 2107bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2207bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2307bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 2407bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 2507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 2607bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 2707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2807bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani*/ 2907bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 30d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#ifndef HDMI_EVENTS_LISTENER_H_ 31d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#define HDMI_EVENTS_LISTENER_H_ 3207bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 33d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#include <utils/RefBase.h> 34d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#include <binder/IInterface.h> 3507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 36d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennemanamespace qClient { 3707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 38d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennemaclass IQHDMIClient : public android::IInterface 39d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema{ 4007bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malanipublic: 41d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema DECLARE_META_INTERFACE(QHDMIClient); 42d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema virtual void onHdmiHotplug(int connected) = 0; 43d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema virtual void onCECMessageRecieved(char *msg, ssize_t len) = 0; 44d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema}; 4507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 46d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennemaclass BnQHDMIClient : public android::BnInterface<IQHDMIClient> 47d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema{ 48d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennemapublic: 49d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema virtual android::status_t onTransact( uint32_t code, 50d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema const android::Parcel& data, 51d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema android::Parcel* reply, uint32_t flags = 0); 5207bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani}; 5307bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 54d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema}; //namespace qhdmi 55d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema 56d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#endif // HDMI_EVENTS_LISTENER_H_ 57d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema 58