summaryrefslogtreecommitdiff
path: root/tvapi/android/include/ITv.h (plain)
blob: 2fd6f6df417e0169410dcf67c76b894b512290c4
1#ifndef ANDROID_AMLOGIC_ITV_H
2#define ANDROID_AMLOGIC_ITV_H
3
4#include <utils/RefBase.h>
5#include <binder/IInterface.h>
6#include <binder/Parcel.h>
7#include <binder/IMemory.h>
8#include <utils/String8.h>
9#include <include/Tv.h>
10
11using namespace android;
12
13class ITvClient;
14
15class ITv: public IInterface
16{
17public:
18 DECLARE_META_INTERFACE(Tv);
19
20 virtual void disconnect() = 0;
21
22 // connect new client with existing tv remote
23 virtual status_t connect(const sp<ITvClient> &client) = 0;
24
25 // prevent other processes from using this ITv interface
26 virtual status_t lock() = 0;
27
28 // allow other processes to use this ITv interface
29 virtual status_t unlock() = 0;
30
31 virtual status_t processCmd(const Parcel &p, Parcel *r) = 0;
32
33 //share mem for subtitle bmp
34 virtual status_t createSubtitle(const sp<IMemory> &share_mem) = 0;
35 //share mem for video/hdmi bmp
36 virtual status_t createVideoFrame(const sp<IMemory> &share_mem) = 0;
37
38};
39
40// ----------------------------------------------------------------------------
41
42class BnTv: public BnInterface<ITv>
43{
44public:
45 virtual status_t onTransact( uint32_t code,
46 const Parcel &data,
47 Parcel *reply,
48 uint32_t flags = 0);
49};
50
51#endif
52