1 /* 2 * Copyright (C) 2015 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 com.android.bluetooth.gatt; 18 import android.annotation.Nullable; 19 20 /** @hide */ 21 public class AdvtFilterOnFoundOnLostInfo { 22 private int mClientIf; 23 24 private int mAdvPktLen; 25 @Nullable 26 private byte[] mAdvPkt; 27 28 private int mScanRspLen; 29 30 @Nullable 31 private byte[] mScanRsp; 32 33 private int mFiltIndex; 34 private int mAdvState; 35 private int mAdvInfoPresent; 36 private String mAddress; 37 38 private int mAddrType; 39 private int mTxPower; 40 private int mRssiValue; 41 private int mTimeStamp; 42 43 public AdvtFilterOnFoundOnLostInfo(int client_if, int adv_pkt_len, byte[] adv_pkt, 44 int scan_rsp_len, byte[] scan_rsp, int filt_index, int adv_state, 45 int adv_info_present, String address, int addr_type, int tx_power, 46 int rssi_value, int time_stamp){ 47 48 mClientIf = client_if; 49 mAdvPktLen = adv_pkt_len; 50 mAdvPkt = adv_pkt; 51 mScanRspLen = scan_rsp_len; 52 mScanRsp = scan_rsp; 53 mFiltIndex = filt_index; 54 mAdvState = adv_state; 55 mAdvInfoPresent = adv_info_present; 56 mAddress = address; 57 mAddrType = addr_type; 58 mTxPower = tx_power; 59 mRssiValue = rssi_value; 60 mTimeStamp = time_stamp; 61 } 62 63 public int getClientIf () { 64 return mClientIf; 65 } 66 67 public int getFiltIndex () { 68 return mFiltIndex; 69 } 70 71 public int getAdvState () { 72 return mAdvState; 73 } 74 75 public int getTxPower () { 76 return mTxPower; 77 } 78 79 public int getTimeStamp () { 80 return mTimeStamp; 81 } 82 83 public int getRSSIValue () { 84 return mRssiValue; 85 } 86 87 public int getAdvInfoPresent () { 88 return mAdvInfoPresent; 89 } 90 91 public String getAddress() { 92 return mAddress; 93 } 94 95 public int getAddressType() { 96 return mAddrType; 97 } 98 99 public byte[] getAdvPacketData() { 100 return mAdvPkt; 101 } 102 103 public int getAdvPacketLen() { 104 return mAdvPktLen; 105 } 106 107 public byte[] getScanRspData() { 108 return mScanRsp; 109 } 110 111 public int getScanRspLen() { 112 return mScanRspLen; 113 } 114 115 public byte [] getResult() { 116 int resultLength = mAdvPkt.length + ((mScanRsp != null) ? mScanRsp.length : 0); 117 byte result[] = new byte[resultLength]; 118 System.arraycopy(mAdvPkt, 0, result, 0, mAdvPkt.length); 119 if (mScanRsp != null) { 120 System.arraycopy(mScanRsp, 0, result, mAdvPkt.length, mScanRsp.length); 121 } 122 return result; 123 } 124 125 } 126 127