1 /*
2  *
3  * Copyright 2021, The Android Open Source Project
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 package android.os;
19 
20 import android.os.IHintSession;
21 
22 /** {@hide} */
23 interface IHintManager {
24     /**
25      * Creates a {@link Session} for the given set of threads and associates to a binder token.
26      */
createHintSession(in IBinder token, in int[] tids, long durationNanos)27     IHintSession createHintSession(in IBinder token, in int[] tids, long durationNanos);
28 
29     /**
30      * Get preferred rate limit in nano second.
31      */
getHintSessionPreferredRate()32     long getHintSessionPreferredRate();
33 
setHintSessionThreads(in IHintSession hintSession, in int[] tids)34     void setHintSessionThreads(in IHintSession hintSession, in int[] tids);
getHintSessionThreadIds(in IHintSession hintSession)35     int[] getHintSessionThreadIds(in IHintSession hintSession);
36 }
37