1 /* 2 * Copyright (C) 2017 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 android.location.cts.asn1.supl2.supl_start; 18 19 /* 20 */ 21 22 23 // 24 // 25 import android.location.cts.asn1.base.Asn1Boolean; 26 import android.location.cts.asn1.base.Asn1Null; 27 import android.location.cts.asn1.base.Asn1Object; 28 import android.location.cts.asn1.base.Asn1Sequence; 29 import android.location.cts.asn1.base.Asn1Tag; 30 import android.location.cts.asn1.base.BitStream; 31 import android.location.cts.asn1.base.BitStreamReader; 32 import android.location.cts.asn1.base.SequenceComponent; 33 import android.location.cts.asn1.supl2.ulp_version_2_parameter_extensions.Ver2_PosTechnology_extension; 34 import com.google.common.collect.ImmutableList; 35 import java.util.Collection; 36 import javax.annotation.Nullable; 37 38 39 /** 40 */ 41 public class PosTechnology extends Asn1Sequence { 42 // 43 44 private static final Asn1Tag TAG_PosTechnology 45 = Asn1Tag.fromClassAndNumber(-1, -1); 46 PosTechnology()47 public PosTechnology() { 48 super(); 49 } 50 51 @Override 52 @Nullable getTag()53 protected Asn1Tag getTag() { 54 return TAG_PosTechnology; 55 } 56 57 @Override isTagImplicit()58 protected boolean isTagImplicit() { 59 return true; 60 } 61 getPossibleFirstTags()62 public static Collection<Asn1Tag> getPossibleFirstTags() { 63 if (TAG_PosTechnology != null) { 64 return ImmutableList.of(TAG_PosTechnology); 65 } else { 66 return Asn1Sequence.getPossibleFirstTags(); 67 } 68 } 69 70 /** 71 * Creates a new PosTechnology from encoded stream. 72 */ fromPerUnaligned(byte[] encodedBytes)73 public static PosTechnology fromPerUnaligned(byte[] encodedBytes) { 74 PosTechnology result = new PosTechnology(); 75 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 76 return result; 77 } 78 79 /** 80 * Creates a new PosTechnology from encoded stream. 81 */ fromPerAligned(byte[] encodedBytes)82 public static PosTechnology fromPerAligned(byte[] encodedBytes) { 83 PosTechnology result = new PosTechnology(); 84 result.decodePerAligned(new BitStreamReader(encodedBytes)); 85 return result; 86 } 87 88 89 isExtensible()90 @Override protected boolean isExtensible() { 91 return true; 92 } 93 containsExtensionValues()94 @Override public boolean containsExtensionValues() { 95 for (SequenceComponent extensionComponent : getExtensionComponents()) { 96 if (extensionComponent.isExplicitlySet()) return true; 97 } 98 return false; 99 } 100 101 102 private PosTechnology.agpsSETassistedType agpsSETassisted_; getAgpsSETassisted()103 public PosTechnology.agpsSETassistedType getAgpsSETassisted() { 104 return agpsSETassisted_; 105 } 106 /** 107 * @throws ClassCastException if value is not a PosTechnology.agpsSETassistedType 108 */ setAgpsSETassisted(Asn1Object value)109 public void setAgpsSETassisted(Asn1Object value) { 110 this.agpsSETassisted_ = (PosTechnology.agpsSETassistedType) value; 111 } setAgpsSETassistedToNewInstance()112 public PosTechnology.agpsSETassistedType setAgpsSETassistedToNewInstance() { 113 agpsSETassisted_ = new PosTechnology.agpsSETassistedType(); 114 return agpsSETassisted_; 115 } 116 117 private PosTechnology.agpsSETBasedType agpsSETBased_; getAgpsSETBased()118 public PosTechnology.agpsSETBasedType getAgpsSETBased() { 119 return agpsSETBased_; 120 } 121 /** 122 * @throws ClassCastException if value is not a PosTechnology.agpsSETBasedType 123 */ setAgpsSETBased(Asn1Object value)124 public void setAgpsSETBased(Asn1Object value) { 125 this.agpsSETBased_ = (PosTechnology.agpsSETBasedType) value; 126 } setAgpsSETBasedToNewInstance()127 public PosTechnology.agpsSETBasedType setAgpsSETBasedToNewInstance() { 128 agpsSETBased_ = new PosTechnology.agpsSETBasedType(); 129 return agpsSETBased_; 130 } 131 132 private PosTechnology.autonomousGPSType autonomousGPS_; getAutonomousGPS()133 public PosTechnology.autonomousGPSType getAutonomousGPS() { 134 return autonomousGPS_; 135 } 136 /** 137 * @throws ClassCastException if value is not a PosTechnology.autonomousGPSType 138 */ setAutonomousGPS(Asn1Object value)139 public void setAutonomousGPS(Asn1Object value) { 140 this.autonomousGPS_ = (PosTechnology.autonomousGPSType) value; 141 } setAutonomousGPSToNewInstance()142 public PosTechnology.autonomousGPSType setAutonomousGPSToNewInstance() { 143 autonomousGPS_ = new PosTechnology.autonomousGPSType(); 144 return autonomousGPS_; 145 } 146 147 private PosTechnology.aFLTType aFLT_; getAFLT()148 public PosTechnology.aFLTType getAFLT() { 149 return aFLT_; 150 } 151 /** 152 * @throws ClassCastException if value is not a PosTechnology.aFLTType 153 */ setAFLT(Asn1Object value)154 public void setAFLT(Asn1Object value) { 155 this.aFLT_ = (PosTechnology.aFLTType) value; 156 } setAFLTToNewInstance()157 public PosTechnology.aFLTType setAFLTToNewInstance() { 158 aFLT_ = new PosTechnology.aFLTType(); 159 return aFLT_; 160 } 161 162 private PosTechnology.eCIDType eCID_; getECID()163 public PosTechnology.eCIDType getECID() { 164 return eCID_; 165 } 166 /** 167 * @throws ClassCastException if value is not a PosTechnology.eCIDType 168 */ setECID(Asn1Object value)169 public void setECID(Asn1Object value) { 170 this.eCID_ = (PosTechnology.eCIDType) value; 171 } setECIDToNewInstance()172 public PosTechnology.eCIDType setECIDToNewInstance() { 173 eCID_ = new PosTechnology.eCIDType(); 174 return eCID_; 175 } 176 177 private PosTechnology.eOTDType eOTD_; getEOTD()178 public PosTechnology.eOTDType getEOTD() { 179 return eOTD_; 180 } 181 /** 182 * @throws ClassCastException if value is not a PosTechnology.eOTDType 183 */ setEOTD(Asn1Object value)184 public void setEOTD(Asn1Object value) { 185 this.eOTD_ = (PosTechnology.eOTDType) value; 186 } setEOTDToNewInstance()187 public PosTechnology.eOTDType setEOTDToNewInstance() { 188 eOTD_ = new PosTechnology.eOTDType(); 189 return eOTD_; 190 } 191 192 private PosTechnology.oTDOAType oTDOA_; getOTDOA()193 public PosTechnology.oTDOAType getOTDOA() { 194 return oTDOA_; 195 } 196 /** 197 * @throws ClassCastException if value is not a PosTechnology.oTDOAType 198 */ setOTDOA(Asn1Object value)199 public void setOTDOA(Asn1Object value) { 200 this.oTDOA_ = (PosTechnology.oTDOAType) value; 201 } setOTDOAToNewInstance()202 public PosTechnology.oTDOAType setOTDOAToNewInstance() { 203 oTDOA_ = new PosTechnology.oTDOAType(); 204 return oTDOA_; 205 } 206 207 208 209 private Ver2_PosTechnology_extension extensionVer2_PosTechnology_extension; getExtensionVer2_PosTechnology_extension()210 public Ver2_PosTechnology_extension getExtensionVer2_PosTechnology_extension() { 211 return extensionVer2_PosTechnology_extension; 212 } 213 /** 214 * @throws ClassCastException if value is not a Ver2_PosTechnology_extension 215 */ setExtensionVer2_PosTechnology_extension(Asn1Object value)216 public void setExtensionVer2_PosTechnology_extension(Asn1Object value) { 217 extensionVer2_PosTechnology_extension = (Ver2_PosTechnology_extension) value; 218 } setExtensionVer2_PosTechnology_extensionToNewInstance()219 public void setExtensionVer2_PosTechnology_extensionToNewInstance() { 220 extensionVer2_PosTechnology_extension = new Ver2_PosTechnology_extension(); 221 } 222 223 224 225 getComponents()226 @Override public Iterable<? extends SequenceComponent> getComponents() { 227 ImmutableList.Builder<SequenceComponent> builder = ImmutableList.builder(); 228 229 builder.add(new SequenceComponent() { 230 Asn1Tag tag = Asn1Tag.fromClassAndNumber(2, 0); 231 232 @Override public boolean isExplicitlySet() { 233 return getAgpsSETassisted() != null; 234 } 235 236 @Override public boolean hasDefaultValue() { 237 return false; 238 } 239 240 @Override public boolean isOptional() { 241 return false; 242 } 243 244 @Override public Asn1Object getComponentValue() { 245 return getAgpsSETassisted(); 246 } 247 248 @Override public void setToNewInstance() { 249 setAgpsSETassistedToNewInstance(); 250 } 251 252 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 253 return tag == null ? PosTechnology.agpsSETassistedType.getPossibleFirstTags() : ImmutableList.of(tag); 254 } 255 256 @Override 257 public Asn1Tag getTag() { 258 return tag; 259 } 260 261 @Override 262 public boolean isImplicitTagging() { 263 return true; 264 } 265 266 @Override public String toIndentedString(String indent) { 267 return "agpsSETassisted : " 268 + getAgpsSETassisted().toIndentedString(indent); 269 } 270 }); 271 272 builder.add(new SequenceComponent() { 273 Asn1Tag tag = Asn1Tag.fromClassAndNumber(2, 1); 274 275 @Override public boolean isExplicitlySet() { 276 return getAgpsSETBased() != null; 277 } 278 279 @Override public boolean hasDefaultValue() { 280 return false; 281 } 282 283 @Override public boolean isOptional() { 284 return false; 285 } 286 287 @Override public Asn1Object getComponentValue() { 288 return getAgpsSETBased(); 289 } 290 291 @Override public void setToNewInstance() { 292 setAgpsSETBasedToNewInstance(); 293 } 294 295 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 296 return tag == null ? PosTechnology.agpsSETBasedType.getPossibleFirstTags() : ImmutableList.of(tag); 297 } 298 299 @Override 300 public Asn1Tag getTag() { 301 return tag; 302 } 303 304 @Override 305 public boolean isImplicitTagging() { 306 return true; 307 } 308 309 @Override public String toIndentedString(String indent) { 310 return "agpsSETBased : " 311 + getAgpsSETBased().toIndentedString(indent); 312 } 313 }); 314 315 builder.add(new SequenceComponent() { 316 Asn1Tag tag = Asn1Tag.fromClassAndNumber(2, 2); 317 318 @Override public boolean isExplicitlySet() { 319 return getAutonomousGPS() != null; 320 } 321 322 @Override public boolean hasDefaultValue() { 323 return false; 324 } 325 326 @Override public boolean isOptional() { 327 return false; 328 } 329 330 @Override public Asn1Object getComponentValue() { 331 return getAutonomousGPS(); 332 } 333 334 @Override public void setToNewInstance() { 335 setAutonomousGPSToNewInstance(); 336 } 337 338 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 339 return tag == null ? PosTechnology.autonomousGPSType.getPossibleFirstTags() : ImmutableList.of(tag); 340 } 341 342 @Override 343 public Asn1Tag getTag() { 344 return tag; 345 } 346 347 @Override 348 public boolean isImplicitTagging() { 349 return true; 350 } 351 352 @Override public String toIndentedString(String indent) { 353 return "autonomousGPS : " 354 + getAutonomousGPS().toIndentedString(indent); 355 } 356 }); 357 358 builder.add(new SequenceComponent() { 359 Asn1Tag tag = Asn1Tag.fromClassAndNumber(2, 3); 360 361 @Override public boolean isExplicitlySet() { 362 return getAFLT() != null; 363 } 364 365 @Override public boolean hasDefaultValue() { 366 return false; 367 } 368 369 @Override public boolean isOptional() { 370 return false; 371 } 372 373 @Override public Asn1Object getComponentValue() { 374 return getAFLT(); 375 } 376 377 @Override public void setToNewInstance() { 378 setAFLTToNewInstance(); 379 } 380 381 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 382 return tag == null ? PosTechnology.aFLTType.getPossibleFirstTags() : ImmutableList.of(tag); 383 } 384 385 @Override 386 public Asn1Tag getTag() { 387 return tag; 388 } 389 390 @Override 391 public boolean isImplicitTagging() { 392 return true; 393 } 394 395 @Override public String toIndentedString(String indent) { 396 return "aFLT : " 397 + getAFLT().toIndentedString(indent); 398 } 399 }); 400 401 builder.add(new SequenceComponent() { 402 Asn1Tag tag = Asn1Tag.fromClassAndNumber(2, 4); 403 404 @Override public boolean isExplicitlySet() { 405 return getECID() != null; 406 } 407 408 @Override public boolean hasDefaultValue() { 409 return false; 410 } 411 412 @Override public boolean isOptional() { 413 return false; 414 } 415 416 @Override public Asn1Object getComponentValue() { 417 return getECID(); 418 } 419 420 @Override public void setToNewInstance() { 421 setECIDToNewInstance(); 422 } 423 424 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 425 return tag == null ? PosTechnology.eCIDType.getPossibleFirstTags() : ImmutableList.of(tag); 426 } 427 428 @Override 429 public Asn1Tag getTag() { 430 return tag; 431 } 432 433 @Override 434 public boolean isImplicitTagging() { 435 return true; 436 } 437 438 @Override public String toIndentedString(String indent) { 439 return "eCID : " 440 + getECID().toIndentedString(indent); 441 } 442 }); 443 444 builder.add(new SequenceComponent() { 445 Asn1Tag tag = Asn1Tag.fromClassAndNumber(2, 5); 446 447 @Override public boolean isExplicitlySet() { 448 return getEOTD() != null; 449 } 450 451 @Override public boolean hasDefaultValue() { 452 return false; 453 } 454 455 @Override public boolean isOptional() { 456 return false; 457 } 458 459 @Override public Asn1Object getComponentValue() { 460 return getEOTD(); 461 } 462 463 @Override public void setToNewInstance() { 464 setEOTDToNewInstance(); 465 } 466 467 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 468 return tag == null ? PosTechnology.eOTDType.getPossibleFirstTags() : ImmutableList.of(tag); 469 } 470 471 @Override 472 public Asn1Tag getTag() { 473 return tag; 474 } 475 476 @Override 477 public boolean isImplicitTagging() { 478 return true; 479 } 480 481 @Override public String toIndentedString(String indent) { 482 return "eOTD : " 483 + getEOTD().toIndentedString(indent); 484 } 485 }); 486 487 builder.add(new SequenceComponent() { 488 Asn1Tag tag = Asn1Tag.fromClassAndNumber(2, 6); 489 490 @Override public boolean isExplicitlySet() { 491 return getOTDOA() != null; 492 } 493 494 @Override public boolean hasDefaultValue() { 495 return false; 496 } 497 498 @Override public boolean isOptional() { 499 return false; 500 } 501 502 @Override public Asn1Object getComponentValue() { 503 return getOTDOA(); 504 } 505 506 @Override public void setToNewInstance() { 507 setOTDOAToNewInstance(); 508 } 509 510 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 511 return tag == null ? PosTechnology.oTDOAType.getPossibleFirstTags() : ImmutableList.of(tag); 512 } 513 514 @Override 515 public Asn1Tag getTag() { 516 return tag; 517 } 518 519 @Override 520 public boolean isImplicitTagging() { 521 return true; 522 } 523 524 @Override public String toIndentedString(String indent) { 525 return "oTDOA : " 526 + getOTDOA().toIndentedString(indent); 527 } 528 }); 529 530 return builder.build(); 531 } 532 533 @Override public Iterable<? extends SequenceComponent> getExtensionComponents()534 getExtensionComponents() { 535 ImmutableList.Builder<SequenceComponent> builder = ImmutableList.builder(); 536 537 builder.add(new SequenceComponent() { 538 @Override public boolean isExplicitlySet() { 539 return getExtensionVer2_PosTechnology_extension() != null; 540 } 541 542 @Override public boolean hasDefaultValue() { 543 return false; 544 } 545 546 @Override public boolean isOptional() { 547 return true; 548 } 549 550 @Override public Asn1Object getComponentValue() { 551 return getExtensionVer2_PosTechnology_extension(); 552 } 553 554 @Override public void setToNewInstance() { 555 setExtensionVer2_PosTechnology_extensionToNewInstance(); 556 } 557 558 @Override public Collection<Asn1Tag> getPossibleFirstTags() { 559 throw new UnsupportedOperationException( 560 "BER decoding not supported for extension elements"); 561 } 562 563 @Override 564 public Asn1Tag getTag() { 565 throw new UnsupportedOperationException( 566 "BER is not supported for extension elements"); 567 } 568 569 @Override 570 public boolean isImplicitTagging() { 571 throw new UnsupportedOperationException( 572 "BER is not supported for extension elements"); 573 } 574 575 @Override public String toIndentedString(String indent) { 576 return "ver2_PosTechnology_extension : " 577 + getExtensionVer2_PosTechnology_extension().toIndentedString(indent); 578 } 579 }); 580 581 return builder.build(); 582 } 583 584 585 /* 586 */ 587 588 589 // 590 591 /** 592 */ 593 public static class agpsSETassistedType extends Asn1Boolean { 594 // 595 596 private static final Asn1Tag TAG_agpsSETassistedType 597 = Asn1Tag.fromClassAndNumber(-1, -1); 598 agpsSETassistedType()599 public agpsSETassistedType() { 600 super(); 601 } 602 603 @Override 604 @Nullable getTag()605 protected Asn1Tag getTag() { 606 return TAG_agpsSETassistedType; 607 } 608 609 @Override isTagImplicit()610 protected boolean isTagImplicit() { 611 return true; 612 } 613 getPossibleFirstTags()614 public static Collection<Asn1Tag> getPossibleFirstTags() { 615 if (TAG_agpsSETassistedType != null) { 616 return ImmutableList.of(TAG_agpsSETassistedType); 617 } else { 618 return Asn1Boolean.getPossibleFirstTags(); 619 } 620 } 621 622 /** 623 * Creates a new agpsSETassistedType from encoded stream. 624 */ fromPerUnaligned(byte[] encodedBytes)625 public static agpsSETassistedType fromPerUnaligned(byte[] encodedBytes) { 626 agpsSETassistedType result = new agpsSETassistedType(); 627 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 628 return result; 629 } 630 631 /** 632 * Creates a new agpsSETassistedType from encoded stream. 633 */ fromPerAligned(byte[] encodedBytes)634 public static agpsSETassistedType fromPerAligned(byte[] encodedBytes) { 635 agpsSETassistedType result = new agpsSETassistedType(); 636 result.decodePerAligned(new BitStreamReader(encodedBytes)); 637 return result; 638 } 639 encodePerUnaligned()640 @Override public Iterable<BitStream> encodePerUnaligned() { 641 return super.encodePerUnaligned(); 642 } 643 encodePerAligned()644 @Override public Iterable<BitStream> encodePerAligned() { 645 return super.encodePerAligned(); 646 } 647 decodePerUnaligned(BitStreamReader reader)648 @Override public void decodePerUnaligned(BitStreamReader reader) { 649 super.decodePerUnaligned(reader); 650 } 651 decodePerAligned(BitStreamReader reader)652 @Override public void decodePerAligned(BitStreamReader reader) { 653 super.decodePerAligned(reader); 654 } 655 toString()656 @Override public String toString() { 657 return toIndentedString(""); 658 } 659 toIndentedString(String indent)660 public String toIndentedString(String indent) { 661 return "agpsSETassistedType = " + getValue() + ";\n"; 662 } 663 } 664 665 666 /* 667 */ 668 669 670 // 671 672 /** 673 */ 674 public static class agpsSETBasedType extends Asn1Boolean { 675 // 676 677 private static final Asn1Tag TAG_agpsSETBasedType 678 = Asn1Tag.fromClassAndNumber(-1, -1); 679 agpsSETBasedType()680 public agpsSETBasedType() { 681 super(); 682 } 683 684 @Override 685 @Nullable getTag()686 protected Asn1Tag getTag() { 687 return TAG_agpsSETBasedType; 688 } 689 690 @Override isTagImplicit()691 protected boolean isTagImplicit() { 692 return true; 693 } 694 getPossibleFirstTags()695 public static Collection<Asn1Tag> getPossibleFirstTags() { 696 if (TAG_agpsSETBasedType != null) { 697 return ImmutableList.of(TAG_agpsSETBasedType); 698 } else { 699 return Asn1Boolean.getPossibleFirstTags(); 700 } 701 } 702 703 /** 704 * Creates a new agpsSETBasedType from encoded stream. 705 */ fromPerUnaligned(byte[] encodedBytes)706 public static agpsSETBasedType fromPerUnaligned(byte[] encodedBytes) { 707 agpsSETBasedType result = new agpsSETBasedType(); 708 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 709 return result; 710 } 711 712 /** 713 * Creates a new agpsSETBasedType from encoded stream. 714 */ fromPerAligned(byte[] encodedBytes)715 public static agpsSETBasedType fromPerAligned(byte[] encodedBytes) { 716 agpsSETBasedType result = new agpsSETBasedType(); 717 result.decodePerAligned(new BitStreamReader(encodedBytes)); 718 return result; 719 } 720 encodePerUnaligned()721 @Override public Iterable<BitStream> encodePerUnaligned() { 722 return super.encodePerUnaligned(); 723 } 724 encodePerAligned()725 @Override public Iterable<BitStream> encodePerAligned() { 726 return super.encodePerAligned(); 727 } 728 decodePerUnaligned(BitStreamReader reader)729 @Override public void decodePerUnaligned(BitStreamReader reader) { 730 super.decodePerUnaligned(reader); 731 } 732 decodePerAligned(BitStreamReader reader)733 @Override public void decodePerAligned(BitStreamReader reader) { 734 super.decodePerAligned(reader); 735 } 736 toString()737 @Override public String toString() { 738 return toIndentedString(""); 739 } 740 toIndentedString(String indent)741 public String toIndentedString(String indent) { 742 return "agpsSETBasedType = " + getValue() + ";\n"; 743 } 744 } 745 746 747 /* 748 */ 749 750 751 // 752 753 /** 754 */ 755 public static class autonomousGPSType extends Asn1Boolean { 756 // 757 758 private static final Asn1Tag TAG_autonomousGPSType 759 = Asn1Tag.fromClassAndNumber(-1, -1); 760 autonomousGPSType()761 public autonomousGPSType() { 762 super(); 763 } 764 765 @Override 766 @Nullable getTag()767 protected Asn1Tag getTag() { 768 return TAG_autonomousGPSType; 769 } 770 771 @Override isTagImplicit()772 protected boolean isTagImplicit() { 773 return true; 774 } 775 getPossibleFirstTags()776 public static Collection<Asn1Tag> getPossibleFirstTags() { 777 if (TAG_autonomousGPSType != null) { 778 return ImmutableList.of(TAG_autonomousGPSType); 779 } else { 780 return Asn1Boolean.getPossibleFirstTags(); 781 } 782 } 783 784 /** 785 * Creates a new autonomousGPSType from encoded stream. 786 */ fromPerUnaligned(byte[] encodedBytes)787 public static autonomousGPSType fromPerUnaligned(byte[] encodedBytes) { 788 autonomousGPSType result = new autonomousGPSType(); 789 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 790 return result; 791 } 792 793 /** 794 * Creates a new autonomousGPSType from encoded stream. 795 */ fromPerAligned(byte[] encodedBytes)796 public static autonomousGPSType fromPerAligned(byte[] encodedBytes) { 797 autonomousGPSType result = new autonomousGPSType(); 798 result.decodePerAligned(new BitStreamReader(encodedBytes)); 799 return result; 800 } 801 encodePerUnaligned()802 @Override public Iterable<BitStream> encodePerUnaligned() { 803 return super.encodePerUnaligned(); 804 } 805 encodePerAligned()806 @Override public Iterable<BitStream> encodePerAligned() { 807 return super.encodePerAligned(); 808 } 809 decodePerUnaligned(BitStreamReader reader)810 @Override public void decodePerUnaligned(BitStreamReader reader) { 811 super.decodePerUnaligned(reader); 812 } 813 decodePerAligned(BitStreamReader reader)814 @Override public void decodePerAligned(BitStreamReader reader) { 815 super.decodePerAligned(reader); 816 } 817 toString()818 @Override public String toString() { 819 return toIndentedString(""); 820 } 821 toIndentedString(String indent)822 public String toIndentedString(String indent) { 823 return "autonomousGPSType = " + getValue() + ";\n"; 824 } 825 } 826 827 828 /* 829 */ 830 831 832 // 833 834 /** 835 */ 836 public static class aFLTType extends Asn1Boolean { 837 // 838 839 private static final Asn1Tag TAG_aFLTType 840 = Asn1Tag.fromClassAndNumber(-1, -1); 841 aFLTType()842 public aFLTType() { 843 super(); 844 } 845 846 @Override 847 @Nullable getTag()848 protected Asn1Tag getTag() { 849 return TAG_aFLTType; 850 } 851 852 @Override isTagImplicit()853 protected boolean isTagImplicit() { 854 return true; 855 } 856 getPossibleFirstTags()857 public static Collection<Asn1Tag> getPossibleFirstTags() { 858 if (TAG_aFLTType != null) { 859 return ImmutableList.of(TAG_aFLTType); 860 } else { 861 return Asn1Boolean.getPossibleFirstTags(); 862 } 863 } 864 865 /** 866 * Creates a new aFLTType from encoded stream. 867 */ fromPerUnaligned(byte[] encodedBytes)868 public static aFLTType fromPerUnaligned(byte[] encodedBytes) { 869 aFLTType result = new aFLTType(); 870 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 871 return result; 872 } 873 874 /** 875 * Creates a new aFLTType from encoded stream. 876 */ fromPerAligned(byte[] encodedBytes)877 public static aFLTType fromPerAligned(byte[] encodedBytes) { 878 aFLTType result = new aFLTType(); 879 result.decodePerAligned(new BitStreamReader(encodedBytes)); 880 return result; 881 } 882 encodePerUnaligned()883 @Override public Iterable<BitStream> encodePerUnaligned() { 884 return super.encodePerUnaligned(); 885 } 886 encodePerAligned()887 @Override public Iterable<BitStream> encodePerAligned() { 888 return super.encodePerAligned(); 889 } 890 decodePerUnaligned(BitStreamReader reader)891 @Override public void decodePerUnaligned(BitStreamReader reader) { 892 super.decodePerUnaligned(reader); 893 } 894 decodePerAligned(BitStreamReader reader)895 @Override public void decodePerAligned(BitStreamReader reader) { 896 super.decodePerAligned(reader); 897 } 898 toString()899 @Override public String toString() { 900 return toIndentedString(""); 901 } 902 toIndentedString(String indent)903 public String toIndentedString(String indent) { 904 return "aFLTType = " + getValue() + ";\n"; 905 } 906 } 907 908 909 /* 910 */ 911 912 913 // 914 915 /** 916 */ 917 public static class eCIDType extends Asn1Boolean { 918 // 919 920 private static final Asn1Tag TAG_eCIDType 921 = Asn1Tag.fromClassAndNumber(-1, -1); 922 eCIDType()923 public eCIDType() { 924 super(); 925 } 926 927 @Override 928 @Nullable getTag()929 protected Asn1Tag getTag() { 930 return TAG_eCIDType; 931 } 932 933 @Override isTagImplicit()934 protected boolean isTagImplicit() { 935 return true; 936 } 937 getPossibleFirstTags()938 public static Collection<Asn1Tag> getPossibleFirstTags() { 939 if (TAG_eCIDType != null) { 940 return ImmutableList.of(TAG_eCIDType); 941 } else { 942 return Asn1Boolean.getPossibleFirstTags(); 943 } 944 } 945 946 /** 947 * Creates a new eCIDType from encoded stream. 948 */ fromPerUnaligned(byte[] encodedBytes)949 public static eCIDType fromPerUnaligned(byte[] encodedBytes) { 950 eCIDType result = new eCIDType(); 951 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 952 return result; 953 } 954 955 /** 956 * Creates a new eCIDType from encoded stream. 957 */ fromPerAligned(byte[] encodedBytes)958 public static eCIDType fromPerAligned(byte[] encodedBytes) { 959 eCIDType result = new eCIDType(); 960 result.decodePerAligned(new BitStreamReader(encodedBytes)); 961 return result; 962 } 963 encodePerUnaligned()964 @Override public Iterable<BitStream> encodePerUnaligned() { 965 return super.encodePerUnaligned(); 966 } 967 encodePerAligned()968 @Override public Iterable<BitStream> encodePerAligned() { 969 return super.encodePerAligned(); 970 } 971 decodePerUnaligned(BitStreamReader reader)972 @Override public void decodePerUnaligned(BitStreamReader reader) { 973 super.decodePerUnaligned(reader); 974 } 975 decodePerAligned(BitStreamReader reader)976 @Override public void decodePerAligned(BitStreamReader reader) { 977 super.decodePerAligned(reader); 978 } 979 toString()980 @Override public String toString() { 981 return toIndentedString(""); 982 } 983 toIndentedString(String indent)984 public String toIndentedString(String indent) { 985 return "eCIDType = " + getValue() + ";\n"; 986 } 987 } 988 989 990 /* 991 */ 992 993 994 // 995 996 /** 997 */ 998 public static class eOTDType extends Asn1Boolean { 999 // 1000 1001 private static final Asn1Tag TAG_eOTDType 1002 = Asn1Tag.fromClassAndNumber(-1, -1); 1003 eOTDType()1004 public eOTDType() { 1005 super(); 1006 } 1007 1008 @Override 1009 @Nullable getTag()1010 protected Asn1Tag getTag() { 1011 return TAG_eOTDType; 1012 } 1013 1014 @Override isTagImplicit()1015 protected boolean isTagImplicit() { 1016 return true; 1017 } 1018 getPossibleFirstTags()1019 public static Collection<Asn1Tag> getPossibleFirstTags() { 1020 if (TAG_eOTDType != null) { 1021 return ImmutableList.of(TAG_eOTDType); 1022 } else { 1023 return Asn1Boolean.getPossibleFirstTags(); 1024 } 1025 } 1026 1027 /** 1028 * Creates a new eOTDType from encoded stream. 1029 */ fromPerUnaligned(byte[] encodedBytes)1030 public static eOTDType fromPerUnaligned(byte[] encodedBytes) { 1031 eOTDType result = new eOTDType(); 1032 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 1033 return result; 1034 } 1035 1036 /** 1037 * Creates a new eOTDType from encoded stream. 1038 */ fromPerAligned(byte[] encodedBytes)1039 public static eOTDType fromPerAligned(byte[] encodedBytes) { 1040 eOTDType result = new eOTDType(); 1041 result.decodePerAligned(new BitStreamReader(encodedBytes)); 1042 return result; 1043 } 1044 encodePerUnaligned()1045 @Override public Iterable<BitStream> encodePerUnaligned() { 1046 return super.encodePerUnaligned(); 1047 } 1048 encodePerAligned()1049 @Override public Iterable<BitStream> encodePerAligned() { 1050 return super.encodePerAligned(); 1051 } 1052 decodePerUnaligned(BitStreamReader reader)1053 @Override public void decodePerUnaligned(BitStreamReader reader) { 1054 super.decodePerUnaligned(reader); 1055 } 1056 decodePerAligned(BitStreamReader reader)1057 @Override public void decodePerAligned(BitStreamReader reader) { 1058 super.decodePerAligned(reader); 1059 } 1060 toString()1061 @Override public String toString() { 1062 return toIndentedString(""); 1063 } 1064 toIndentedString(String indent)1065 public String toIndentedString(String indent) { 1066 return "eOTDType = " + getValue() + ";\n"; 1067 } 1068 } 1069 1070 1071 /* 1072 */ 1073 1074 1075 // 1076 1077 /** 1078 */ 1079 public static class oTDOAType extends Asn1Boolean { 1080 // 1081 1082 private static final Asn1Tag TAG_oTDOAType 1083 = Asn1Tag.fromClassAndNumber(-1, -1); 1084 oTDOAType()1085 public oTDOAType() { 1086 super(); 1087 } 1088 1089 @Override 1090 @Nullable getTag()1091 protected Asn1Tag getTag() { 1092 return TAG_oTDOAType; 1093 } 1094 1095 @Override isTagImplicit()1096 protected boolean isTagImplicit() { 1097 return true; 1098 } 1099 getPossibleFirstTags()1100 public static Collection<Asn1Tag> getPossibleFirstTags() { 1101 if (TAG_oTDOAType != null) { 1102 return ImmutableList.of(TAG_oTDOAType); 1103 } else { 1104 return Asn1Boolean.getPossibleFirstTags(); 1105 } 1106 } 1107 1108 /** 1109 * Creates a new oTDOAType from encoded stream. 1110 */ fromPerUnaligned(byte[] encodedBytes)1111 public static oTDOAType fromPerUnaligned(byte[] encodedBytes) { 1112 oTDOAType result = new oTDOAType(); 1113 result.decodePerUnaligned(new BitStreamReader(encodedBytes)); 1114 return result; 1115 } 1116 1117 /** 1118 * Creates a new oTDOAType from encoded stream. 1119 */ fromPerAligned(byte[] encodedBytes)1120 public static oTDOAType fromPerAligned(byte[] encodedBytes) { 1121 oTDOAType result = new oTDOAType(); 1122 result.decodePerAligned(new BitStreamReader(encodedBytes)); 1123 return result; 1124 } 1125 encodePerUnaligned()1126 @Override public Iterable<BitStream> encodePerUnaligned() { 1127 return super.encodePerUnaligned(); 1128 } 1129 encodePerAligned()1130 @Override public Iterable<BitStream> encodePerAligned() { 1131 return super.encodePerAligned(); 1132 } 1133 decodePerUnaligned(BitStreamReader reader)1134 @Override public void decodePerUnaligned(BitStreamReader reader) { 1135 super.decodePerUnaligned(reader); 1136 } 1137 decodePerAligned(BitStreamReader reader)1138 @Override public void decodePerAligned(BitStreamReader reader) { 1139 super.decodePerAligned(reader); 1140 } 1141 toString()1142 @Override public String toString() { 1143 return toIndentedString(""); 1144 } 1145 toIndentedString(String indent)1146 public String toIndentedString(String indent) { 1147 return "oTDOAType = " + getValue() + ";\n"; 1148 } 1149 } 1150 1151 1152 1153 1154 1155 1156 encodePerUnaligned()1157 @Override public Iterable<BitStream> encodePerUnaligned() { 1158 return super.encodePerUnaligned(); 1159 } 1160 encodePerAligned()1161 @Override public Iterable<BitStream> encodePerAligned() { 1162 return super.encodePerAligned(); 1163 } 1164 decodePerUnaligned(BitStreamReader reader)1165 @Override public void decodePerUnaligned(BitStreamReader reader) { 1166 super.decodePerUnaligned(reader); 1167 } 1168 decodePerAligned(BitStreamReader reader)1169 @Override public void decodePerAligned(BitStreamReader reader) { 1170 super.decodePerAligned(reader); 1171 } 1172 toString()1173 @Override public String toString() { 1174 return toIndentedString(""); 1175 } 1176 toIndentedString(String indent)1177 public String toIndentedString(String indent) { 1178 StringBuilder builder = new StringBuilder(); 1179 builder.append("PosTechnology = {\n"); 1180 final String internalIndent = indent + " "; 1181 for (SequenceComponent component : getComponents()) { 1182 if (component.isExplicitlySet()) { 1183 builder.append(internalIndent) 1184 .append(component.toIndentedString(internalIndent)); 1185 } 1186 } 1187 if (isExtensible()) { 1188 builder.append(internalIndent).append("...\n"); 1189 for (SequenceComponent component : getExtensionComponents()) { 1190 if (component.isExplicitlySet()) { 1191 builder.append(internalIndent) 1192 .append(component.toIndentedString(internalIndent)); 1193 } 1194 } 1195 } 1196 builder.append(indent).append("};\n"); 1197 return builder.toString(); 1198 } 1199 } 1200