All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.craxiom.messaging.LteRecordData Maven / Gradle / Ivy

There is a newer version: 1.6.0
Show newest version
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// NO CHECKED-IN PROTOBUF GENCODE
// source: com/craxiom/messaging/lte_record.proto
// Protobuf Java Version: 4.27.3

package com.craxiom.messaging;

/**
 * Protobuf type {@code com.craxiom.messaging.LteRecordData}
 */
public final class LteRecordData extends
    com.google.protobuf.GeneratedMessage implements
    // @@protoc_insertion_point(message_implements:com.craxiom.messaging.LteRecordData)
    LteRecordDataOrBuilder {
private static final long serialVersionUID = 0L;
  static {
    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
      /* major= */ 4,
      /* minor= */ 27,
      /* patch= */ 3,
      /* suffix= */ "",
      LteRecordData.class.getName());
  }
  // Use LteRecordData.newBuilder() to construct.
  private LteRecordData(com.google.protobuf.GeneratedMessage.Builder builder) {
    super(builder);
  }
  private LteRecordData() {
    deviceSerialNumber_ = "";
    deviceName_ = "";
    deviceTime_ = "";
    missionId_ = "";
    lteBandwidth_ = 0;
    provider_ = "";
  }

  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return com.craxiom.messaging.LteRecordOuterClass.internal_static_com_craxiom_messaging_LteRecordData_descriptor;
  }

  @java.lang.Override
  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return com.craxiom.messaging.LteRecordOuterClass.internal_static_com_craxiom_messaging_LteRecordData_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            com.craxiom.messaging.LteRecordData.class, com.craxiom.messaging.LteRecordData.Builder.class);
  }

  private int bitField0_;
  public static final int DEVICESERIALNUMBER_FIELD_NUMBER = 1;
  @SuppressWarnings("serial")
  private volatile java.lang.Object deviceSerialNumber_ = "";
  /**
   * string deviceSerialNumber = 1;
   * @return The deviceSerialNumber.
   */
  @java.lang.Override
  public java.lang.String getDeviceSerialNumber() {
    java.lang.Object ref = deviceSerialNumber_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      deviceSerialNumber_ = s;
      return s;
    }
  }
  /**
   * string deviceSerialNumber = 1;
   * @return The bytes for deviceSerialNumber.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getDeviceSerialNumberBytes() {
    java.lang.Object ref = deviceSerialNumber_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      deviceSerialNumber_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int DEVICENAME_FIELD_NUMBER = 2;
  @SuppressWarnings("serial")
  private volatile java.lang.Object deviceName_ = "";
  /**
   * string deviceName = 2;
   * @return The deviceName.
   */
  @java.lang.Override
  public java.lang.String getDeviceName() {
    java.lang.Object ref = deviceName_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      deviceName_ = s;
      return s;
    }
  }
  /**
   * string deviceName = 2;
   * @return The bytes for deviceName.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getDeviceNameBytes() {
    java.lang.Object ref = deviceName_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      deviceName_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int DEVICETIME_FIELD_NUMBER = 3;
  @SuppressWarnings("serial")
  private volatile java.lang.Object deviceTime_ = "";
  /**
   * string deviceTime = 3;
   * @return The deviceTime.
   */
  @java.lang.Override
  public java.lang.String getDeviceTime() {
    java.lang.Object ref = deviceTime_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      deviceTime_ = s;
      return s;
    }
  }
  /**
   * string deviceTime = 3;
   * @return The bytes for deviceTime.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getDeviceTimeBytes() {
    java.lang.Object ref = deviceTime_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      deviceTime_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int LATITUDE_FIELD_NUMBER = 4;
  private double latitude_ = 0D;
  /**
   * double latitude = 4;
   * @return The latitude.
   */
  @java.lang.Override
  public double getLatitude() {
    return latitude_;
  }

  public static final int LONGITUDE_FIELD_NUMBER = 5;
  private double longitude_ = 0D;
  /**
   * double longitude = 5;
   * @return The longitude.
   */
  @java.lang.Override
  public double getLongitude() {
    return longitude_;
  }

  public static final int ALTITUDE_FIELD_NUMBER = 6;
  private float altitude_ = 0F;
  /**
   * float altitude = 6;
   * @return The altitude.
   */
  @java.lang.Override
  public float getAltitude() {
    return altitude_;
  }

  public static final int MISSIONID_FIELD_NUMBER = 7;
  @SuppressWarnings("serial")
  private volatile java.lang.Object missionId_ = "";
  /**
   * string missionId = 7;
   * @return The missionId.
   */
  @java.lang.Override
  public java.lang.String getMissionId() {
    java.lang.Object ref = missionId_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      missionId_ = s;
      return s;
    }
  }
  /**
   * string missionId = 7;
   * @return The bytes for missionId.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getMissionIdBytes() {
    java.lang.Object ref = missionId_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      missionId_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int RECORDNUMBER_FIELD_NUMBER = 8;
  private int recordNumber_ = 0;
  /**
   * int32 recordNumber = 8;
   * @return The recordNumber.
   */
  @java.lang.Override
  public int getRecordNumber() {
    return recordNumber_;
  }

  public static final int GROUPNUMBER_FIELD_NUMBER = 9;
  private int groupNumber_ = 0;
  /**
   * int32 groupNumber = 9;
   * @return The groupNumber.
   */
  @java.lang.Override
  public int getGroupNumber() {
    return groupNumber_;
  }

  public static final int ACCURACY_FIELD_NUMBER = 10;
  private int accuracy_ = 0;
  /**
   * int32 accuracy = 10;
   * @return The accuracy.
   */
  @java.lang.Override
  public int getAccuracy() {
    return accuracy_;
  }

  public static final int HEADING_FIELD_NUMBER = 50;
  private float heading_ = 0F;
  /**
   * float heading = 50;
   * @return The heading.
   */
  @java.lang.Override
  public float getHeading() {
    return heading_;
  }

  public static final int PITCH_FIELD_NUMBER = 51;
  private float pitch_ = 0F;
  /**
   * float pitch = 51;
   * @return The pitch.
   */
  @java.lang.Override
  public float getPitch() {
    return pitch_;
  }

  public static final int ROLL_FIELD_NUMBER = 52;
  private float roll_ = 0F;
  /**
   * float roll = 52;
   * @return The roll.
   */
  @java.lang.Override
  public float getRoll() {
    return roll_;
  }

  public static final int FIELDOFVIEW_FIELD_NUMBER = 53;
  private float fieldOfView_ = 0F;
  /**
   * float fieldOfView = 53;
   * @return The fieldOfView.
   */
  @java.lang.Override
  public float getFieldOfView() {
    return fieldOfView_;
  }

  public static final int RECEIVERSENSITIVITY_FIELD_NUMBER = 54;
  private float receiverSensitivity_ = 0F;
  /**
   * float receiverSensitivity = 54;
   * @return The receiverSensitivity.
   */
  @java.lang.Override
  public float getReceiverSensitivity() {
    return receiverSensitivity_;
  }

  public static final int SPEED_FIELD_NUMBER = 55;
  private float speed_ = 0F;
  /**
   * float speed = 55;
   * @return The speed.
   */
  @java.lang.Override
  public float getSpeed() {
    return speed_;
  }

  public static final int MCC_FIELD_NUMBER = 16;
  private com.google.protobuf.Int32Value mcc_;
  /**
   * .google.protobuf.Int32Value mcc = 16;
   * @return Whether the mcc field is set.
   */
  @java.lang.Override
  public boolean hasMcc() {
    return ((bitField0_ & 0x00000001) != 0);
  }
  /**
   * .google.protobuf.Int32Value mcc = 16;
   * @return The mcc.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getMcc() {
    return mcc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
  }
  /**
   * .google.protobuf.Int32Value mcc = 16;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getMccOrBuilder() {
    return mcc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
  }

  public static final int MNC_FIELD_NUMBER = 17;
  private com.google.protobuf.Int32Value mnc_;
  /**
   * .google.protobuf.Int32Value mnc = 17;
   * @return Whether the mnc field is set.
   */
  @java.lang.Override
  public boolean hasMnc() {
    return ((bitField0_ & 0x00000002) != 0);
  }
  /**
   * .google.protobuf.Int32Value mnc = 17;
   * @return The mnc.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getMnc() {
    return mnc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
  }
  /**
   * .google.protobuf.Int32Value mnc = 17;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getMncOrBuilder() {
    return mnc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
  }

  public static final int TAC_FIELD_NUMBER = 18;
  private com.google.protobuf.Int32Value tac_;
  /**
   * .google.protobuf.Int32Value tac = 18;
   * @return Whether the tac field is set.
   */
  @java.lang.Override
  public boolean hasTac() {
    return ((bitField0_ & 0x00000004) != 0);
  }
  /**
   * .google.protobuf.Int32Value tac = 18;
   * @return The tac.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getTac() {
    return tac_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : tac_;
  }
  /**
   * .google.protobuf.Int32Value tac = 18;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getTacOrBuilder() {
    return tac_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : tac_;
  }

  public static final int ECI_FIELD_NUMBER = 19;
  private com.google.protobuf.Int32Value eci_;
  /**
   * .google.protobuf.Int32Value eci = 19;
   * @return Whether the eci field is set.
   */
  @java.lang.Override
  public boolean hasEci() {
    return ((bitField0_ & 0x00000008) != 0);
  }
  /**
   * .google.protobuf.Int32Value eci = 19;
   * @return The eci.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getEci() {
    return eci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : eci_;
  }
  /**
   * .google.protobuf.Int32Value eci = 19;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getEciOrBuilder() {
    return eci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : eci_;
  }

  public static final int EARFCN_FIELD_NUMBER = 20;
  private com.google.protobuf.Int32Value earfcn_;
  /**
   * .google.protobuf.Int32Value earfcn = 20;
   * @return Whether the earfcn field is set.
   */
  @java.lang.Override
  public boolean hasEarfcn() {
    return ((bitField0_ & 0x00000010) != 0);
  }
  /**
   * .google.protobuf.Int32Value earfcn = 20;
   * @return The earfcn.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getEarfcn() {
    return earfcn_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : earfcn_;
  }
  /**
   * .google.protobuf.Int32Value earfcn = 20;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getEarfcnOrBuilder() {
    return earfcn_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : earfcn_;
  }

  public static final int PCI_FIELD_NUMBER = 21;
  private com.google.protobuf.Int32Value pci_;
  /**
   * .google.protobuf.Int32Value pci = 21;
   * @return Whether the pci field is set.
   */
  @java.lang.Override
  public boolean hasPci() {
    return ((bitField0_ & 0x00000020) != 0);
  }
  /**
   * .google.protobuf.Int32Value pci = 21;
   * @return The pci.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getPci() {
    return pci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : pci_;
  }
  /**
   * .google.protobuf.Int32Value pci = 21;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getPciOrBuilder() {
    return pci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : pci_;
  }

  public static final int RSRP_FIELD_NUMBER = 22;
  private com.google.protobuf.FloatValue rsrp_;
  /**
   * .google.protobuf.FloatValue rsrp = 22;
   * @return Whether the rsrp field is set.
   */
  @java.lang.Override
  public boolean hasRsrp() {
    return ((bitField0_ & 0x00000040) != 0);
  }
  /**
   * .google.protobuf.FloatValue rsrp = 22;
   * @return The rsrp.
   */
  @java.lang.Override
  public com.google.protobuf.FloatValue getRsrp() {
    return rsrp_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : rsrp_;
  }
  /**
   * .google.protobuf.FloatValue rsrp = 22;
   */
  @java.lang.Override
  public com.google.protobuf.FloatValueOrBuilder getRsrpOrBuilder() {
    return rsrp_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : rsrp_;
  }

  public static final int RSRQ_FIELD_NUMBER = 23;
  private com.google.protobuf.FloatValue rsrq_;
  /**
   * .google.protobuf.FloatValue rsrq = 23;
   * @return Whether the rsrq field is set.
   */
  @java.lang.Override
  public boolean hasRsrq() {
    return ((bitField0_ & 0x00000080) != 0);
  }
  /**
   * .google.protobuf.FloatValue rsrq = 23;
   * @return The rsrq.
   */
  @java.lang.Override
  public com.google.protobuf.FloatValue getRsrq() {
    return rsrq_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : rsrq_;
  }
  /**
   * .google.protobuf.FloatValue rsrq = 23;
   */
  @java.lang.Override
  public com.google.protobuf.FloatValueOrBuilder getRsrqOrBuilder() {
    return rsrq_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : rsrq_;
  }

  public static final int TA_FIELD_NUMBER = 24;
  private com.google.protobuf.Int32Value ta_;
  /**
   * .google.protobuf.Int32Value ta = 24;
   * @return Whether the ta field is set.
   */
  @java.lang.Override
  public boolean hasTa() {
    return ((bitField0_ & 0x00000100) != 0);
  }
  /**
   * .google.protobuf.Int32Value ta = 24;
   * @return The ta.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getTa() {
    return ta_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
  }
  /**
   * .google.protobuf.Int32Value ta = 24;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getTaOrBuilder() {
    return ta_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
  }

  public static final int SERVINGCELL_FIELD_NUMBER = 25;
  private com.google.protobuf.BoolValue servingCell_;
  /**
   * .google.protobuf.BoolValue servingCell = 25;
   * @return Whether the servingCell field is set.
   */
  @java.lang.Override
  public boolean hasServingCell() {
    return ((bitField0_ & 0x00000200) != 0);
  }
  /**
   * .google.protobuf.BoolValue servingCell = 25;
   * @return The servingCell.
   */
  @java.lang.Override
  public com.google.protobuf.BoolValue getServingCell() {
    return servingCell_ == null ? com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
  }
  /**
   * .google.protobuf.BoolValue servingCell = 25;
   */
  @java.lang.Override
  public com.google.protobuf.BoolValueOrBuilder getServingCellOrBuilder() {
    return servingCell_ == null ? com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
  }

  public static final int LTEBANDWIDTH_FIELD_NUMBER = 26;
  private int lteBandwidth_ = 0;
  /**
   * .com.craxiom.messaging.ltebandwidth.LteBandwidth lteBandwidth = 26;
   * @return The enum numeric value on the wire for lteBandwidth.
   */
  @java.lang.Override public int getLteBandwidthValue() {
    return lteBandwidth_;
  }
  /**
   * .com.craxiom.messaging.ltebandwidth.LteBandwidth lteBandwidth = 26;
   * @return The lteBandwidth.
   */
  @java.lang.Override public com.craxiom.messaging.LteBandwidth getLteBandwidth() {
    com.craxiom.messaging.LteBandwidth result = com.craxiom.messaging.LteBandwidth.forNumber(lteBandwidth_);
    return result == null ? com.craxiom.messaging.LteBandwidth.UNRECOGNIZED : result;
  }

  public static final int PROVIDER_FIELD_NUMBER = 27;
  @SuppressWarnings("serial")
  private volatile java.lang.Object provider_ = "";
  /**
   * string provider = 27;
   * @return The provider.
   */
  @java.lang.Override
  public java.lang.String getProvider() {
    java.lang.Object ref = provider_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      provider_ = s;
      return s;
    }
  }
  /**
   * string provider = 27;
   * @return The bytes for provider.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getProviderBytes() {
    java.lang.Object ref = provider_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      provider_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int SIGNALSTRENGTH_FIELD_NUMBER = 28;
  private com.google.protobuf.FloatValue signalStrength_;
  /**
   * .google.protobuf.FloatValue signalStrength = 28;
   * @return Whether the signalStrength field is set.
   */
  @java.lang.Override
  public boolean hasSignalStrength() {
    return ((bitField0_ & 0x00000400) != 0);
  }
  /**
   * .google.protobuf.FloatValue signalStrength = 28;
   * @return The signalStrength.
   */
  @java.lang.Override
  public com.google.protobuf.FloatValue getSignalStrength() {
    return signalStrength_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
  }
  /**
   * .google.protobuf.FloatValue signalStrength = 28;
   */
  @java.lang.Override
  public com.google.protobuf.FloatValueOrBuilder getSignalStrengthOrBuilder() {
    return signalStrength_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
  }

  public static final int CQI_FIELD_NUMBER = 29;
  private com.google.protobuf.Int32Value cqi_;
  /**
   * .google.protobuf.Int32Value cqi = 29;
   * @return Whether the cqi field is set.
   */
  @java.lang.Override
  public boolean hasCqi() {
    return ((bitField0_ & 0x00000800) != 0);
  }
  /**
   * .google.protobuf.Int32Value cqi = 29;
   * @return The cqi.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getCqi() {
    return cqi_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : cqi_;
  }
  /**
   * .google.protobuf.Int32Value cqi = 29;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getCqiOrBuilder() {
    return cqi_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : cqi_;
  }

  public static final int SLOT_FIELD_NUMBER = 30;
  private com.google.protobuf.Int32Value slot_;
  /**
   * .google.protobuf.Int32Value slot = 30;
   * @return Whether the slot field is set.
   */
  @java.lang.Override
  public boolean hasSlot() {
    return ((bitField0_ & 0x00001000) != 0);
  }
  /**
   * .google.protobuf.Int32Value slot = 30;
   * @return The slot.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getSlot() {
    return slot_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
  }
  /**
   * .google.protobuf.Int32Value slot = 30;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getSlotOrBuilder() {
    return slot_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
  }

  public static final int SNR_FIELD_NUMBER = 31;
  private com.google.protobuf.FloatValue snr_;
  /**
   * .google.protobuf.FloatValue snr = 31;
   * @return Whether the snr field is set.
   */
  @java.lang.Override
  public boolean hasSnr() {
    return ((bitField0_ & 0x00002000) != 0);
  }
  /**
   * .google.protobuf.FloatValue snr = 31;
   * @return The snr.
   */
  @java.lang.Override
  public com.google.protobuf.FloatValue getSnr() {
    return snr_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : snr_;
  }
  /**
   * .google.protobuf.FloatValue snr = 31;
   */
  @java.lang.Override
  public com.google.protobuf.FloatValueOrBuilder getSnrOrBuilder() {
    return snr_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : snr_;
  }

  private byte memoizedIsInitialized = -1;
  @java.lang.Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceSerialNumber_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 1, deviceSerialNumber_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 2, deviceName_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceTime_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 3, deviceTime_);
    }
    if (java.lang.Double.doubleToRawLongBits(latitude_) != 0) {
      output.writeDouble(4, latitude_);
    }
    if (java.lang.Double.doubleToRawLongBits(longitude_) != 0) {
      output.writeDouble(5, longitude_);
    }
    if (java.lang.Float.floatToRawIntBits(altitude_) != 0) {
      output.writeFloat(6, altitude_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(missionId_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 7, missionId_);
    }
    if (recordNumber_ != 0) {
      output.writeInt32(8, recordNumber_);
    }
    if (groupNumber_ != 0) {
      output.writeInt32(9, groupNumber_);
    }
    if (accuracy_ != 0) {
      output.writeInt32(10, accuracy_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      output.writeMessage(16, getMcc());
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      output.writeMessage(17, getMnc());
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      output.writeMessage(18, getTac());
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      output.writeMessage(19, getEci());
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      output.writeMessage(20, getEarfcn());
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      output.writeMessage(21, getPci());
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      output.writeMessage(22, getRsrp());
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      output.writeMessage(23, getRsrq());
    }
    if (((bitField0_ & 0x00000100) != 0)) {
      output.writeMessage(24, getTa());
    }
    if (((bitField0_ & 0x00000200) != 0)) {
      output.writeMessage(25, getServingCell());
    }
    if (lteBandwidth_ != com.craxiom.messaging.LteBandwidth.UNKNOWN.getNumber()) {
      output.writeEnum(26, lteBandwidth_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(provider_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 27, provider_);
    }
    if (((bitField0_ & 0x00000400) != 0)) {
      output.writeMessage(28, getSignalStrength());
    }
    if (((bitField0_ & 0x00000800) != 0)) {
      output.writeMessage(29, getCqi());
    }
    if (((bitField0_ & 0x00001000) != 0)) {
      output.writeMessage(30, getSlot());
    }
    if (((bitField0_ & 0x00002000) != 0)) {
      output.writeMessage(31, getSnr());
    }
    if (java.lang.Float.floatToRawIntBits(heading_) != 0) {
      output.writeFloat(50, heading_);
    }
    if (java.lang.Float.floatToRawIntBits(pitch_) != 0) {
      output.writeFloat(51, pitch_);
    }
    if (java.lang.Float.floatToRawIntBits(roll_) != 0) {
      output.writeFloat(52, roll_);
    }
    if (java.lang.Float.floatToRawIntBits(fieldOfView_) != 0) {
      output.writeFloat(53, fieldOfView_);
    }
    if (java.lang.Float.floatToRawIntBits(receiverSensitivity_) != 0) {
      output.writeFloat(54, receiverSensitivity_);
    }
    if (java.lang.Float.floatToRawIntBits(speed_) != 0) {
      output.writeFloat(55, speed_);
    }
    getUnknownFields().writeTo(output);
  }

  @java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceSerialNumber_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, deviceSerialNumber_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, deviceName_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceTime_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, deviceTime_);
    }
    if (java.lang.Double.doubleToRawLongBits(latitude_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeDoubleSize(4, latitude_);
    }
    if (java.lang.Double.doubleToRawLongBits(longitude_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeDoubleSize(5, longitude_);
    }
    if (java.lang.Float.floatToRawIntBits(altitude_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(6, altitude_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(missionId_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(7, missionId_);
    }
    if (recordNumber_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(8, recordNumber_);
    }
    if (groupNumber_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(9, groupNumber_);
    }
    if (accuracy_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(10, accuracy_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(16, getMcc());
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(17, getMnc());
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(18, getTac());
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(19, getEci());
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(20, getEarfcn());
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(21, getPci());
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(22, getRsrp());
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(23, getRsrq());
    }
    if (((bitField0_ & 0x00000100) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(24, getTa());
    }
    if (((bitField0_ & 0x00000200) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(25, getServingCell());
    }
    if (lteBandwidth_ != com.craxiom.messaging.LteBandwidth.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream
        .computeEnumSize(26, lteBandwidth_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(provider_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(27, provider_);
    }
    if (((bitField0_ & 0x00000400) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(28, getSignalStrength());
    }
    if (((bitField0_ & 0x00000800) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(29, getCqi());
    }
    if (((bitField0_ & 0x00001000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(30, getSlot());
    }
    if (((bitField0_ & 0x00002000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(31, getSnr());
    }
    if (java.lang.Float.floatToRawIntBits(heading_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(50, heading_);
    }
    if (java.lang.Float.floatToRawIntBits(pitch_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(51, pitch_);
    }
    if (java.lang.Float.floatToRawIntBits(roll_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(52, roll_);
    }
    if (java.lang.Float.floatToRawIntBits(fieldOfView_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(53, fieldOfView_);
    }
    if (java.lang.Float.floatToRawIntBits(receiverSensitivity_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(54, receiverSensitivity_);
    }
    if (java.lang.Float.floatToRawIntBits(speed_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(55, speed_);
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof com.craxiom.messaging.LteRecordData)) {
      return super.equals(obj);
    }
    com.craxiom.messaging.LteRecordData other = (com.craxiom.messaging.LteRecordData) obj;

    if (!getDeviceSerialNumber()
        .equals(other.getDeviceSerialNumber())) return false;
    if (!getDeviceName()
        .equals(other.getDeviceName())) return false;
    if (!getDeviceTime()
        .equals(other.getDeviceTime())) return false;
    if (java.lang.Double.doubleToLongBits(getLatitude())
        != java.lang.Double.doubleToLongBits(
            other.getLatitude())) return false;
    if (java.lang.Double.doubleToLongBits(getLongitude())
        != java.lang.Double.doubleToLongBits(
            other.getLongitude())) return false;
    if (java.lang.Float.floatToIntBits(getAltitude())
        != java.lang.Float.floatToIntBits(
            other.getAltitude())) return false;
    if (!getMissionId()
        .equals(other.getMissionId())) return false;
    if (getRecordNumber()
        != other.getRecordNumber()) return false;
    if (getGroupNumber()
        != other.getGroupNumber()) return false;
    if (getAccuracy()
        != other.getAccuracy()) return false;
    if (java.lang.Float.floatToIntBits(getHeading())
        != java.lang.Float.floatToIntBits(
            other.getHeading())) return false;
    if (java.lang.Float.floatToIntBits(getPitch())
        != java.lang.Float.floatToIntBits(
            other.getPitch())) return false;
    if (java.lang.Float.floatToIntBits(getRoll())
        != java.lang.Float.floatToIntBits(
            other.getRoll())) return false;
    if (java.lang.Float.floatToIntBits(getFieldOfView())
        != java.lang.Float.floatToIntBits(
            other.getFieldOfView())) return false;
    if (java.lang.Float.floatToIntBits(getReceiverSensitivity())
        != java.lang.Float.floatToIntBits(
            other.getReceiverSensitivity())) return false;
    if (java.lang.Float.floatToIntBits(getSpeed())
        != java.lang.Float.floatToIntBits(
            other.getSpeed())) return false;
    if (hasMcc() != other.hasMcc()) return false;
    if (hasMcc()) {
      if (!getMcc()
          .equals(other.getMcc())) return false;
    }
    if (hasMnc() != other.hasMnc()) return false;
    if (hasMnc()) {
      if (!getMnc()
          .equals(other.getMnc())) return false;
    }
    if (hasTac() != other.hasTac()) return false;
    if (hasTac()) {
      if (!getTac()
          .equals(other.getTac())) return false;
    }
    if (hasEci() != other.hasEci()) return false;
    if (hasEci()) {
      if (!getEci()
          .equals(other.getEci())) return false;
    }
    if (hasEarfcn() != other.hasEarfcn()) return false;
    if (hasEarfcn()) {
      if (!getEarfcn()
          .equals(other.getEarfcn())) return false;
    }
    if (hasPci() != other.hasPci()) return false;
    if (hasPci()) {
      if (!getPci()
          .equals(other.getPci())) return false;
    }
    if (hasRsrp() != other.hasRsrp()) return false;
    if (hasRsrp()) {
      if (!getRsrp()
          .equals(other.getRsrp())) return false;
    }
    if (hasRsrq() != other.hasRsrq()) return false;
    if (hasRsrq()) {
      if (!getRsrq()
          .equals(other.getRsrq())) return false;
    }
    if (hasTa() != other.hasTa()) return false;
    if (hasTa()) {
      if (!getTa()
          .equals(other.getTa())) return false;
    }
    if (hasServingCell() != other.hasServingCell()) return false;
    if (hasServingCell()) {
      if (!getServingCell()
          .equals(other.getServingCell())) return false;
    }
    if (lteBandwidth_ != other.lteBandwidth_) return false;
    if (!getProvider()
        .equals(other.getProvider())) return false;
    if (hasSignalStrength() != other.hasSignalStrength()) return false;
    if (hasSignalStrength()) {
      if (!getSignalStrength()
          .equals(other.getSignalStrength())) return false;
    }
    if (hasCqi() != other.hasCqi()) return false;
    if (hasCqi()) {
      if (!getCqi()
          .equals(other.getCqi())) return false;
    }
    if (hasSlot() != other.hasSlot()) return false;
    if (hasSlot()) {
      if (!getSlot()
          .equals(other.getSlot())) return false;
    }
    if (hasSnr() != other.hasSnr()) return false;
    if (hasSnr()) {
      if (!getSnr()
          .equals(other.getSnr())) return false;
    }
    if (!getUnknownFields().equals(other.getUnknownFields())) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + DEVICESERIALNUMBER_FIELD_NUMBER;
    hash = (53 * hash) + getDeviceSerialNumber().hashCode();
    hash = (37 * hash) + DEVICENAME_FIELD_NUMBER;
    hash = (53 * hash) + getDeviceName().hashCode();
    hash = (37 * hash) + DEVICETIME_FIELD_NUMBER;
    hash = (53 * hash) + getDeviceTime().hashCode();
    hash = (37 * hash) + LATITUDE_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        java.lang.Double.doubleToLongBits(getLatitude()));
    hash = (37 * hash) + LONGITUDE_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        java.lang.Double.doubleToLongBits(getLongitude()));
    hash = (37 * hash) + ALTITUDE_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getAltitude());
    hash = (37 * hash) + MISSIONID_FIELD_NUMBER;
    hash = (53 * hash) + getMissionId().hashCode();
    hash = (37 * hash) + RECORDNUMBER_FIELD_NUMBER;
    hash = (53 * hash) + getRecordNumber();
    hash = (37 * hash) + GROUPNUMBER_FIELD_NUMBER;
    hash = (53 * hash) + getGroupNumber();
    hash = (37 * hash) + ACCURACY_FIELD_NUMBER;
    hash = (53 * hash) + getAccuracy();
    hash = (37 * hash) + HEADING_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getHeading());
    hash = (37 * hash) + PITCH_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getPitch());
    hash = (37 * hash) + ROLL_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getRoll());
    hash = (37 * hash) + FIELDOFVIEW_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getFieldOfView());
    hash = (37 * hash) + RECEIVERSENSITIVITY_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getReceiverSensitivity());
    hash = (37 * hash) + SPEED_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getSpeed());
    if (hasMcc()) {
      hash = (37 * hash) + MCC_FIELD_NUMBER;
      hash = (53 * hash) + getMcc().hashCode();
    }
    if (hasMnc()) {
      hash = (37 * hash) + MNC_FIELD_NUMBER;
      hash = (53 * hash) + getMnc().hashCode();
    }
    if (hasTac()) {
      hash = (37 * hash) + TAC_FIELD_NUMBER;
      hash = (53 * hash) + getTac().hashCode();
    }
    if (hasEci()) {
      hash = (37 * hash) + ECI_FIELD_NUMBER;
      hash = (53 * hash) + getEci().hashCode();
    }
    if (hasEarfcn()) {
      hash = (37 * hash) + EARFCN_FIELD_NUMBER;
      hash = (53 * hash) + getEarfcn().hashCode();
    }
    if (hasPci()) {
      hash = (37 * hash) + PCI_FIELD_NUMBER;
      hash = (53 * hash) + getPci().hashCode();
    }
    if (hasRsrp()) {
      hash = (37 * hash) + RSRP_FIELD_NUMBER;
      hash = (53 * hash) + getRsrp().hashCode();
    }
    if (hasRsrq()) {
      hash = (37 * hash) + RSRQ_FIELD_NUMBER;
      hash = (53 * hash) + getRsrq().hashCode();
    }
    if (hasTa()) {
      hash = (37 * hash) + TA_FIELD_NUMBER;
      hash = (53 * hash) + getTa().hashCode();
    }
    if (hasServingCell()) {
      hash = (37 * hash) + SERVINGCELL_FIELD_NUMBER;
      hash = (53 * hash) + getServingCell().hashCode();
    }
    hash = (37 * hash) + LTEBANDWIDTH_FIELD_NUMBER;
    hash = (53 * hash) + lteBandwidth_;
    hash = (37 * hash) + PROVIDER_FIELD_NUMBER;
    hash = (53 * hash) + getProvider().hashCode();
    if (hasSignalStrength()) {
      hash = (37 * hash) + SIGNALSTRENGTH_FIELD_NUMBER;
      hash = (53 * hash) + getSignalStrength().hashCode();
    }
    if (hasCqi()) {
      hash = (37 * hash) + CQI_FIELD_NUMBER;
      hash = (53 * hash) + getCqi().hashCode();
    }
    if (hasSlot()) {
      hash = (37 * hash) + SLOT_FIELD_NUMBER;
      hash = (53 * hash) + getSlot().hashCode();
    }
    if (hasSnr()) {
      hash = (37 * hash) + SNR_FIELD_NUMBER;
      hash = (53 * hash) + getSnr().hashCode();
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static com.craxiom.messaging.LteRecordData parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  public static com.craxiom.messaging.LteRecordData parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseDelimitedWithIOException(PARSER, input);
  }

  public static com.craxiom.messaging.LteRecordData parseDelimitedFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input);
  }
  public static com.craxiom.messaging.LteRecordData parseFrom(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @java.lang.Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(com.craxiom.messaging.LteRecordData prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @java.lang.Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @java.lang.Override
  protected Builder newBuilderForType(
      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * Protobuf type {@code com.craxiom.messaging.LteRecordData}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessage.Builder implements
      // @@protoc_insertion_point(builder_implements:com.craxiom.messaging.LteRecordData)
      com.craxiom.messaging.LteRecordDataOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.craxiom.messaging.LteRecordOuterClass.internal_static_com_craxiom_messaging_LteRecordData_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.craxiom.messaging.LteRecordOuterClass.internal_static_com_craxiom_messaging_LteRecordData_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.craxiom.messaging.LteRecordData.class, com.craxiom.messaging.LteRecordData.Builder.class);
    }

    // Construct using com.craxiom.messaging.LteRecordData.newBuilder()
    private Builder() {
      maybeForceBuilderInitialization();
    }

    private Builder(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      super(parent);
      maybeForceBuilderInitialization();
    }
    private void maybeForceBuilderInitialization() {
      if (com.google.protobuf.GeneratedMessage
              .alwaysUseFieldBuilders) {
        getMccFieldBuilder();
        getMncFieldBuilder();
        getTacFieldBuilder();
        getEciFieldBuilder();
        getEarfcnFieldBuilder();
        getPciFieldBuilder();
        getRsrpFieldBuilder();
        getRsrqFieldBuilder();
        getTaFieldBuilder();
        getServingCellFieldBuilder();
        getSignalStrengthFieldBuilder();
        getCqiFieldBuilder();
        getSlotFieldBuilder();
        getSnrFieldBuilder();
      }
    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      bitField0_ = 0;
      deviceSerialNumber_ = "";
      deviceName_ = "";
      deviceTime_ = "";
      latitude_ = 0D;
      longitude_ = 0D;
      altitude_ = 0F;
      missionId_ = "";
      recordNumber_ = 0;
      groupNumber_ = 0;
      accuracy_ = 0;
      heading_ = 0F;
      pitch_ = 0F;
      roll_ = 0F;
      fieldOfView_ = 0F;
      receiverSensitivity_ = 0F;
      speed_ = 0F;
      mcc_ = null;
      if (mccBuilder_ != null) {
        mccBuilder_.dispose();
        mccBuilder_ = null;
      }
      mnc_ = null;
      if (mncBuilder_ != null) {
        mncBuilder_.dispose();
        mncBuilder_ = null;
      }
      tac_ = null;
      if (tacBuilder_ != null) {
        tacBuilder_.dispose();
        tacBuilder_ = null;
      }
      eci_ = null;
      if (eciBuilder_ != null) {
        eciBuilder_.dispose();
        eciBuilder_ = null;
      }
      earfcn_ = null;
      if (earfcnBuilder_ != null) {
        earfcnBuilder_.dispose();
        earfcnBuilder_ = null;
      }
      pci_ = null;
      if (pciBuilder_ != null) {
        pciBuilder_.dispose();
        pciBuilder_ = null;
      }
      rsrp_ = null;
      if (rsrpBuilder_ != null) {
        rsrpBuilder_.dispose();
        rsrpBuilder_ = null;
      }
      rsrq_ = null;
      if (rsrqBuilder_ != null) {
        rsrqBuilder_.dispose();
        rsrqBuilder_ = null;
      }
      ta_ = null;
      if (taBuilder_ != null) {
        taBuilder_.dispose();
        taBuilder_ = null;
      }
      servingCell_ = null;
      if (servingCellBuilder_ != null) {
        servingCellBuilder_.dispose();
        servingCellBuilder_ = null;
      }
      lteBandwidth_ = 0;
      provider_ = "";
      signalStrength_ = null;
      if (signalStrengthBuilder_ != null) {
        signalStrengthBuilder_.dispose();
        signalStrengthBuilder_ = null;
      }
      cqi_ = null;
      if (cqiBuilder_ != null) {
        cqiBuilder_.dispose();
        cqiBuilder_ = null;
      }
      slot_ = null;
      if (slotBuilder_ != null) {
        slotBuilder_.dispose();
        slotBuilder_ = null;
      }
      snr_ = null;
      if (snrBuilder_ != null) {
        snrBuilder_.dispose();
        snrBuilder_ = null;
      }
      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return com.craxiom.messaging.LteRecordOuterClass.internal_static_com_craxiom_messaging_LteRecordData_descriptor;
    }

    @java.lang.Override
    public com.craxiom.messaging.LteRecordData getDefaultInstanceForType() {
      return com.craxiom.messaging.LteRecordData.getDefaultInstance();
    }

    @java.lang.Override
    public com.craxiom.messaging.LteRecordData build() {
      com.craxiom.messaging.LteRecordData result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public com.craxiom.messaging.LteRecordData buildPartial() {
      com.craxiom.messaging.LteRecordData result = new com.craxiom.messaging.LteRecordData(this);
      if (bitField0_ != 0) { buildPartial0(result); }
      onBuilt();
      return result;
    }

    private void buildPartial0(com.craxiom.messaging.LteRecordData result) {
      int from_bitField0_ = bitField0_;
      if (((from_bitField0_ & 0x00000001) != 0)) {
        result.deviceSerialNumber_ = deviceSerialNumber_;
      }
      if (((from_bitField0_ & 0x00000002) != 0)) {
        result.deviceName_ = deviceName_;
      }
      if (((from_bitField0_ & 0x00000004) != 0)) {
        result.deviceTime_ = deviceTime_;
      }
      if (((from_bitField0_ & 0x00000008) != 0)) {
        result.latitude_ = latitude_;
      }
      if (((from_bitField0_ & 0x00000010) != 0)) {
        result.longitude_ = longitude_;
      }
      if (((from_bitField0_ & 0x00000020) != 0)) {
        result.altitude_ = altitude_;
      }
      if (((from_bitField0_ & 0x00000040) != 0)) {
        result.missionId_ = missionId_;
      }
      if (((from_bitField0_ & 0x00000080) != 0)) {
        result.recordNumber_ = recordNumber_;
      }
      if (((from_bitField0_ & 0x00000100) != 0)) {
        result.groupNumber_ = groupNumber_;
      }
      if (((from_bitField0_ & 0x00000200) != 0)) {
        result.accuracy_ = accuracy_;
      }
      if (((from_bitField0_ & 0x00000400) != 0)) {
        result.heading_ = heading_;
      }
      if (((from_bitField0_ & 0x00000800) != 0)) {
        result.pitch_ = pitch_;
      }
      if (((from_bitField0_ & 0x00001000) != 0)) {
        result.roll_ = roll_;
      }
      if (((from_bitField0_ & 0x00002000) != 0)) {
        result.fieldOfView_ = fieldOfView_;
      }
      if (((from_bitField0_ & 0x00004000) != 0)) {
        result.receiverSensitivity_ = receiverSensitivity_;
      }
      if (((from_bitField0_ & 0x00008000) != 0)) {
        result.speed_ = speed_;
      }
      int to_bitField0_ = 0;
      if (((from_bitField0_ & 0x00010000) != 0)) {
        result.mcc_ = mccBuilder_ == null
            ? mcc_
            : mccBuilder_.build();
        to_bitField0_ |= 0x00000001;
      }
      if (((from_bitField0_ & 0x00020000) != 0)) {
        result.mnc_ = mncBuilder_ == null
            ? mnc_
            : mncBuilder_.build();
        to_bitField0_ |= 0x00000002;
      }
      if (((from_bitField0_ & 0x00040000) != 0)) {
        result.tac_ = tacBuilder_ == null
            ? tac_
            : tacBuilder_.build();
        to_bitField0_ |= 0x00000004;
      }
      if (((from_bitField0_ & 0x00080000) != 0)) {
        result.eci_ = eciBuilder_ == null
            ? eci_
            : eciBuilder_.build();
        to_bitField0_ |= 0x00000008;
      }
      if (((from_bitField0_ & 0x00100000) != 0)) {
        result.earfcn_ = earfcnBuilder_ == null
            ? earfcn_
            : earfcnBuilder_.build();
        to_bitField0_ |= 0x00000010;
      }
      if (((from_bitField0_ & 0x00200000) != 0)) {
        result.pci_ = pciBuilder_ == null
            ? pci_
            : pciBuilder_.build();
        to_bitField0_ |= 0x00000020;
      }
      if (((from_bitField0_ & 0x00400000) != 0)) {
        result.rsrp_ = rsrpBuilder_ == null
            ? rsrp_
            : rsrpBuilder_.build();
        to_bitField0_ |= 0x00000040;
      }
      if (((from_bitField0_ & 0x00800000) != 0)) {
        result.rsrq_ = rsrqBuilder_ == null
            ? rsrq_
            : rsrqBuilder_.build();
        to_bitField0_ |= 0x00000080;
      }
      if (((from_bitField0_ & 0x01000000) != 0)) {
        result.ta_ = taBuilder_ == null
            ? ta_
            : taBuilder_.build();
        to_bitField0_ |= 0x00000100;
      }
      if (((from_bitField0_ & 0x02000000) != 0)) {
        result.servingCell_ = servingCellBuilder_ == null
            ? servingCell_
            : servingCellBuilder_.build();
        to_bitField0_ |= 0x00000200;
      }
      if (((from_bitField0_ & 0x04000000) != 0)) {
        result.lteBandwidth_ = lteBandwidth_;
      }
      if (((from_bitField0_ & 0x08000000) != 0)) {
        result.provider_ = provider_;
      }
      if (((from_bitField0_ & 0x10000000) != 0)) {
        result.signalStrength_ = signalStrengthBuilder_ == null
            ? signalStrength_
            : signalStrengthBuilder_.build();
        to_bitField0_ |= 0x00000400;
      }
      if (((from_bitField0_ & 0x20000000) != 0)) {
        result.cqi_ = cqiBuilder_ == null
            ? cqi_
            : cqiBuilder_.build();
        to_bitField0_ |= 0x00000800;
      }
      if (((from_bitField0_ & 0x40000000) != 0)) {
        result.slot_ = slotBuilder_ == null
            ? slot_
            : slotBuilder_.build();
        to_bitField0_ |= 0x00001000;
      }
      if (((from_bitField0_ & 0x80000000) != 0)) {
        result.snr_ = snrBuilder_ == null
            ? snr_
            : snrBuilder_.build();
        to_bitField0_ |= 0x00002000;
      }
      result.bitField0_ |= to_bitField0_;
    }

    @java.lang.Override
    public Builder mergeFrom(com.google.protobuf.Message other) {
      if (other instanceof com.craxiom.messaging.LteRecordData) {
        return mergeFrom((com.craxiom.messaging.LteRecordData)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(com.craxiom.messaging.LteRecordData other) {
      if (other == com.craxiom.messaging.LteRecordData.getDefaultInstance()) return this;
      if (!other.getDeviceSerialNumber().isEmpty()) {
        deviceSerialNumber_ = other.deviceSerialNumber_;
        bitField0_ |= 0x00000001;
        onChanged();
      }
      if (!other.getDeviceName().isEmpty()) {
        deviceName_ = other.deviceName_;
        bitField0_ |= 0x00000002;
        onChanged();
      }
      if (!other.getDeviceTime().isEmpty()) {
        deviceTime_ = other.deviceTime_;
        bitField0_ |= 0x00000004;
        onChanged();
      }
      if (other.getLatitude() != 0D) {
        setLatitude(other.getLatitude());
      }
      if (other.getLongitude() != 0D) {
        setLongitude(other.getLongitude());
      }
      if (other.getAltitude() != 0F) {
        setAltitude(other.getAltitude());
      }
      if (!other.getMissionId().isEmpty()) {
        missionId_ = other.missionId_;
        bitField0_ |= 0x00000040;
        onChanged();
      }
      if (other.getRecordNumber() != 0) {
        setRecordNumber(other.getRecordNumber());
      }
      if (other.getGroupNumber() != 0) {
        setGroupNumber(other.getGroupNumber());
      }
      if (other.getAccuracy() != 0) {
        setAccuracy(other.getAccuracy());
      }
      if (other.getHeading() != 0F) {
        setHeading(other.getHeading());
      }
      if (other.getPitch() != 0F) {
        setPitch(other.getPitch());
      }
      if (other.getRoll() != 0F) {
        setRoll(other.getRoll());
      }
      if (other.getFieldOfView() != 0F) {
        setFieldOfView(other.getFieldOfView());
      }
      if (other.getReceiverSensitivity() != 0F) {
        setReceiverSensitivity(other.getReceiverSensitivity());
      }
      if (other.getSpeed() != 0F) {
        setSpeed(other.getSpeed());
      }
      if (other.hasMcc()) {
        mergeMcc(other.getMcc());
      }
      if (other.hasMnc()) {
        mergeMnc(other.getMnc());
      }
      if (other.hasTac()) {
        mergeTac(other.getTac());
      }
      if (other.hasEci()) {
        mergeEci(other.getEci());
      }
      if (other.hasEarfcn()) {
        mergeEarfcn(other.getEarfcn());
      }
      if (other.hasPci()) {
        mergePci(other.getPci());
      }
      if (other.hasRsrp()) {
        mergeRsrp(other.getRsrp());
      }
      if (other.hasRsrq()) {
        mergeRsrq(other.getRsrq());
      }
      if (other.hasTa()) {
        mergeTa(other.getTa());
      }
      if (other.hasServingCell()) {
        mergeServingCell(other.getServingCell());
      }
      if (other.lteBandwidth_ != 0) {
        setLteBandwidthValue(other.getLteBandwidthValue());
      }
      if (!other.getProvider().isEmpty()) {
        provider_ = other.provider_;
        bitField0_ |= 0x08000000;
        onChanged();
      }
      if (other.hasSignalStrength()) {
        mergeSignalStrength(other.getSignalStrength());
      }
      if (other.hasCqi()) {
        mergeCqi(other.getCqi());
      }
      if (other.hasSlot()) {
        mergeSlot(other.getSlot());
      }
      if (other.hasSnr()) {
        mergeSnr(other.getSnr());
      }
      this.mergeUnknownFields(other.getUnknownFields());
      onChanged();
      return this;
    }

    @java.lang.Override
    public final boolean isInitialized() {
      return true;
    }

    @java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              deviceSerialNumber_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000001;
              break;
            } // case 10
            case 18: {
              deviceName_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000002;
              break;
            } // case 18
            case 26: {
              deviceTime_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000004;
              break;
            } // case 26
            case 33: {
              latitude_ = input.readDouble();
              bitField0_ |= 0x00000008;
              break;
            } // case 33
            case 41: {
              longitude_ = input.readDouble();
              bitField0_ |= 0x00000010;
              break;
            } // case 41
            case 53: {
              altitude_ = input.readFloat();
              bitField0_ |= 0x00000020;
              break;
            } // case 53
            case 58: {
              missionId_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000040;
              break;
            } // case 58
            case 64: {
              recordNumber_ = input.readInt32();
              bitField0_ |= 0x00000080;
              break;
            } // case 64
            case 72: {
              groupNumber_ = input.readInt32();
              bitField0_ |= 0x00000100;
              break;
            } // case 72
            case 80: {
              accuracy_ = input.readInt32();
              bitField0_ |= 0x00000200;
              break;
            } // case 80
            case 130: {
              input.readMessage(
                  getMccFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00010000;
              break;
            } // case 130
            case 138: {
              input.readMessage(
                  getMncFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00020000;
              break;
            } // case 138
            case 146: {
              input.readMessage(
                  getTacFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00040000;
              break;
            } // case 146
            case 154: {
              input.readMessage(
                  getEciFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00080000;
              break;
            } // case 154
            case 162: {
              input.readMessage(
                  getEarfcnFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00100000;
              break;
            } // case 162
            case 170: {
              input.readMessage(
                  getPciFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00200000;
              break;
            } // case 170
            case 178: {
              input.readMessage(
                  getRsrpFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00400000;
              break;
            } // case 178
            case 186: {
              input.readMessage(
                  getRsrqFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00800000;
              break;
            } // case 186
            case 194: {
              input.readMessage(
                  getTaFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x01000000;
              break;
            } // case 194
            case 202: {
              input.readMessage(
                  getServingCellFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x02000000;
              break;
            } // case 202
            case 208: {
              lteBandwidth_ = input.readEnum();
              bitField0_ |= 0x04000000;
              break;
            } // case 208
            case 218: {
              provider_ = input.readStringRequireUtf8();
              bitField0_ |= 0x08000000;
              break;
            } // case 218
            case 226: {
              input.readMessage(
                  getSignalStrengthFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x10000000;
              break;
            } // case 226
            case 234: {
              input.readMessage(
                  getCqiFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x20000000;
              break;
            } // case 234
            case 242: {
              input.readMessage(
                  getSlotFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x40000000;
              break;
            } // case 242
            case 250: {
              input.readMessage(
                  getSnrFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x80000000;
              break;
            } // case 250
            case 405: {
              heading_ = input.readFloat();
              bitField0_ |= 0x00000400;
              break;
            } // case 405
            case 413: {
              pitch_ = input.readFloat();
              bitField0_ |= 0x00000800;
              break;
            } // case 413
            case 421: {
              roll_ = input.readFloat();
              bitField0_ |= 0x00001000;
              break;
            } // case 421
            case 429: {
              fieldOfView_ = input.readFloat();
              bitField0_ |= 0x00002000;
              break;
            } // case 429
            case 437: {
              receiverSensitivity_ = input.readFloat();
              bitField0_ |= 0x00004000;
              break;
            } // case 437
            case 445: {
              speed_ = input.readFloat();
              bitField0_ |= 0x00008000;
              break;
            } // case 445
            default: {
              if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                done = true; // was an endgroup tag
              }
              break;
            } // default:
          } // switch (tag)
        } // while (!done)
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.unwrapIOException();
      } finally {
        onChanged();
      } // finally
      return this;
    }
    private int bitField0_;

    private java.lang.Object deviceSerialNumber_ = "";
    /**
     * string deviceSerialNumber = 1;
     * @return The deviceSerialNumber.
     */
    public java.lang.String getDeviceSerialNumber() {
      java.lang.Object ref = deviceSerialNumber_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        deviceSerialNumber_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string deviceSerialNumber = 1;
     * @return The bytes for deviceSerialNumber.
     */
    public com.google.protobuf.ByteString
        getDeviceSerialNumberBytes() {
      java.lang.Object ref = deviceSerialNumber_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deviceSerialNumber_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string deviceSerialNumber = 1;
     * @param value The deviceSerialNumber to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceSerialNumber(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      deviceSerialNumber_ = value;
      bitField0_ |= 0x00000001;
      onChanged();
      return this;
    }
    /**
     * string deviceSerialNumber = 1;
     * @return This builder for chaining.
     */
    public Builder clearDeviceSerialNumber() {
      deviceSerialNumber_ = getDefaultInstance().getDeviceSerialNumber();
      bitField0_ = (bitField0_ & ~0x00000001);
      onChanged();
      return this;
    }
    /**
     * string deviceSerialNumber = 1;
     * @param value The bytes for deviceSerialNumber to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceSerialNumberBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      deviceSerialNumber_ = value;
      bitField0_ |= 0x00000001;
      onChanged();
      return this;
    }

    private java.lang.Object deviceName_ = "";
    /**
     * string deviceName = 2;
     * @return The deviceName.
     */
    public java.lang.String getDeviceName() {
      java.lang.Object ref = deviceName_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        deviceName_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string deviceName = 2;
     * @return The bytes for deviceName.
     */
    public com.google.protobuf.ByteString
        getDeviceNameBytes() {
      java.lang.Object ref = deviceName_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deviceName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string deviceName = 2;
     * @param value The deviceName to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceName(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      deviceName_ = value;
      bitField0_ |= 0x00000002;
      onChanged();
      return this;
    }
    /**
     * string deviceName = 2;
     * @return This builder for chaining.
     */
    public Builder clearDeviceName() {
      deviceName_ = getDefaultInstance().getDeviceName();
      bitField0_ = (bitField0_ & ~0x00000002);
      onChanged();
      return this;
    }
    /**
     * string deviceName = 2;
     * @param value The bytes for deviceName to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceNameBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      deviceName_ = value;
      bitField0_ |= 0x00000002;
      onChanged();
      return this;
    }

    private java.lang.Object deviceTime_ = "";
    /**
     * string deviceTime = 3;
     * @return The deviceTime.
     */
    public java.lang.String getDeviceTime() {
      java.lang.Object ref = deviceTime_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        deviceTime_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string deviceTime = 3;
     * @return The bytes for deviceTime.
     */
    public com.google.protobuf.ByteString
        getDeviceTimeBytes() {
      java.lang.Object ref = deviceTime_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deviceTime_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string deviceTime = 3;
     * @param value The deviceTime to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceTime(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      deviceTime_ = value;
      bitField0_ |= 0x00000004;
      onChanged();
      return this;
    }
    /**
     * string deviceTime = 3;
     * @return This builder for chaining.
     */
    public Builder clearDeviceTime() {
      deviceTime_ = getDefaultInstance().getDeviceTime();
      bitField0_ = (bitField0_ & ~0x00000004);
      onChanged();
      return this;
    }
    /**
     * string deviceTime = 3;
     * @param value The bytes for deviceTime to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceTimeBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      deviceTime_ = value;
      bitField0_ |= 0x00000004;
      onChanged();
      return this;
    }

    private double latitude_ ;
    /**
     * double latitude = 4;
     * @return The latitude.
     */
    @java.lang.Override
    public double getLatitude() {
      return latitude_;
    }
    /**
     * double latitude = 4;
     * @param value The latitude to set.
     * @return This builder for chaining.
     */
    public Builder setLatitude(double value) {

      latitude_ = value;
      bitField0_ |= 0x00000008;
      onChanged();
      return this;
    }
    /**
     * double latitude = 4;
     * @return This builder for chaining.
     */
    public Builder clearLatitude() {
      bitField0_ = (bitField0_ & ~0x00000008);
      latitude_ = 0D;
      onChanged();
      return this;
    }

    private double longitude_ ;
    /**
     * double longitude = 5;
     * @return The longitude.
     */
    @java.lang.Override
    public double getLongitude() {
      return longitude_;
    }
    /**
     * double longitude = 5;
     * @param value The longitude to set.
     * @return This builder for chaining.
     */
    public Builder setLongitude(double value) {

      longitude_ = value;
      bitField0_ |= 0x00000010;
      onChanged();
      return this;
    }
    /**
     * double longitude = 5;
     * @return This builder for chaining.
     */
    public Builder clearLongitude() {
      bitField0_ = (bitField0_ & ~0x00000010);
      longitude_ = 0D;
      onChanged();
      return this;
    }

    private float altitude_ ;
    /**
     * float altitude = 6;
     * @return The altitude.
     */
    @java.lang.Override
    public float getAltitude() {
      return altitude_;
    }
    /**
     * float altitude = 6;
     * @param value The altitude to set.
     * @return This builder for chaining.
     */
    public Builder setAltitude(float value) {

      altitude_ = value;
      bitField0_ |= 0x00000020;
      onChanged();
      return this;
    }
    /**
     * float altitude = 6;
     * @return This builder for chaining.
     */
    public Builder clearAltitude() {
      bitField0_ = (bitField0_ & ~0x00000020);
      altitude_ = 0F;
      onChanged();
      return this;
    }

    private java.lang.Object missionId_ = "";
    /**
     * string missionId = 7;
     * @return The missionId.
     */
    public java.lang.String getMissionId() {
      java.lang.Object ref = missionId_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        missionId_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string missionId = 7;
     * @return The bytes for missionId.
     */
    public com.google.protobuf.ByteString
        getMissionIdBytes() {
      java.lang.Object ref = missionId_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        missionId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string missionId = 7;
     * @param value The missionId to set.
     * @return This builder for chaining.
     */
    public Builder setMissionId(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      missionId_ = value;
      bitField0_ |= 0x00000040;
      onChanged();
      return this;
    }
    /**
     * string missionId = 7;
     * @return This builder for chaining.
     */
    public Builder clearMissionId() {
      missionId_ = getDefaultInstance().getMissionId();
      bitField0_ = (bitField0_ & ~0x00000040);
      onChanged();
      return this;
    }
    /**
     * string missionId = 7;
     * @param value The bytes for missionId to set.
     * @return This builder for chaining.
     */
    public Builder setMissionIdBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      missionId_ = value;
      bitField0_ |= 0x00000040;
      onChanged();
      return this;
    }

    private int recordNumber_ ;
    /**
     * int32 recordNumber = 8;
     * @return The recordNumber.
     */
    @java.lang.Override
    public int getRecordNumber() {
      return recordNumber_;
    }
    /**
     * int32 recordNumber = 8;
     * @param value The recordNumber to set.
     * @return This builder for chaining.
     */
    public Builder setRecordNumber(int value) {

      recordNumber_ = value;
      bitField0_ |= 0x00000080;
      onChanged();
      return this;
    }
    /**
     * int32 recordNumber = 8;
     * @return This builder for chaining.
     */
    public Builder clearRecordNumber() {
      bitField0_ = (bitField0_ & ~0x00000080);
      recordNumber_ = 0;
      onChanged();
      return this;
    }

    private int groupNumber_ ;
    /**
     * int32 groupNumber = 9;
     * @return The groupNumber.
     */
    @java.lang.Override
    public int getGroupNumber() {
      return groupNumber_;
    }
    /**
     * int32 groupNumber = 9;
     * @param value The groupNumber to set.
     * @return This builder for chaining.
     */
    public Builder setGroupNumber(int value) {

      groupNumber_ = value;
      bitField0_ |= 0x00000100;
      onChanged();
      return this;
    }
    /**
     * int32 groupNumber = 9;
     * @return This builder for chaining.
     */
    public Builder clearGroupNumber() {
      bitField0_ = (bitField0_ & ~0x00000100);
      groupNumber_ = 0;
      onChanged();
      return this;
    }

    private int accuracy_ ;
    /**
     * int32 accuracy = 10;
     * @return The accuracy.
     */
    @java.lang.Override
    public int getAccuracy() {
      return accuracy_;
    }
    /**
     * int32 accuracy = 10;
     * @param value The accuracy to set.
     * @return This builder for chaining.
     */
    public Builder setAccuracy(int value) {

      accuracy_ = value;
      bitField0_ |= 0x00000200;
      onChanged();
      return this;
    }
    /**
     * int32 accuracy = 10;
     * @return This builder for chaining.
     */
    public Builder clearAccuracy() {
      bitField0_ = (bitField0_ & ~0x00000200);
      accuracy_ = 0;
      onChanged();
      return this;
    }

    private float heading_ ;
    /**
     * float heading = 50;
     * @return The heading.
     */
    @java.lang.Override
    public float getHeading() {
      return heading_;
    }
    /**
     * float heading = 50;
     * @param value The heading to set.
     * @return This builder for chaining.
     */
    public Builder setHeading(float value) {

      heading_ = value;
      bitField0_ |= 0x00000400;
      onChanged();
      return this;
    }
    /**
     * float heading = 50;
     * @return This builder for chaining.
     */
    public Builder clearHeading() {
      bitField0_ = (bitField0_ & ~0x00000400);
      heading_ = 0F;
      onChanged();
      return this;
    }

    private float pitch_ ;
    /**
     * float pitch = 51;
     * @return The pitch.
     */
    @java.lang.Override
    public float getPitch() {
      return pitch_;
    }
    /**
     * float pitch = 51;
     * @param value The pitch to set.
     * @return This builder for chaining.
     */
    public Builder setPitch(float value) {

      pitch_ = value;
      bitField0_ |= 0x00000800;
      onChanged();
      return this;
    }
    /**
     * float pitch = 51;
     * @return This builder for chaining.
     */
    public Builder clearPitch() {
      bitField0_ = (bitField0_ & ~0x00000800);
      pitch_ = 0F;
      onChanged();
      return this;
    }

    private float roll_ ;
    /**
     * float roll = 52;
     * @return The roll.
     */
    @java.lang.Override
    public float getRoll() {
      return roll_;
    }
    /**
     * float roll = 52;
     * @param value The roll to set.
     * @return This builder for chaining.
     */
    public Builder setRoll(float value) {

      roll_ = value;
      bitField0_ |= 0x00001000;
      onChanged();
      return this;
    }
    /**
     * float roll = 52;
     * @return This builder for chaining.
     */
    public Builder clearRoll() {
      bitField0_ = (bitField0_ & ~0x00001000);
      roll_ = 0F;
      onChanged();
      return this;
    }

    private float fieldOfView_ ;
    /**
     * float fieldOfView = 53;
     * @return The fieldOfView.
     */
    @java.lang.Override
    public float getFieldOfView() {
      return fieldOfView_;
    }
    /**
     * float fieldOfView = 53;
     * @param value The fieldOfView to set.
     * @return This builder for chaining.
     */
    public Builder setFieldOfView(float value) {

      fieldOfView_ = value;
      bitField0_ |= 0x00002000;
      onChanged();
      return this;
    }
    /**
     * float fieldOfView = 53;
     * @return This builder for chaining.
     */
    public Builder clearFieldOfView() {
      bitField0_ = (bitField0_ & ~0x00002000);
      fieldOfView_ = 0F;
      onChanged();
      return this;
    }

    private float receiverSensitivity_ ;
    /**
     * float receiverSensitivity = 54;
     * @return The receiverSensitivity.
     */
    @java.lang.Override
    public float getReceiverSensitivity() {
      return receiverSensitivity_;
    }
    /**
     * float receiverSensitivity = 54;
     * @param value The receiverSensitivity to set.
     * @return This builder for chaining.
     */
    public Builder setReceiverSensitivity(float value) {

      receiverSensitivity_ = value;
      bitField0_ |= 0x00004000;
      onChanged();
      return this;
    }
    /**
     * float receiverSensitivity = 54;
     * @return This builder for chaining.
     */
    public Builder clearReceiverSensitivity() {
      bitField0_ = (bitField0_ & ~0x00004000);
      receiverSensitivity_ = 0F;
      onChanged();
      return this;
    }

    private float speed_ ;
    /**
     * float speed = 55;
     * @return The speed.
     */
    @java.lang.Override
    public float getSpeed() {
      return speed_;
    }
    /**
     * float speed = 55;
     * @param value The speed to set.
     * @return This builder for chaining.
     */
    public Builder setSpeed(float value) {

      speed_ = value;
      bitField0_ |= 0x00008000;
      onChanged();
      return this;
    }
    /**
     * float speed = 55;
     * @return This builder for chaining.
     */
    public Builder clearSpeed() {
      bitField0_ = (bitField0_ & ~0x00008000);
      speed_ = 0F;
      onChanged();
      return this;
    }

    private com.google.protobuf.Int32Value mcc_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> mccBuilder_;
    /**
     * .google.protobuf.Int32Value mcc = 16;
     * @return Whether the mcc field is set.
     */
    public boolean hasMcc() {
      return ((bitField0_ & 0x00010000) != 0);
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     * @return The mcc.
     */
    public com.google.protobuf.Int32Value getMcc() {
      if (mccBuilder_ == null) {
        return mcc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
      } else {
        return mccBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder setMcc(com.google.protobuf.Int32Value value) {
      if (mccBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        mcc_ = value;
      } else {
        mccBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00010000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder setMcc(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (mccBuilder_ == null) {
        mcc_ = builderForValue.build();
      } else {
        mccBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00010000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder mergeMcc(com.google.protobuf.Int32Value value) {
      if (mccBuilder_ == null) {
        if (((bitField0_ & 0x00010000) != 0) &&
          mcc_ != null &&
          mcc_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getMccBuilder().mergeFrom(value);
        } else {
          mcc_ = value;
        }
      } else {
        mccBuilder_.mergeFrom(value);
      }
      if (mcc_ != null) {
        bitField0_ |= 0x00010000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder clearMcc() {
      bitField0_ = (bitField0_ & ~0x00010000);
      mcc_ = null;
      if (mccBuilder_ != null) {
        mccBuilder_.dispose();
        mccBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public com.google.protobuf.Int32Value.Builder getMccBuilder() {
      bitField0_ |= 0x00010000;
      onChanged();
      return getMccFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public com.google.protobuf.Int32ValueOrBuilder getMccOrBuilder() {
      if (mccBuilder_ != null) {
        return mccBuilder_.getMessageOrBuilder();
      } else {
        return mcc_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
      }
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getMccFieldBuilder() {
      if (mccBuilder_ == null) {
        mccBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getMcc(),
                getParentForChildren(),
                isClean());
        mcc_ = null;
      }
      return mccBuilder_;
    }

    private com.google.protobuf.Int32Value mnc_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> mncBuilder_;
    /**
     * .google.protobuf.Int32Value mnc = 17;
     * @return Whether the mnc field is set.
     */
    public boolean hasMnc() {
      return ((bitField0_ & 0x00020000) != 0);
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     * @return The mnc.
     */
    public com.google.protobuf.Int32Value getMnc() {
      if (mncBuilder_ == null) {
        return mnc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
      } else {
        return mncBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder setMnc(com.google.protobuf.Int32Value value) {
      if (mncBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        mnc_ = value;
      } else {
        mncBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00020000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder setMnc(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (mncBuilder_ == null) {
        mnc_ = builderForValue.build();
      } else {
        mncBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00020000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder mergeMnc(com.google.protobuf.Int32Value value) {
      if (mncBuilder_ == null) {
        if (((bitField0_ & 0x00020000) != 0) &&
          mnc_ != null &&
          mnc_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getMncBuilder().mergeFrom(value);
        } else {
          mnc_ = value;
        }
      } else {
        mncBuilder_.mergeFrom(value);
      }
      if (mnc_ != null) {
        bitField0_ |= 0x00020000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder clearMnc() {
      bitField0_ = (bitField0_ & ~0x00020000);
      mnc_ = null;
      if (mncBuilder_ != null) {
        mncBuilder_.dispose();
        mncBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public com.google.protobuf.Int32Value.Builder getMncBuilder() {
      bitField0_ |= 0x00020000;
      onChanged();
      return getMncFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public com.google.protobuf.Int32ValueOrBuilder getMncOrBuilder() {
      if (mncBuilder_ != null) {
        return mncBuilder_.getMessageOrBuilder();
      } else {
        return mnc_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
      }
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getMncFieldBuilder() {
      if (mncBuilder_ == null) {
        mncBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getMnc(),
                getParentForChildren(),
                isClean());
        mnc_ = null;
      }
      return mncBuilder_;
    }

    private com.google.protobuf.Int32Value tac_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> tacBuilder_;
    /**
     * .google.protobuf.Int32Value tac = 18;
     * @return Whether the tac field is set.
     */
    public boolean hasTac() {
      return ((bitField0_ & 0x00040000) != 0);
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     * @return The tac.
     */
    public com.google.protobuf.Int32Value getTac() {
      if (tacBuilder_ == null) {
        return tac_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : tac_;
      } else {
        return tacBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     */
    public Builder setTac(com.google.protobuf.Int32Value value) {
      if (tacBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        tac_ = value;
      } else {
        tacBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00040000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     */
    public Builder setTac(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (tacBuilder_ == null) {
        tac_ = builderForValue.build();
      } else {
        tacBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00040000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     */
    public Builder mergeTac(com.google.protobuf.Int32Value value) {
      if (tacBuilder_ == null) {
        if (((bitField0_ & 0x00040000) != 0) &&
          tac_ != null &&
          tac_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getTacBuilder().mergeFrom(value);
        } else {
          tac_ = value;
        }
      } else {
        tacBuilder_.mergeFrom(value);
      }
      if (tac_ != null) {
        bitField0_ |= 0x00040000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     */
    public Builder clearTac() {
      bitField0_ = (bitField0_ & ~0x00040000);
      tac_ = null;
      if (tacBuilder_ != null) {
        tacBuilder_.dispose();
        tacBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     */
    public com.google.protobuf.Int32Value.Builder getTacBuilder() {
      bitField0_ |= 0x00040000;
      onChanged();
      return getTacFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     */
    public com.google.protobuf.Int32ValueOrBuilder getTacOrBuilder() {
      if (tacBuilder_ != null) {
        return tacBuilder_.getMessageOrBuilder();
      } else {
        return tac_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : tac_;
      }
    }
    /**
     * .google.protobuf.Int32Value tac = 18;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getTacFieldBuilder() {
      if (tacBuilder_ == null) {
        tacBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getTac(),
                getParentForChildren(),
                isClean());
        tac_ = null;
      }
      return tacBuilder_;
    }

    private com.google.protobuf.Int32Value eci_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> eciBuilder_;
    /**
     * .google.protobuf.Int32Value eci = 19;
     * @return Whether the eci field is set.
     */
    public boolean hasEci() {
      return ((bitField0_ & 0x00080000) != 0);
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     * @return The eci.
     */
    public com.google.protobuf.Int32Value getEci() {
      if (eciBuilder_ == null) {
        return eci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : eci_;
      } else {
        return eciBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     */
    public Builder setEci(com.google.protobuf.Int32Value value) {
      if (eciBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        eci_ = value;
      } else {
        eciBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00080000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     */
    public Builder setEci(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (eciBuilder_ == null) {
        eci_ = builderForValue.build();
      } else {
        eciBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00080000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     */
    public Builder mergeEci(com.google.protobuf.Int32Value value) {
      if (eciBuilder_ == null) {
        if (((bitField0_ & 0x00080000) != 0) &&
          eci_ != null &&
          eci_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getEciBuilder().mergeFrom(value);
        } else {
          eci_ = value;
        }
      } else {
        eciBuilder_.mergeFrom(value);
      }
      if (eci_ != null) {
        bitField0_ |= 0x00080000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     */
    public Builder clearEci() {
      bitField0_ = (bitField0_ & ~0x00080000);
      eci_ = null;
      if (eciBuilder_ != null) {
        eciBuilder_.dispose();
        eciBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     */
    public com.google.protobuf.Int32Value.Builder getEciBuilder() {
      bitField0_ |= 0x00080000;
      onChanged();
      return getEciFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     */
    public com.google.protobuf.Int32ValueOrBuilder getEciOrBuilder() {
      if (eciBuilder_ != null) {
        return eciBuilder_.getMessageOrBuilder();
      } else {
        return eci_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : eci_;
      }
    }
    /**
     * .google.protobuf.Int32Value eci = 19;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getEciFieldBuilder() {
      if (eciBuilder_ == null) {
        eciBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getEci(),
                getParentForChildren(),
                isClean());
        eci_ = null;
      }
      return eciBuilder_;
    }

    private com.google.protobuf.Int32Value earfcn_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> earfcnBuilder_;
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     * @return Whether the earfcn field is set.
     */
    public boolean hasEarfcn() {
      return ((bitField0_ & 0x00100000) != 0);
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     * @return The earfcn.
     */
    public com.google.protobuf.Int32Value getEarfcn() {
      if (earfcnBuilder_ == null) {
        return earfcn_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : earfcn_;
      } else {
        return earfcnBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     */
    public Builder setEarfcn(com.google.protobuf.Int32Value value) {
      if (earfcnBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        earfcn_ = value;
      } else {
        earfcnBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00100000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     */
    public Builder setEarfcn(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (earfcnBuilder_ == null) {
        earfcn_ = builderForValue.build();
      } else {
        earfcnBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00100000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     */
    public Builder mergeEarfcn(com.google.protobuf.Int32Value value) {
      if (earfcnBuilder_ == null) {
        if (((bitField0_ & 0x00100000) != 0) &&
          earfcn_ != null &&
          earfcn_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getEarfcnBuilder().mergeFrom(value);
        } else {
          earfcn_ = value;
        }
      } else {
        earfcnBuilder_.mergeFrom(value);
      }
      if (earfcn_ != null) {
        bitField0_ |= 0x00100000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     */
    public Builder clearEarfcn() {
      bitField0_ = (bitField0_ & ~0x00100000);
      earfcn_ = null;
      if (earfcnBuilder_ != null) {
        earfcnBuilder_.dispose();
        earfcnBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     */
    public com.google.protobuf.Int32Value.Builder getEarfcnBuilder() {
      bitField0_ |= 0x00100000;
      onChanged();
      return getEarfcnFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     */
    public com.google.protobuf.Int32ValueOrBuilder getEarfcnOrBuilder() {
      if (earfcnBuilder_ != null) {
        return earfcnBuilder_.getMessageOrBuilder();
      } else {
        return earfcn_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : earfcn_;
      }
    }
    /**
     * .google.protobuf.Int32Value earfcn = 20;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getEarfcnFieldBuilder() {
      if (earfcnBuilder_ == null) {
        earfcnBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getEarfcn(),
                getParentForChildren(),
                isClean());
        earfcn_ = null;
      }
      return earfcnBuilder_;
    }

    private com.google.protobuf.Int32Value pci_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> pciBuilder_;
    /**
     * .google.protobuf.Int32Value pci = 21;
     * @return Whether the pci field is set.
     */
    public boolean hasPci() {
      return ((bitField0_ & 0x00200000) != 0);
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     * @return The pci.
     */
    public com.google.protobuf.Int32Value getPci() {
      if (pciBuilder_ == null) {
        return pci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : pci_;
      } else {
        return pciBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     */
    public Builder setPci(com.google.protobuf.Int32Value value) {
      if (pciBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        pci_ = value;
      } else {
        pciBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00200000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     */
    public Builder setPci(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (pciBuilder_ == null) {
        pci_ = builderForValue.build();
      } else {
        pciBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00200000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     */
    public Builder mergePci(com.google.protobuf.Int32Value value) {
      if (pciBuilder_ == null) {
        if (((bitField0_ & 0x00200000) != 0) &&
          pci_ != null &&
          pci_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getPciBuilder().mergeFrom(value);
        } else {
          pci_ = value;
        }
      } else {
        pciBuilder_.mergeFrom(value);
      }
      if (pci_ != null) {
        bitField0_ |= 0x00200000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     */
    public Builder clearPci() {
      bitField0_ = (bitField0_ & ~0x00200000);
      pci_ = null;
      if (pciBuilder_ != null) {
        pciBuilder_.dispose();
        pciBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     */
    public com.google.protobuf.Int32Value.Builder getPciBuilder() {
      bitField0_ |= 0x00200000;
      onChanged();
      return getPciFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     */
    public com.google.protobuf.Int32ValueOrBuilder getPciOrBuilder() {
      if (pciBuilder_ != null) {
        return pciBuilder_.getMessageOrBuilder();
      } else {
        return pci_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : pci_;
      }
    }
    /**
     * .google.protobuf.Int32Value pci = 21;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getPciFieldBuilder() {
      if (pciBuilder_ == null) {
        pciBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getPci(),
                getParentForChildren(),
                isClean());
        pci_ = null;
      }
      return pciBuilder_;
    }

    private com.google.protobuf.FloatValue rsrp_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> rsrpBuilder_;
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     * @return Whether the rsrp field is set.
     */
    public boolean hasRsrp() {
      return ((bitField0_ & 0x00400000) != 0);
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     * @return The rsrp.
     */
    public com.google.protobuf.FloatValue getRsrp() {
      if (rsrpBuilder_ == null) {
        return rsrp_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : rsrp_;
      } else {
        return rsrpBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     */
    public Builder setRsrp(com.google.protobuf.FloatValue value) {
      if (rsrpBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        rsrp_ = value;
      } else {
        rsrpBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00400000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     */
    public Builder setRsrp(
        com.google.protobuf.FloatValue.Builder builderForValue) {
      if (rsrpBuilder_ == null) {
        rsrp_ = builderForValue.build();
      } else {
        rsrpBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00400000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     */
    public Builder mergeRsrp(com.google.protobuf.FloatValue value) {
      if (rsrpBuilder_ == null) {
        if (((bitField0_ & 0x00400000) != 0) &&
          rsrp_ != null &&
          rsrp_ != com.google.protobuf.FloatValue.getDefaultInstance()) {
          getRsrpBuilder().mergeFrom(value);
        } else {
          rsrp_ = value;
        }
      } else {
        rsrpBuilder_.mergeFrom(value);
      }
      if (rsrp_ != null) {
        bitField0_ |= 0x00400000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     */
    public Builder clearRsrp() {
      bitField0_ = (bitField0_ & ~0x00400000);
      rsrp_ = null;
      if (rsrpBuilder_ != null) {
        rsrpBuilder_.dispose();
        rsrpBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     */
    public com.google.protobuf.FloatValue.Builder getRsrpBuilder() {
      bitField0_ |= 0x00400000;
      onChanged();
      return getRsrpFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     */
    public com.google.protobuf.FloatValueOrBuilder getRsrpOrBuilder() {
      if (rsrpBuilder_ != null) {
        return rsrpBuilder_.getMessageOrBuilder();
      } else {
        return rsrp_ == null ?
            com.google.protobuf.FloatValue.getDefaultInstance() : rsrp_;
      }
    }
    /**
     * .google.protobuf.FloatValue rsrp = 22;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> 
        getRsrpFieldBuilder() {
      if (rsrpBuilder_ == null) {
        rsrpBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder>(
                getRsrp(),
                getParentForChildren(),
                isClean());
        rsrp_ = null;
      }
      return rsrpBuilder_;
    }

    private com.google.protobuf.FloatValue rsrq_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> rsrqBuilder_;
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     * @return Whether the rsrq field is set.
     */
    public boolean hasRsrq() {
      return ((bitField0_ & 0x00800000) != 0);
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     * @return The rsrq.
     */
    public com.google.protobuf.FloatValue getRsrq() {
      if (rsrqBuilder_ == null) {
        return rsrq_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : rsrq_;
      } else {
        return rsrqBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     */
    public Builder setRsrq(com.google.protobuf.FloatValue value) {
      if (rsrqBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        rsrq_ = value;
      } else {
        rsrqBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00800000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     */
    public Builder setRsrq(
        com.google.protobuf.FloatValue.Builder builderForValue) {
      if (rsrqBuilder_ == null) {
        rsrq_ = builderForValue.build();
      } else {
        rsrqBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00800000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     */
    public Builder mergeRsrq(com.google.protobuf.FloatValue value) {
      if (rsrqBuilder_ == null) {
        if (((bitField0_ & 0x00800000) != 0) &&
          rsrq_ != null &&
          rsrq_ != com.google.protobuf.FloatValue.getDefaultInstance()) {
          getRsrqBuilder().mergeFrom(value);
        } else {
          rsrq_ = value;
        }
      } else {
        rsrqBuilder_.mergeFrom(value);
      }
      if (rsrq_ != null) {
        bitField0_ |= 0x00800000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     */
    public Builder clearRsrq() {
      bitField0_ = (bitField0_ & ~0x00800000);
      rsrq_ = null;
      if (rsrqBuilder_ != null) {
        rsrqBuilder_.dispose();
        rsrqBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     */
    public com.google.protobuf.FloatValue.Builder getRsrqBuilder() {
      bitField0_ |= 0x00800000;
      onChanged();
      return getRsrqFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     */
    public com.google.protobuf.FloatValueOrBuilder getRsrqOrBuilder() {
      if (rsrqBuilder_ != null) {
        return rsrqBuilder_.getMessageOrBuilder();
      } else {
        return rsrq_ == null ?
            com.google.protobuf.FloatValue.getDefaultInstance() : rsrq_;
      }
    }
    /**
     * .google.protobuf.FloatValue rsrq = 23;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> 
        getRsrqFieldBuilder() {
      if (rsrqBuilder_ == null) {
        rsrqBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder>(
                getRsrq(),
                getParentForChildren(),
                isClean());
        rsrq_ = null;
      }
      return rsrqBuilder_;
    }

    private com.google.protobuf.Int32Value ta_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> taBuilder_;
    /**
     * .google.protobuf.Int32Value ta = 24;
     * @return Whether the ta field is set.
     */
    public boolean hasTa() {
      return ((bitField0_ & 0x01000000) != 0);
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     * @return The ta.
     */
    public com.google.protobuf.Int32Value getTa() {
      if (taBuilder_ == null) {
        return ta_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
      } else {
        return taBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder setTa(com.google.protobuf.Int32Value value) {
      if (taBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ta_ = value;
      } else {
        taBuilder_.setMessage(value);
      }
      bitField0_ |= 0x01000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder setTa(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (taBuilder_ == null) {
        ta_ = builderForValue.build();
      } else {
        taBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x01000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder mergeTa(com.google.protobuf.Int32Value value) {
      if (taBuilder_ == null) {
        if (((bitField0_ & 0x01000000) != 0) &&
          ta_ != null &&
          ta_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getTaBuilder().mergeFrom(value);
        } else {
          ta_ = value;
        }
      } else {
        taBuilder_.mergeFrom(value);
      }
      if (ta_ != null) {
        bitField0_ |= 0x01000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder clearTa() {
      bitField0_ = (bitField0_ & ~0x01000000);
      ta_ = null;
      if (taBuilder_ != null) {
        taBuilder_.dispose();
        taBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public com.google.protobuf.Int32Value.Builder getTaBuilder() {
      bitField0_ |= 0x01000000;
      onChanged();
      return getTaFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public com.google.protobuf.Int32ValueOrBuilder getTaOrBuilder() {
      if (taBuilder_ != null) {
        return taBuilder_.getMessageOrBuilder();
      } else {
        return ta_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
      }
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getTaFieldBuilder() {
      if (taBuilder_ == null) {
        taBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getTa(),
                getParentForChildren(),
                isClean());
        ta_ = null;
      }
      return taBuilder_;
    }

    private com.google.protobuf.BoolValue servingCell_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder> servingCellBuilder_;
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     * @return Whether the servingCell field is set.
     */
    public boolean hasServingCell() {
      return ((bitField0_ & 0x02000000) != 0);
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     * @return The servingCell.
     */
    public com.google.protobuf.BoolValue getServingCell() {
      if (servingCellBuilder_ == null) {
        return servingCell_ == null ? com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
      } else {
        return servingCellBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder setServingCell(com.google.protobuf.BoolValue value) {
      if (servingCellBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        servingCell_ = value;
      } else {
        servingCellBuilder_.setMessage(value);
      }
      bitField0_ |= 0x02000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder setServingCell(
        com.google.protobuf.BoolValue.Builder builderForValue) {
      if (servingCellBuilder_ == null) {
        servingCell_ = builderForValue.build();
      } else {
        servingCellBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x02000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder mergeServingCell(com.google.protobuf.BoolValue value) {
      if (servingCellBuilder_ == null) {
        if (((bitField0_ & 0x02000000) != 0) &&
          servingCell_ != null &&
          servingCell_ != com.google.protobuf.BoolValue.getDefaultInstance()) {
          getServingCellBuilder().mergeFrom(value);
        } else {
          servingCell_ = value;
        }
      } else {
        servingCellBuilder_.mergeFrom(value);
      }
      if (servingCell_ != null) {
        bitField0_ |= 0x02000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder clearServingCell() {
      bitField0_ = (bitField0_ & ~0x02000000);
      servingCell_ = null;
      if (servingCellBuilder_ != null) {
        servingCellBuilder_.dispose();
        servingCellBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public com.google.protobuf.BoolValue.Builder getServingCellBuilder() {
      bitField0_ |= 0x02000000;
      onChanged();
      return getServingCellFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public com.google.protobuf.BoolValueOrBuilder getServingCellOrBuilder() {
      if (servingCellBuilder_ != null) {
        return servingCellBuilder_.getMessageOrBuilder();
      } else {
        return servingCell_ == null ?
            com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
      }
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder> 
        getServingCellFieldBuilder() {
      if (servingCellBuilder_ == null) {
        servingCellBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder>(
                getServingCell(),
                getParentForChildren(),
                isClean());
        servingCell_ = null;
      }
      return servingCellBuilder_;
    }

    private int lteBandwidth_ = 0;
    /**
     * .com.craxiom.messaging.ltebandwidth.LteBandwidth lteBandwidth = 26;
     * @return The enum numeric value on the wire for lteBandwidth.
     */
    @java.lang.Override public int getLteBandwidthValue() {
      return lteBandwidth_;
    }
    /**
     * .com.craxiom.messaging.ltebandwidth.LteBandwidth lteBandwidth = 26;
     * @param value The enum numeric value on the wire for lteBandwidth to set.
     * @return This builder for chaining.
     */
    public Builder setLteBandwidthValue(int value) {
      lteBandwidth_ = value;
      bitField0_ |= 0x04000000;
      onChanged();
      return this;
    }
    /**
     * .com.craxiom.messaging.ltebandwidth.LteBandwidth lteBandwidth = 26;
     * @return The lteBandwidth.
     */
    @java.lang.Override
    public com.craxiom.messaging.LteBandwidth getLteBandwidth() {
      com.craxiom.messaging.LteBandwidth result = com.craxiom.messaging.LteBandwidth.forNumber(lteBandwidth_);
      return result == null ? com.craxiom.messaging.LteBandwidth.UNRECOGNIZED : result;
    }
    /**
     * .com.craxiom.messaging.ltebandwidth.LteBandwidth lteBandwidth = 26;
     * @param value The lteBandwidth to set.
     * @return This builder for chaining.
     */
    public Builder setLteBandwidth(com.craxiom.messaging.LteBandwidth value) {
      if (value == null) {
        throw new NullPointerException();
      }
      bitField0_ |= 0x04000000;
      lteBandwidth_ = value.getNumber();
      onChanged();
      return this;
    }
    /**
     * .com.craxiom.messaging.ltebandwidth.LteBandwidth lteBandwidth = 26;
     * @return This builder for chaining.
     */
    public Builder clearLteBandwidth() {
      bitField0_ = (bitField0_ & ~0x04000000);
      lteBandwidth_ = 0;
      onChanged();
      return this;
    }

    private java.lang.Object provider_ = "";
    /**
     * string provider = 27;
     * @return The provider.
     */
    public java.lang.String getProvider() {
      java.lang.Object ref = provider_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        provider_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string provider = 27;
     * @return The bytes for provider.
     */
    public com.google.protobuf.ByteString
        getProviderBytes() {
      java.lang.Object ref = provider_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        provider_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string provider = 27;
     * @param value The provider to set.
     * @return This builder for chaining.
     */
    public Builder setProvider(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      provider_ = value;
      bitField0_ |= 0x08000000;
      onChanged();
      return this;
    }
    /**
     * string provider = 27;
     * @return This builder for chaining.
     */
    public Builder clearProvider() {
      provider_ = getDefaultInstance().getProvider();
      bitField0_ = (bitField0_ & ~0x08000000);
      onChanged();
      return this;
    }
    /**
     * string provider = 27;
     * @param value The bytes for provider to set.
     * @return This builder for chaining.
     */
    public Builder setProviderBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      provider_ = value;
      bitField0_ |= 0x08000000;
      onChanged();
      return this;
    }

    private com.google.protobuf.FloatValue signalStrength_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> signalStrengthBuilder_;
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     * @return Whether the signalStrength field is set.
     */
    public boolean hasSignalStrength() {
      return ((bitField0_ & 0x10000000) != 0);
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     * @return The signalStrength.
     */
    public com.google.protobuf.FloatValue getSignalStrength() {
      if (signalStrengthBuilder_ == null) {
        return signalStrength_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
      } else {
        return signalStrengthBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     */
    public Builder setSignalStrength(com.google.protobuf.FloatValue value) {
      if (signalStrengthBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        signalStrength_ = value;
      } else {
        signalStrengthBuilder_.setMessage(value);
      }
      bitField0_ |= 0x10000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     */
    public Builder setSignalStrength(
        com.google.protobuf.FloatValue.Builder builderForValue) {
      if (signalStrengthBuilder_ == null) {
        signalStrength_ = builderForValue.build();
      } else {
        signalStrengthBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x10000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     */
    public Builder mergeSignalStrength(com.google.protobuf.FloatValue value) {
      if (signalStrengthBuilder_ == null) {
        if (((bitField0_ & 0x10000000) != 0) &&
          signalStrength_ != null &&
          signalStrength_ != com.google.protobuf.FloatValue.getDefaultInstance()) {
          getSignalStrengthBuilder().mergeFrom(value);
        } else {
          signalStrength_ = value;
        }
      } else {
        signalStrengthBuilder_.mergeFrom(value);
      }
      if (signalStrength_ != null) {
        bitField0_ |= 0x10000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     */
    public Builder clearSignalStrength() {
      bitField0_ = (bitField0_ & ~0x10000000);
      signalStrength_ = null;
      if (signalStrengthBuilder_ != null) {
        signalStrengthBuilder_.dispose();
        signalStrengthBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     */
    public com.google.protobuf.FloatValue.Builder getSignalStrengthBuilder() {
      bitField0_ |= 0x10000000;
      onChanged();
      return getSignalStrengthFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     */
    public com.google.protobuf.FloatValueOrBuilder getSignalStrengthOrBuilder() {
      if (signalStrengthBuilder_ != null) {
        return signalStrengthBuilder_.getMessageOrBuilder();
      } else {
        return signalStrength_ == null ?
            com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
      }
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 28;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> 
        getSignalStrengthFieldBuilder() {
      if (signalStrengthBuilder_ == null) {
        signalStrengthBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder>(
                getSignalStrength(),
                getParentForChildren(),
                isClean());
        signalStrength_ = null;
      }
      return signalStrengthBuilder_;
    }

    private com.google.protobuf.Int32Value cqi_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> cqiBuilder_;
    /**
     * .google.protobuf.Int32Value cqi = 29;
     * @return Whether the cqi field is set.
     */
    public boolean hasCqi() {
      return ((bitField0_ & 0x20000000) != 0);
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     * @return The cqi.
     */
    public com.google.protobuf.Int32Value getCqi() {
      if (cqiBuilder_ == null) {
        return cqi_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : cqi_;
      } else {
        return cqiBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     */
    public Builder setCqi(com.google.protobuf.Int32Value value) {
      if (cqiBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        cqi_ = value;
      } else {
        cqiBuilder_.setMessage(value);
      }
      bitField0_ |= 0x20000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     */
    public Builder setCqi(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (cqiBuilder_ == null) {
        cqi_ = builderForValue.build();
      } else {
        cqiBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x20000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     */
    public Builder mergeCqi(com.google.protobuf.Int32Value value) {
      if (cqiBuilder_ == null) {
        if (((bitField0_ & 0x20000000) != 0) &&
          cqi_ != null &&
          cqi_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getCqiBuilder().mergeFrom(value);
        } else {
          cqi_ = value;
        }
      } else {
        cqiBuilder_.mergeFrom(value);
      }
      if (cqi_ != null) {
        bitField0_ |= 0x20000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     */
    public Builder clearCqi() {
      bitField0_ = (bitField0_ & ~0x20000000);
      cqi_ = null;
      if (cqiBuilder_ != null) {
        cqiBuilder_.dispose();
        cqiBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     */
    public com.google.protobuf.Int32Value.Builder getCqiBuilder() {
      bitField0_ |= 0x20000000;
      onChanged();
      return getCqiFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     */
    public com.google.protobuf.Int32ValueOrBuilder getCqiOrBuilder() {
      if (cqiBuilder_ != null) {
        return cqiBuilder_.getMessageOrBuilder();
      } else {
        return cqi_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : cqi_;
      }
    }
    /**
     * .google.protobuf.Int32Value cqi = 29;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getCqiFieldBuilder() {
      if (cqiBuilder_ == null) {
        cqiBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getCqi(),
                getParentForChildren(),
                isClean());
        cqi_ = null;
      }
      return cqiBuilder_;
    }

    private com.google.protobuf.Int32Value slot_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> slotBuilder_;
    /**
     * .google.protobuf.Int32Value slot = 30;
     * @return Whether the slot field is set.
     */
    public boolean hasSlot() {
      return ((bitField0_ & 0x40000000) != 0);
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     * @return The slot.
     */
    public com.google.protobuf.Int32Value getSlot() {
      if (slotBuilder_ == null) {
        return slot_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
      } else {
        return slotBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     */
    public Builder setSlot(com.google.protobuf.Int32Value value) {
      if (slotBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        slot_ = value;
      } else {
        slotBuilder_.setMessage(value);
      }
      bitField0_ |= 0x40000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     */
    public Builder setSlot(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (slotBuilder_ == null) {
        slot_ = builderForValue.build();
      } else {
        slotBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x40000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     */
    public Builder mergeSlot(com.google.protobuf.Int32Value value) {
      if (slotBuilder_ == null) {
        if (((bitField0_ & 0x40000000) != 0) &&
          slot_ != null &&
          slot_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getSlotBuilder().mergeFrom(value);
        } else {
          slot_ = value;
        }
      } else {
        slotBuilder_.mergeFrom(value);
      }
      if (slot_ != null) {
        bitField0_ |= 0x40000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     */
    public Builder clearSlot() {
      bitField0_ = (bitField0_ & ~0x40000000);
      slot_ = null;
      if (slotBuilder_ != null) {
        slotBuilder_.dispose();
        slotBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     */
    public com.google.protobuf.Int32Value.Builder getSlotBuilder() {
      bitField0_ |= 0x40000000;
      onChanged();
      return getSlotFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     */
    public com.google.protobuf.Int32ValueOrBuilder getSlotOrBuilder() {
      if (slotBuilder_ != null) {
        return slotBuilder_.getMessageOrBuilder();
      } else {
        return slot_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
      }
    }
    /**
     * .google.protobuf.Int32Value slot = 30;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getSlotFieldBuilder() {
      if (slotBuilder_ == null) {
        slotBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getSlot(),
                getParentForChildren(),
                isClean());
        slot_ = null;
      }
      return slotBuilder_;
    }

    private com.google.protobuf.FloatValue snr_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> snrBuilder_;
    /**
     * .google.protobuf.FloatValue snr = 31;
     * @return Whether the snr field is set.
     */
    public boolean hasSnr() {
      return ((bitField0_ & 0x80000000) != 0);
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     * @return The snr.
     */
    public com.google.protobuf.FloatValue getSnr() {
      if (snrBuilder_ == null) {
        return snr_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : snr_;
      } else {
        return snrBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     */
    public Builder setSnr(com.google.protobuf.FloatValue value) {
      if (snrBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        snr_ = value;
      } else {
        snrBuilder_.setMessage(value);
      }
      bitField0_ |= 0x80000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     */
    public Builder setSnr(
        com.google.protobuf.FloatValue.Builder builderForValue) {
      if (snrBuilder_ == null) {
        snr_ = builderForValue.build();
      } else {
        snrBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x80000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     */
    public Builder mergeSnr(com.google.protobuf.FloatValue value) {
      if (snrBuilder_ == null) {
        if (((bitField0_ & 0x80000000) != 0) &&
          snr_ != null &&
          snr_ != com.google.protobuf.FloatValue.getDefaultInstance()) {
          getSnrBuilder().mergeFrom(value);
        } else {
          snr_ = value;
        }
      } else {
        snrBuilder_.mergeFrom(value);
      }
      if (snr_ != null) {
        bitField0_ |= 0x80000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     */
    public Builder clearSnr() {
      bitField0_ = (bitField0_ & ~0x80000000);
      snr_ = null;
      if (snrBuilder_ != null) {
        snrBuilder_.dispose();
        snrBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     */
    public com.google.protobuf.FloatValue.Builder getSnrBuilder() {
      bitField0_ |= 0x80000000;
      onChanged();
      return getSnrFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     */
    public com.google.protobuf.FloatValueOrBuilder getSnrOrBuilder() {
      if (snrBuilder_ != null) {
        return snrBuilder_.getMessageOrBuilder();
      } else {
        return snr_ == null ?
            com.google.protobuf.FloatValue.getDefaultInstance() : snr_;
      }
    }
    /**
     * .google.protobuf.FloatValue snr = 31;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> 
        getSnrFieldBuilder() {
      if (snrBuilder_ == null) {
        snrBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder>(
                getSnr(),
                getParentForChildren(),
                isClean());
        snr_ = null;
      }
      return snrBuilder_;
    }

    // @@protoc_insertion_point(builder_scope:com.craxiom.messaging.LteRecordData)
  }

  // @@protoc_insertion_point(class_scope:com.craxiom.messaging.LteRecordData)
  private static final com.craxiom.messaging.LteRecordData DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new com.craxiom.messaging.LteRecordData();
  }

  public static com.craxiom.messaging.LteRecordData getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

  private static final com.google.protobuf.Parser
      PARSER = new com.google.protobuf.AbstractParser() {
    @java.lang.Override
    public LteRecordData parsePartialFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      Builder builder = newBuilder();
      try {
        builder.mergeFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(builder.buildPartial());
      } catch (com.google.protobuf.UninitializedMessageException e) {
        throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(e)
            .setUnfinishedMessage(builder.buildPartial());
      }
      return builder.buildPartial();
    }
  };

  public static com.google.protobuf.Parser parser() {
    return PARSER;
  }

  @java.lang.Override
  public com.google.protobuf.Parser getParserForType() {
    return PARSER;
  }

  @java.lang.Override
  public com.craxiom.messaging.LteRecordData getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy