13957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo/*
23957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * Copyright (C) 2014 The Android Open Source Project
33957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo *
43957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * Licensed under the Apache License, Version 2.0 (the "License");
53957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * you may not use this file except in compliance with the License.
63957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * You may obtain a copy of the License at
73957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo *
83957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo *      http://www.apache.org/licenses/LICENSE-2.0
93957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo *
103957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * Unless required by applicable law or agreed to in writing, software
113957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * distributed under the License is distributed on an "AS IS" BASIS,
123957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
133957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * See the License for the specific language governing permissions and
143957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * limitations under the License.
153957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo */
163957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo
17d5cc4a281e7ce29d1e8687ff3394b57a3a549260Jae Seopackage android.media.tv;
183957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo
193957091ba8f08c02b5e781098cb955a5f697a1ffJae Seoimport android.content.ComponentName;
20d5cc4a281e7ce29d1e8687ff3394b57a3a549260Jae Seoimport android.media.tv.ITvInputSession;
21b93ccca6139a7ee2dba5c110e5f8213a2bd231e5Dongwon Kangimport android.net.Uri;
221f213914c45c23c653f721690da2ce0718e63139Dongwon Kangimport android.media.tv.TvTrackInfo;
23832860fb9f6b3a7188a6af2d5d67806593595800Youngsang Choimport android.os.Bundle;
246a6059a29edf31e65541b3d8927a46f5846fb0a2Jae Seoimport android.view.InputChannel;
253957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo
263957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo/**
273957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * Interface a client of the ITvInputManager implements, to identify itself and receive information
283957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * about changes to the state of each TV input service.
293957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo * @hide
303957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo */
313957091ba8f08c02b5e781098cb955a5f697a1ffJae Seooneway interface ITvInputClient {
32d6672b51c5e07ec376a61057cfbb6bb7491a76b3Sungsoo Lim    void onSessionCreated(in String inputId, IBinder token, in InputChannel channel, int seq);
332b35a72a69f6fc39d21f7de9e21044d64db1380dSungsoo Lim    void onSessionReleased(int seq);
34832860fb9f6b3a7188a6af2d5d67806593595800Youngsang Cho    void onSessionEvent(in String name, in Bundle args, int seq);
35b93ccca6139a7ee2dba5c110e5f8213a2bd231e5Dongwon Kang    void onChannelRetuned(in Uri channelUri, int seq);
3610d285ac06b3d3060c7d90d3dc196d4ac8367467Jae Seo    void onTracksChanged(in List<TvTrackInfo> tracks, int seq);
3710d285ac06b3d3060c7d90d3dc196d4ac8367467Jae Seo    void onTrackSelected(int type, in String trackId, int seq);
389b08edff236fc68d836eccfaa1a5f028dc390cecDongwon Kang    void onVideoAvailable(int seq);
399b08edff236fc68d836eccfaa1a5f028dc390cecDongwon Kang    void onVideoUnavailable(int reason, int seq);
40bbcd206a798c8c2845200daf7a2d4cb7b29056f3Jae Seo    void onContentAllowed(int seq);
416057102dbb746593a7d59cf377c969b62e38c664Jae Seo    void onContentBlocked(in String rating, int seq);
42ff04ae757a5542d2d5633e75b7adacc4fce1ce7eYoungsang Cho    void onLayoutSurface(int left, int top, int right, int bottom, int seq);
433957091ba8f08c02b5e781098cb955a5f697a1ffJae Seo}
44