1 /* 2 * Copyright (C) 2022 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 17 package androidx.core.uwb.backend.impl.internal; 18 19 import com.google.uwb.support.fira.FiraParams; 20 21 /** UWB configuration supported by UWB API. */ 22 public interface UwbConfiguration { 23 24 /** Gets the ID of given configuration. */ 25 @Utils.UwbConfigId getConfigId()26 int getConfigId(); 27 28 /** Gets the multi-node mode of given configuration. */ 29 @FiraParams.MultiNodeMode getMultiNodeMode()30 int getMultiNodeMode(); 31 32 /** Gets the STS config of this configuration. */ 33 @FiraParams.StsConfig getStsConfig()34 int getStsConfig(); 35 36 /** Gets the AoA result request mode of this configuration. */ 37 @FiraParams.AoaResultRequestMode getAoaResultRequestMode()38 int getAoaResultRequestMode(); 39 40 /** Indicates if controller is the initiator. */ isControllerTheInitiator()41 boolean isControllerTheInitiator(); 42 43 /** Gets the Ranging round usage of this configuration. */ 44 @FiraParams.RangingRoundUsage getRangingRoundUsage()45 int getRangingRoundUsage(); 46 } 47