View Javadoc
1   /*
2    * Copyright (C) 2018 Alberto Irurueta Carro (alberto@irurueta.com)
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  package com.irurueta.navigation.indoor;
17  
18  import com.irurueta.algebra.Matrix;
19  import com.irurueta.geometry.Point2D;
20  
21  import java.util.List;
22  
23  /**
24   * Data related to a beacon whose transmitted power, standard deviation of such
25   * transmitted power and its 2D location are known.
26   */
27  public class BeaconWithPowerAndLocated2D extends BeaconWithPowerAndLocated<Point2D> {
28  
29      /**
30       * Constructor.
31       *
32       * @param identifiers      list of the multipart identifiers of the beacon.
33       * @param transmittedPower calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
34       * @param position         position where beacon is located.
35       * @throws IllegalArgumentException if either identifiers or position are null.
36       */
37      public BeaconWithPowerAndLocated2D(
38              final List<BeaconIdentifier> identifiers, final double transmittedPower, final Point2D position) {
39          super(identifiers, transmittedPower, position);
40      }
41  
42      /**
43       * Constructor.
44       *
45       * @param identifiers      list of the multipart identifiers of the beacon.
46       * @param transmittedPower calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
47       * @param bluetoothAddress the bluetooth mac address.
48       * @param beaconTypeCode   the two byte value indicating the type of beacon.
49       * @param manufacturer     a two byte code indicating the beacon manufacturer.
50       * @param serviceUuid      a 32 bit service uuid for the beacon.
51       * @param bluetoothName    the bluetooth device name.
52       * @param position         position where beacon is located.
53       * @throws IllegalArgumentException if either identifiers or position are null.
54       */
55      public BeaconWithPowerAndLocated2D(
56              final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
57              final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
58              final Point2D position) {
59          super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid, bluetoothName,
60                  position);
61      }
62  
63      /**
64       * Constructor.
65       *
66       * @param identifiers                       list of the multipart identifiers of the beacon.
67       * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
68       * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
69       * @param position                          position where beacon is located.
70       * @throws IllegalArgumentException if either identifiers, position are null or
71       *                                  standard deviation is negative.
72       */
73      public BeaconWithPowerAndLocated2D(
74              final List<BeaconIdentifier> identifiers, final double transmittedPower,
75              final Double transmittedPowerStandardDeviation, final Point2D position) {
76          super(identifiers, transmittedPower, transmittedPowerStandardDeviation, position);
77      }
78  
79      /**
80       * Constructor.
81       *
82       * @param identifiers                       list of the multipart identifiers of the beacon.
83       * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
84       * @param bluetoothAddress                  the bluetooth mac address.
85       * @param beaconTypeCode                    the two byte value indicating the type of beacon.
86       * @param manufacturer                      a two byte code indicating the beacon manufacturer.
87       * @param serviceUuid                       a 32 bit service uuid for the beacon.
88       * @param bluetoothName                     the bluetooth device name.
89       * @param transmittedPowerStandardDeviation transmitted power standard deviation.
90       * @param position                          position where beacon is located.
91       * @throws IllegalArgumentException if either identifiers or position are null or
92       *                                  standard deviation is negative.
93       */
94      public BeaconWithPowerAndLocated2D(
95              final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
96              final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
97              final Double transmittedPowerStandardDeviation, final Point2D position) {
98          super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid, bluetoothName,
99                  transmittedPowerStandardDeviation, position);
100     }
101 
102     /**
103      * Constructor.
104      *
105      * @param identifiers        list of the multipart identifiers of the beacon.
106      * @param transmittedPower   calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
107      * @param position           position where beacon is located.
108      * @param positionCovariance covariance of inhomogeneous coordinates of current
109      *                           position (if available).
110      * @throws IllegalArgumentException if either identifiers or position are null or
111      *                                  covariance has invalid size.
112      */
113     public BeaconWithPowerAndLocated2D(
114             final List<BeaconIdentifier> identifiers, final double transmittedPower, final Point2D position,
115             final Matrix positionCovariance) {
116         super(identifiers, transmittedPower, position, positionCovariance);
117     }
118 
119     /**
120      * Constructor.
121      *
122      * @param identifiers        list of the multipart identifiers of the beacon.
123      * @param transmittedPower   calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
124      * @param bluetoothAddress   the bluetooth mac address.
125      * @param beaconTypeCode     the two byte value indicating the type of beacon.
126      * @param manufacturer       a two byte code indicating the beacon manufacturer.
127      * @param serviceUuid        a 32 bit service uuid for the beacon.
128      * @param bluetoothName      the bluetooth device name.
129      * @param position           position where beacon is located.
130      * @param positionCovariance covariance of inhomogeneous coordinates of current
131      *                           position (if available).
132      * @throws IllegalArgumentException if either identifiers or position are null or
133      *                                  covariance has invalid size.
134      */
135     public BeaconWithPowerAndLocated2D(
136             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
137             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
138             final Point2D position, final Matrix positionCovariance) {
139         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid, bluetoothName,
140                 position, positionCovariance);
141     }
142 
143     /**
144      * Constructor.
145      *
146      * @param identifiers                       list of the multipart identifiers of the beacon.
147      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
148      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
149      * @param position                          position where beacon is located.
150      * @param positionCovariance                covariance of inhomogeneous coordinates of current
151      *                                          position (if available).
152      * @throws IllegalArgumentException if either identifiers or position are null or
153      *                                  covariance has invalid size or standard deviation is negative.
154      */
155     public BeaconWithPowerAndLocated2D(
156             final List<BeaconIdentifier> identifiers, final double transmittedPower,
157             final Double transmittedPowerStandardDeviation, final Point2D position, final Matrix positionCovariance) {
158         super(identifiers, transmittedPower, transmittedPowerStandardDeviation, position, positionCovariance);
159     }
160 
161     /**
162      * Constructor.
163      *
164      * @param identifiers                       list of the multipart identifiers of the beacon.
165      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
166      * @param bluetoothAddress                  the bluetooth mac address.
167      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
168      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
169      * @param serviceUuid                       a 32 bit service uuid for the beacon.
170      * @param bluetoothName                     the bluetooth device name.
171      * @param transmittedPowerStandardDeviation transmitted power standard deviation.
172      * @param position                          position where beacon is located.
173      * @param positionCovariance                covariance of inhomogeneous coordinates of current
174      *                                          position (if available).
175      * @throws IllegalArgumentException if either identifiers or position are null,
176      *                                  covariance has invalid size or standard deviation is negative.
177      */
178     public BeaconWithPowerAndLocated2D(
179             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
180             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
181             final Double transmittedPowerStandardDeviation, final Point2D position, final Matrix positionCovariance) {
182         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid, bluetoothName,
183                 transmittedPowerStandardDeviation, position, positionCovariance);
184     }
185 
186     /**
187      * Constructor.
188      *
189      * @param identifiers      list of the multipart identifiers of the beacon.
190      * @param transmittedPower calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
191      * @param frequency        frequency used by this Beacon.
192      * @param bluetoothAddress the bluetooth mac address.
193      * @param beaconTypeCode   the two byte value indicating the type of beacon.
194      * @param manufacturer     a two byte code indicating the beacon manufacturer.
195      * @param serviceUuid      a 32 bit service uuid for the beacon.
196      * @param bluetoothName    the bluetooth device name.
197      * @param position         position where beacon is located.
198      * @throws IllegalArgumentException if either identifiers or position are null.
199      */
200     public BeaconWithPowerAndLocated2D(
201             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
202             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
203             final String bluetoothName, final Point2D position) {
204         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
205                 bluetoothName, position);
206     }
207 
208     /**
209      * Constructor.
210      *
211      * @param identifiers                       list of the multipart identifiers of the beacon.
212      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
213      * @param frequency                         frequency used by this Beacon.
214      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
215      * @param position                          position where beacon is located.
216      * @throws IllegalArgumentException if either identifiers or position are null or
217      *                                  standard deviation is negative.
218      */
219     public BeaconWithPowerAndLocated2D(
220             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
221             final Double transmittedPowerStandardDeviation, final Point2D position) {
222         super(identifiers, transmittedPower, frequency, transmittedPowerStandardDeviation, position);
223     }
224 
225     /**
226      * Constructor.
227      *
228      * @param identifiers                       list of the multipart identifiers of the beacon.
229      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
230      * @param frequency                         frequency used by this Beacon.
231      * @param bluetoothAddress                  the bluetooth mac address.
232      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
233      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
234      * @param serviceUuid                       a 32 bit service uuid for the beacon.
235      * @param bluetoothName                     the bluetooth device name.
236      * @param transmittedPowerStandardDeviation transmitted power standard deviation.
237      * @param position                          position where beacon is located.
238      * @throws IllegalArgumentException if either identifiers or position are null or
239      *                                  standard deviation is negative.
240      */
241     public BeaconWithPowerAndLocated2D(
242             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
243             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
244             final String bluetoothName, final Double transmittedPowerStandardDeviation, final Point2D position) {
245         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
246                 bluetoothName, transmittedPowerStandardDeviation, position);
247     }
248 
249     /**
250      * Constructor.
251      *
252      * @param identifiers        list of the multipart identifiers of the beacon.
253      * @param transmittedPower   calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
254      * @param frequency          frequency used by this Beacon.
255      * @param bluetoothAddress   the bluetooth mac address.
256      * @param beaconTypeCode     the two byte value indicating the type of beacon.
257      * @param manufacturer       a two byte code indicating the beacon manufacturer.
258      * @param serviceUuid        a 32 bit service uuid for the beacon.
259      * @param bluetoothName      the bluetooth device name.
260      * @param position           position where beacon is located.
261      * @param positionCovariance covariance of inhomogeneous coordinates of current
262      *                           position (if available).
263      * @throws IllegalArgumentException if either identifiers or position are null or
264      *                                  covariance has invalid size.
265      */
266     public BeaconWithPowerAndLocated2D(
267             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
268             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
269             final String bluetoothName, final Point2D position, final Matrix positionCovariance) {
270         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
271                 bluetoothName, position, positionCovariance);
272     }
273 
274     /**
275      * Constructor.
276      *
277      * @param identifiers                       list of the multipart identifiers of the beacon.
278      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
279      * @param frequency                         frequency used by this Beacon.
280      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
281      * @param position                          position where beacon is located.
282      * @param positionCovariance                covariance of inhomogeneous coordinates of current
283      *                                          position (if available).
284      * @throws IllegalArgumentException if either identifiers or position are null,
285      *                                  covariance has invalid size or standard deviation is negative.
286      */
287     public BeaconWithPowerAndLocated2D(
288             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
289             final Double transmittedPowerStandardDeviation, final Point2D position, final Matrix positionCovariance) {
290         super(identifiers, transmittedPower, frequency, transmittedPowerStandardDeviation, position,
291                 positionCovariance);
292     }
293 
294     /**
295      * Constructor.
296      *
297      * @param identifiers                       list of the multipart identifiers of the beacon.
298      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
299      * @param frequency                         frequency used by this Beacon.
300      * @param bluetoothAddress                  the bluetooth mac address.
301      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
302      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
303      * @param serviceUuid                       a 32 bit service uuid for the beacon.
304      * @param bluetoothName                     the bluetooth device name.
305      * @param transmittedPowerStandardDeviation transmitted power standard deviation.
306      * @param position                          position where beacon is located.
307      * @param positionCovariance                covariance of inhomogeneous coordinates of current
308      *                                          position (if available).
309      * @throws IllegalArgumentException if either identifiers or position are null,
310      *                                  covariance has invalid size or standard deviation is negative.
311      */
312     public BeaconWithPowerAndLocated2D(
313             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
314             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
315             final String bluetoothName, final Double transmittedPowerStandardDeviation, final Point2D position,
316             final Matrix positionCovariance) {
317         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
318                 bluetoothName, transmittedPowerStandardDeviation, position, positionCovariance);
319     }
320 
321     /**
322      * Constructor.
323      *
324      * @param identifiers      list of the multipart identifiers of the beacon.
325      * @param transmittedPower calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
326      * @param pathLossExponent path loss exponent. By default, this is 2.0.
327      * @param position         position where beacon is located.
328      * @throws IllegalArgumentException if either identifiers or position are null.
329      */
330     public BeaconWithPowerAndLocated2D(
331             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double pathLossExponent,
332             final Point2D position) {
333         super(identifiers, transmittedPower, pathLossExponent, position);
334     }
335 
336     /**
337      * Constructor.
338      *
339      * @param identifiers      list of the multipart identifiers of the beacon.
340      * @param transmittedPower calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
341      * @param bluetoothAddress the bluetooth mac address.
342      * @param beaconTypeCode   the two byte value indicating the type of beacon.
343      * @param manufacturer     a two byte code indicating the beacon manufacturer.
344      * @param serviceUuid      a 32 bit service uuid for the beacon.
345      * @param bluetoothName    the bluetooth device name.
346      * @param pathLossExponent path loss exponent. By default, this is 2.0.
347      * @param position         position where beacon is located.
348      * @throws IllegalArgumentException if either identifiers or position are null.
349      */
350     public BeaconWithPowerAndLocated2D(
351             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
352             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
353             final double pathLossExponent, final Point2D position) {
354         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid, bluetoothName,
355                 pathLossExponent, position);
356     }
357 
358     /**
359      * Constructor.
360      *
361      * @param identifiers                       list of the multipart identifiers of the beacon.
362      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
363      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
364      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
365      * @param position                          position where beacon is located.
366      * @throws IllegalArgumentException if either identifiers or position are null or
367      *                                  standard deviation is negative.
368      */
369     public BeaconWithPowerAndLocated2D(
370             final List<BeaconIdentifier> identifiers, final double transmittedPower,
371             final Double transmittedPowerStandardDeviation, final double pathLossExponent, final Point2D position) {
372         super(identifiers, transmittedPower, transmittedPowerStandardDeviation, pathLossExponent, position);
373     }
374 
375     /**
376      * Constructor.
377      *
378      * @param identifiers                       list of the multipart identifiers of the beacon.
379      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
380      * @param bluetoothAddress                  the bluetooth mac address.
381      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
382      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
383      * @param serviceUuid                       a 32 bit service uuid for the beacon.
384      * @param bluetoothName                     the bluetooth device name.
385      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
386      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
387      * @param position                          position where beacon is located.
388      * @throws IllegalArgumentException if either identifiers or position are null or
389      *                                  standard deviation is negative.
390      */
391     public BeaconWithPowerAndLocated2D(
392             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
393             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
394             final double pathLossExponent, final Double transmittedPowerStandardDeviation, final Point2D position) {
395         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
396                 bluetoothName, pathLossExponent, transmittedPowerStandardDeviation, position);
397     }
398 
399     /**
400      * Constructor.
401      *
402      * @param identifiers        list of the multipart identifiers of the beacon.
403      * @param transmittedPower   calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
404      * @param pathLossExponent   path loss exponent. By default, this is 2.0.
405      * @param position           position where beacon is located.
406      * @param positionCovariance covariance of inhomogeneous coordinates of current
407      *                           position (if available).
408      * @throws IllegalArgumentException if either identifiers or position are null or
409      *                                  covariance has invalid size.
410      */
411     public BeaconWithPowerAndLocated2D(
412             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double pathLossExponent,
413             final Point2D position, final Matrix positionCovariance) {
414         super(identifiers, transmittedPower, pathLossExponent, position, positionCovariance);
415     }
416 
417     /**
418      * Constructor.
419      *
420      * @param identifiers        list of the multipart identifiers of the beacon.
421      * @param transmittedPower   calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
422      * @param bluetoothAddress   the bluetooth mac address.
423      * @param beaconTypeCode     the two byte value indicating the type of beacon.
424      * @param manufacturer       a two byte code indicating the beacon manufacturer.
425      * @param serviceUuid        a 32 bit service uuid for the beacon.
426      * @param bluetoothName      the bluetooth device name.
427      * @param pathLossExponent   path loss exponent. By default, this is 2.0.
428      * @param position           position where beacon is located.
429      * @param positionCovariance covariance of inhomogeneous coordinates of current
430      *                           position (if available).
431      * @throws IllegalArgumentException if either identifiers or position are null or
432      *                                  covariance has invalid size.
433      */
434     public BeaconWithPowerAndLocated2D(
435             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
436             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
437             final double pathLossExponent, final Point2D position, final Matrix positionCovariance) {
438         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid, bluetoothName,
439                 pathLossExponent, position, positionCovariance);
440     }
441 
442     /**
443      * Constructor.
444      *
445      * @param identifiers                       list of the multipart identifiers of the beacon.
446      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
447      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
448      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
449      * @param position                          position where beacon is located.
450      * @param positionCovariance                covariance of inhomogeneous coordinates of current
451      *                                          position (if available).
452      * @throws IllegalArgumentException if either identifiers or position are null,
453      *                                  covariance has invalid size or standard deviation is negative.
454      */
455     public BeaconWithPowerAndLocated2D(
456             final List<BeaconIdentifier> identifiers, final double transmittedPower,
457             final Double transmittedPowerStandardDeviation, final double pathLossExponent, final Point2D position,
458             final Matrix positionCovariance) {
459         super(identifiers, transmittedPower, transmittedPowerStandardDeviation, pathLossExponent, position,
460                 positionCovariance);
461     }
462 
463     /**
464      * Constructor.
465      *
466      * @param identifiers                       list of the multipart identifiers of the beacon.
467      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
468      * @param bluetoothAddress                  the bluetooth mac address.
469      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
470      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
471      * @param serviceUuid                       a 32 bit service uuid for the beacon.
472      * @param bluetoothName                     the bluetooth device name.
473      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
474      * @param transmittedPowerStandardDeviation transmitted power standard deviation.
475      * @param position                          position where beacon is located.
476      * @param positionCovariance                covariance of inhomogeneous coordinates of current
477      *                                          position (if available).
478      * @throws IllegalArgumentException if either identifiers or position are null,
479      *                                  covariance has invalid size or standard deviation is negative.
480      */
481     public BeaconWithPowerAndLocated2D(
482             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
483             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
484             final double pathLossExponent, final Double transmittedPowerStandardDeviation, final Point2D position,
485             final Matrix positionCovariance) {
486         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
487                 bluetoothName, pathLossExponent, transmittedPowerStandardDeviation, position, positionCovariance);
488     }
489 
490     /**
491      * Constructor.
492      *
493      * @param identifiers      list of the multipart identifiers of the beacon.
494      * @param transmittedPower calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
495      * @param frequency        frequency used by this Beacon.
496      * @param bluetoothAddress the bluetooth mac address.
497      * @param beaconTypeCode   the two byte value indicating the type of beacon.
498      * @param manufacturer     a two byte code indicating the beacon manufacturer.
499      * @param serviceUuid      a 32 bit service uuid for the beacon.
500      * @param bluetoothName    the bluetooth device name.
501      * @param pathLossExponent path loss exponent. By default, this is 2.0.
502      * @param position         position where beacon is located.
503      * @throws IllegalArgumentException if either identifiers or position are null.
504      */
505     public BeaconWithPowerAndLocated2D(
506             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
507             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
508             final String bluetoothName, final double pathLossExponent, final Point2D position) {
509         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
510                 bluetoothName, pathLossExponent, position);
511     }
512 
513     /**
514      * Constructor.
515      *
516      * @param identifiers                       list of the multipart identifiers of the beacon.
517      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
518      * @param frequency                         frequency used by this Beacon.
519      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
520      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
521      * @param position                          position where beacon is located.
522      * @throws IllegalArgumentException if either identifiers or position are null or
523      *                                  standard deviation is negative.
524      */
525     public BeaconWithPowerAndLocated2D(
526             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
527             final double pathLossExponent, final Double transmittedPowerStandardDeviation, final Point2D position) {
528         super(identifiers, transmittedPower, frequency, pathLossExponent, transmittedPowerStandardDeviation, position);
529     }
530 
531     /**
532      * Constructor.
533      *
534      * @param identifiers                       list of the multipart identifiers of the beacon.
535      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
536      * @param frequency                         frequency used by this Beacon.
537      * @param bluetoothAddress                  the bluetooth mac address.
538      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
539      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
540      * @param serviceUuid                       a 32 bit service uuid for the beacon.
541      * @param bluetoothName                     the bluetooth device name.
542      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
543      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
544      * @param position                          position where beacon is located.
545      * @throws IllegalArgumentException if either identifiers or position are null or
546      *                                  standard deviation is negative.
547      */
548     public BeaconWithPowerAndLocated2D(
549             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
550             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
551             final String bluetoothName, final double pathLossExponent, final Double transmittedPowerStandardDeviation,
552             final Point2D position) {
553         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
554                 bluetoothName, pathLossExponent, transmittedPowerStandardDeviation, position);
555     }
556 
557     /**
558      * Constructor.
559      *
560      * @param identifiers        list of the multipart identifiers of the beacon.
561      * @param transmittedPower   calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
562      * @param frequency          frequency used by this Beacon.
563      * @param bluetoothAddress   the bluetooth mac address.
564      * @param beaconTypeCode     the two byte value indicating the type of beacon.
565      * @param manufacturer       a two byte code indicating the beacon manufacturer.
566      * @param serviceUuid        a 32 bit service uuid for the beacon.
567      * @param bluetoothName      the bluetooth device name.
568      * @param pathLossExponent   path loss exponent. By default, this is 2.0.
569      * @param position           position where beacon is located.
570      * @param positionCovariance covariance of inhomogeneous coordinates of current
571      *                           position (if available).
572      * @throws IllegalArgumentException if either identifiers or position are null or
573      *                                  covariance has invalid size.
574      */
575     public BeaconWithPowerAndLocated2D(
576             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
577             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
578             final String bluetoothName, final double pathLossExponent, final Point2D position,
579             final Matrix positionCovariance) {
580         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
581                 bluetoothName, pathLossExponent, position, positionCovariance);
582     }
583 
584     /**
585      * Constructor.
586      *
587      * @param identifiers                       list of the multipart identifiers of the beacon.
588      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
589      * @param frequency                         frequency used by this Beacon.
590      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
591      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
592      * @param position                          position where beacon is located.
593      * @param positionCovariance                covariance of inhomogeneous coordinates of current
594      *                                          position (if available).
595      * @throws IllegalArgumentException if either identifiers or position are null,
596      *                                  covariance has invalid size or standard deviation is negative.
597      */
598     public BeaconWithPowerAndLocated2D(
599             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
600             final double pathLossExponent, final Double transmittedPowerStandardDeviation, final Point2D position,
601             final Matrix positionCovariance) {
602         super(identifiers, transmittedPower, frequency, pathLossExponent, transmittedPowerStandardDeviation, position,
603                 positionCovariance);
604     }
605 
606     /**
607      * Constructor.
608      *
609      * @param identifiers                       list of the multipart identifiers of the beacon.
610      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
611      * @param frequency                         frequency used by this Beacon.
612      * @param bluetoothAddress                  the bluetooth mac address.
613      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
614      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
615      * @param serviceUuid                       a 32 bit service uuid for the beacon.
616      * @param bluetoothName                     the bluetooth device name.
617      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
618      * @param transmittedPowerStandardDeviation transmitted power standard deviation.
619      * @param position                          position where beacon is located.
620      * @param positionCovariance                covariance of inhomogeneous coordinates of current
621      *                                          position (if available).
622      * @throws IllegalArgumentException if either identifiers or position are null,
623      *                                  covariance has invalid size or standard deviation is negative.
624      */
625     public BeaconWithPowerAndLocated2D(
626             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
627             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
628             final String bluetoothName, final double pathLossExponent, final Double transmittedPowerStandardDeviation,
629             final Point2D position, final Matrix positionCovariance) {
630         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
631                 bluetoothName, pathLossExponent, transmittedPowerStandardDeviation, position, positionCovariance);
632     }
633 
634     /**
635      * Constructor.
636      *
637      * @param identifiers                       list of the multipart identifiers of the beacon.
638      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
639      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
640      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
641      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
642      *                                          unknown.
643      * @param position                          position where beacon is located.
644      * @throws IllegalArgumentException if either identifiers or position are null or
645      *                                  any standard deviation is negative.
646      */
647     public BeaconWithPowerAndLocated2D(
648             final List<BeaconIdentifier> identifiers, final double transmittedPower,
649             final Double transmittedPowerStandardDeviation, final double pathLossExponent,
650             final Double pathLossExponentStandardDeviation, final Point2D position) {
651         super(identifiers, transmittedPower, transmittedPowerStandardDeviation, pathLossExponent,
652                 pathLossExponentStandardDeviation, position);
653     }
654 
655     /**
656      * Constructor.
657      *
658      * @param identifiers                       list of the multipart identifiers of the beacon.
659      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
660      * @param bluetoothAddress                  the bluetooth mac address.
661      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
662      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
663      * @param serviceUuid                       a 32 bit service uuid for the beacon.
664      * @param bluetoothName                     the bluetooth device name.
665      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
666      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
667      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
668      *                                          unknown.
669      * @param position                          position where beacon is located.
670      * @throws IllegalArgumentException if either identifiers or position are null or
671      *                                  any standard deviation is negative.
672      */
673     public BeaconWithPowerAndLocated2D(
674             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
675             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
676             final double pathLossExponent, final Double transmittedPowerStandardDeviation,
677             final Double pathLossExponentStandardDeviation, final Point2D position) {
678         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
679                 bluetoothName, pathLossExponent, transmittedPowerStandardDeviation, pathLossExponentStandardDeviation,
680                 position);
681     }
682 
683     /**
684      * Constructor.
685      *
686      * @param identifiers                       list of the multipart identifiers of the beacon.
687      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
688      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
689      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
690      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
691      *                                          unknown.
692      * @param position                          position where beacon is located.
693      * @param positionCovariance                covariance of inhomogeneous coordinates of current
694      *                                          position (if available).
695      * @throws IllegalArgumentException if either identifiers or position are null,
696      *                                  covariance has invalid size or any standard deviation is negative.
697      */
698     public BeaconWithPowerAndLocated2D(
699             final List<BeaconIdentifier> identifiers, final double transmittedPower,
700             final Double transmittedPowerStandardDeviation, final double pathLossExponent,
701             final Double pathLossExponentStandardDeviation, final Point2D position, final Matrix positionCovariance) {
702         super(identifiers, transmittedPower, transmittedPowerStandardDeviation, pathLossExponent,
703                 pathLossExponentStandardDeviation, position, positionCovariance);
704     }
705 
706     /**
707      * Constructor.
708      *
709      * @param identifiers                       list of the multipart identifiers of the beacon.
710      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
711      * @param bluetoothAddress                  the bluetooth mac address.
712      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
713      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
714      * @param serviceUuid                       a 32 bit service uuid for the beacon.
715      * @param bluetoothName                     the bluetooth device name.
716      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
717      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value or null
718      *                                          if unknown.
719      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
720      *                                          unknown.
721      * @param position                          position where beacon is located.
722      * @param positionCovariance                covariance of inhomogeneous coordinates of current
723      *                                          position (if available).
724      * @throws IllegalArgumentException if either identifiers or position are null,
725      *                                  covariance has invalid size or any standard deviation is negative.
726      */
727     public BeaconWithPowerAndLocated2D(
728             final List<BeaconIdentifier> identifiers, final double transmittedPower, final String bluetoothAddress,
729             final int beaconTypeCode, final int manufacturer, final int serviceUuid, final String bluetoothName,
730             final double pathLossExponent, final Double transmittedPowerStandardDeviation,
731             final Double pathLossExponentStandardDeviation, final Point2D position, final Matrix positionCovariance) {
732         super(identifiers, transmittedPower, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid, bluetoothName,
733                 pathLossExponent, transmittedPowerStandardDeviation, pathLossExponentStandardDeviation, position,
734                 positionCovariance);
735     }
736 
737     /**
738      * Constructor.
739      *
740      * @param identifiers                       list of the multipart identifiers of the beacon.
741      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
742      * @param frequency                         frequency used by this Beacon.
743      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
744      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
745      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
746      *                                          unknown.
747      * @param position                          position where beacon is located.
748      * @throws IllegalArgumentException if either identifiers or position are null or
749      *                                  any standard deviation is negative.
750      */
751     public BeaconWithPowerAndLocated2D(
752             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
753             final double pathLossExponent, final Double transmittedPowerStandardDeviation,
754             final Double pathLossExponentStandardDeviation, final Point2D position) {
755         super(identifiers, transmittedPower, frequency, pathLossExponent, transmittedPowerStandardDeviation,
756                 pathLossExponentStandardDeviation, position);
757     }
758 
759     /**
760      * Constructor.
761      *
762      * @param identifiers                       list of the multipart identifiers of the beacon.
763      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
764      * @param frequency                         frequency used by this Beacon.
765      * @param bluetoothAddress                  the bluetooth mac address.
766      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
767      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
768      * @param serviceUuid                       a 32 bit service uuid for the beacon.
769      * @param bluetoothName                     the bluetooth device name.
770      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
771      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
772      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
773      *                                          unknown.
774      * @param position                          position where beacon is located.
775      * @throws IllegalArgumentException if either identifiers or position are null or
776      *                                  any standard deviation is negative.
777      */
778     public BeaconWithPowerAndLocated2D(
779             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
780             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
781             final String bluetoothName, final double pathLossExponent, final Double transmittedPowerStandardDeviation,
782             final Double pathLossExponentStandardDeviation, final Point2D position) {
783         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
784                 bluetoothName, pathLossExponent, transmittedPowerStandardDeviation, pathLossExponentStandardDeviation,
785                 position);
786     }
787 
788     /**
789      * Constructor.
790      *
791      * @param identifiers                       list of the multipart identifiers of the beacon.
792      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
793      * @param frequency                         frequency used by this Beacon.
794      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
795      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value.
796      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
797      *                                          unknown.
798      * @param position                          position where beacon is located.
799      * @param positionCovariance                covariance of inhomogeneous coordinates of current
800      *                                          position (if available).
801      * @throws IllegalArgumentException if either identifiers or position are null,
802      *                                  covariance has invalid size or any standard deviation is negative.
803      */
804     public BeaconWithPowerAndLocated2D(
805             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
806             final double pathLossExponent, final Double transmittedPowerStandardDeviation,
807             final Double pathLossExponentStandardDeviation, final Point2D position, final Matrix positionCovariance) {
808         super(identifiers, transmittedPower, frequency, pathLossExponent, transmittedPowerStandardDeviation,
809                 pathLossExponentStandardDeviation, position, positionCovariance);
810     }
811 
812     /**
813      * Constructor.
814      *
815      * @param identifiers                       list of the multipart identifiers of the beacon.
816      * @param transmittedPower                  calibrated measured Tx power of the Beacon in RSSI (expressed in dBm's).
817      * @param frequency                         frequency used by this Beacon.
818      * @param bluetoothAddress                  the bluetooth mac address.
819      * @param beaconTypeCode                    the two byte value indicating the type of beacon.
820      * @param manufacturer                      a two byte code indicating the beacon manufacturer.
821      * @param serviceUuid                       a 32 bit service uuid for the beacon.
822      * @param bluetoothName                     the bluetooth device name.
823      * @param pathLossExponent                  path loss exponent. By default, this is 2.0.
824      * @param transmittedPowerStandardDeviation standard deviation of transmitted power value or null
825      *                                          if unknown.
826      * @param pathLossExponentStandardDeviation standard deviation of path loss exponent or null if
827      *                                          unknown.
828      * @param position                          position where beacon is located.
829      * @param positionCovariance                covariance of inhomogeneous coordinates of current
830      *                                          position (if available).
831      * @throws IllegalArgumentException if either identifiers or position are null,
832      *                                  covariance has invalid size or any standard deviation is negative.
833      */
834     public BeaconWithPowerAndLocated2D(
835             final List<BeaconIdentifier> identifiers, final double transmittedPower, final double frequency,
836             final String bluetoothAddress, final int beaconTypeCode, final int manufacturer, final int serviceUuid,
837             final String bluetoothName, final double pathLossExponent, final Double transmittedPowerStandardDeviation,
838             final Double pathLossExponentStandardDeviation, final Point2D position, final Matrix positionCovariance) {
839         super(identifiers, transmittedPower, frequency, bluetoothAddress, beaconTypeCode, manufacturer, serviceUuid,
840                 bluetoothName, pathLossExponent, transmittedPowerStandardDeviation, pathLossExponentStandardDeviation,
841                 position, positionCovariance);
842     }
843 
844     /**
845      * Empty constructor.
846      */
847     protected BeaconWithPowerAndLocated2D() {
848         super();
849     }
850 }