10dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik/*
20dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * Copyright (C) 2014 The Android Open Source Project
30dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik *
40dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * Licensed under the Apache License, Version 2.0 (the "License");
50dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * you may not use this file except in compliance with the License.
60dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * You may obtain a copy of the License at
70dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik *
80dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik *      http://www.apache.org/licenses/LICENSE-2.0
90dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik *
100dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * Unless required by applicable law or agreed to in writing, software
110dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * distributed under the License is distributed on an "AS IS" BASIS,
120dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
130dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * See the License for the specific language governing permissions and
140dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * limitations under the License.
150dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik */
160dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErikpackage android.media;
170dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik
180dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErikimport com.android.server.LocalServices;
190dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik
200dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik/**
210dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * Class for system services to access extra AudioManager functionality. The
220dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * AudioService is responsible for registering an implementation with
230dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * {@link LocalServices}.
240dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik *
250dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik * @hide
260dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik */
270dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErikpublic abstract class AudioManagerInternal {
280dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik
29272e161c1a200900cb10b5b0cdab8ae1f123cabdRoboErik    public abstract void adjustSuggestedStreamVolumeForUid(int streamType, int direction,
30272e161c1a200900cb10b5b0cdab8ae1f123cabdRoboErik            int flags,
31272e161c1a200900cb10b5b0cdab8ae1f123cabdRoboErik            String callingPackage, int uid);
32272e161c1a200900cb10b5b0cdab8ae1f123cabdRoboErik
330dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik    public abstract void adjustStreamVolumeForUid(int streamType, int direction, int flags,
340dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik            String callingPackage, int uid);
350dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik
360dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik    public abstract void setStreamVolumeForUid(int streamType, int direction, int flags,
370dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik            String callingPackage, int uid);
380dac35af2c6aa42bcd181981b041747cfd1afa5fRoboErik}
39