IVrManager.aidl revision 504c6d67d0c2e4cda5201372551914f94acce710
1/**
2 * Copyright (c) 2016, The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *     http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package android.service.vr;
18
19import android.service.vr.IVrStateCallbacks;
20import android.service.vr.IPersistentVrStateCallbacks;
21
22/** @hide */
23interface IVrManager {
24
25    /**
26     * Add a callback to be notified when VR mode state changes.
27     *
28     * @param cb the callback instance to add.
29     */
30    void registerListener(in IVrStateCallbacks cb);
31
32    /**
33     * Remove the callack from the current set of registered callbacks.
34     *
35     * @param cb the callback to remove.
36     */
37    void unregisterListener(in IVrStateCallbacks cb);
38
39    /**
40     * Add a callback to be notified when persistent VR mode state changes.
41     *
42     * @param cb the callback instance to add.
43     */
44    void registerPersistentVrStateListener(in IPersistentVrStateCallbacks cb);
45
46    /**
47     * Remove the callack from the current set of registered callbacks.
48     *
49     * @param cb the callback to remove.
50     */
51    void unregisterPersistentVrStateListener(in IPersistentVrStateCallbacks cb);
52
53    /**
54     * Return current VR mode state.
55     *
56     * @return {@code true} if VR mode is enabled.
57     */
58    boolean getVrModeState();
59
60    /**
61     * Sets the persistent VR mode state of a device. When a device is in persistent VR mode it will
62     * remain in VR mode even if the foreground does not specify VR mode being enabled. Mainly used
63     * by VR viewers to indicate that a device is placed in a VR viewer.
64     *
65     * @param enabled true if the device should be placed in persistent VR mode.
66     */
67    void setPersistentVrModeEnabled(in boolean enabled);
68
69    /**
70     * Return current virtual display id.
71     *
72     * @return {@link android.view.Display.INVALID_DISPLAY} if there is no virtual display
73     * currently, else return the display id of the virtual display
74     */
75    int getCompatibilityDisplayId();
76}
77
78