You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.6 KiB
62 lines
1.6 KiB
/*
|
|
* Copyright (c) Hisilicon Technologies Co., Ltd.. 2012-2019. All rights reserved.
|
|
* Description:
|
|
* Author:
|
|
* Create:
|
|
*/
|
|
|
|
#ifndef ITVMANAGER_H
|
|
#define ITVMANAGER_H
|
|
|
|
#include <utils/RefBase.h>
|
|
#include <utils/Errors.h>
|
|
#include <utils/Mutex.h>
|
|
#include <hwbinder/Parcel.h>
|
|
#include "IPicture.h"
|
|
#include "IAudio.h"
|
|
#include "IVideo3D.h"
|
|
#include "IFactory.h"
|
|
#include "ISystemSetting.h"
|
|
#include "ISourceManager.h"
|
|
#include "IPCSetting.h"
|
|
#include "IHdmiCEC.h"
|
|
#include "IHdmiTx.h"
|
|
#include "IAtvChannel.h"
|
|
#include "ICusEx.h"
|
|
|
|
namespace android {
|
|
class ITVListener : virtual public RefBase {
|
|
public:
|
|
virtual void notify(unsigned int type, const void *data, unsigned int len, const void *prev) = 0;
|
|
};
|
|
|
|
class ITVManager : virtual public RefBase {
|
|
public:
|
|
virtual status_t invoke(const hardware::Parcel &request, hardware::Parcel *reply) = 0;
|
|
virtual int setListener(const sp<ITVListener> &listener) = 0;
|
|
virtual int getWinHandle(unsigned int *pHandle) = 0;
|
|
virtual IPicture *getPicture() = 0;
|
|
virtual IAudio *getAudio() = 0;
|
|
virtual IVideo3D *getVideo3D() = 0;
|
|
virtual IFactory *getFactory() = 0;
|
|
virtual ISystemSetting *getSystemSetting() = 0;
|
|
virtual ISourceManager *getSourceManager() = 0;
|
|
virtual IPCSetting *getPCSetting() = 0;
|
|
virtual IHdmiCEC *getHdmiCEC() = 0;
|
|
virtual IHdmiTx *getHdmiTx() = 0;
|
|
virtual IAtvChannel *getAtvChannel() = 0;
|
|
virtual ICusEx *getCusEx() = 0;
|
|
};
|
|
|
|
class TVCreator {
|
|
public:
|
|
static ITVManager *create();
|
|
static ITVManager *getmITVManagerValue();
|
|
|
|
private:
|
|
static ITVManager *mITVManager;
|
|
static Mutex mITVManagerLock;
|
|
};
|
|
}; // namespace android
|
|
#endif
|