public override int GetHashCode() { int hash = 1; if (PositionNorth != 0D) { hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PositionNorth); } if (PositionEast != 0D) { hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PositionEast); } if (PositionUp != 0L) { hash ^= PositionUp.GetHashCode(); } if (PositionStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus.DNoGps) { hash ^= PositionStatus.GetHashCode(); } if (Pdop != 0D) { hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Pdop); } if (Hdop != 0D) { hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Hdop); } if (NumberOfSatellites != 0) { hash ^= NumberOfSatellites.GetHashCode(); } if (gpsUtcTimestamp_ != null) { hash ^= GpsUtcTimestamp.GetHashCode(); } if (FieldStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus.FsUnknown) { hash ^= FieldStatus.GetHashCode(); } hash ^= extension_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public override XmlWriter WriteXML(XmlWriter xmlBuilder) { //This write method has additional complexity to support the PTN behavior inside of TimeLogs xmlBuilder.WriteStartElement("PTN"); string north = PositionNorth.HasValue ? PositionNorth.ToString() : HasPositionNorth ? string.Empty : null; if (north != null) { xmlBuilder.WriteAttributeString("A", north); } string east = PositionEast.HasValue ? PositionEast.ToString() : HasPositionEast ? string.Empty : null; if (east != null) { xmlBuilder.WriteAttributeString("B", east); } string up = PositionUp.HasValue ? PositionUp.ToString() : HasPositionUp ? string.Empty : null; if (up != null) { xmlBuilder.WriteAttributeString("C", up); } string status = PositionStatus.HasValue ? ((int)PositionStatus).ToString() : HasPositionStatus ? string.Empty : null; if (status != null) { xmlBuilder.WriteAttributeString("D", status); } string pdop = PDOP.HasValue ? PDOP.ToString() : HasPDOP ? string.Empty : null; if (pdop != null) { xmlBuilder.WriteAttributeString("E", pdop); } string hdop = HDOP.HasValue ? HDOP.ToString() : HasHDOP ? string.Empty : null; if (hdop != null) { xmlBuilder.WriteAttributeString("F", hdop); } string satellites = NumberOfSatellites.HasValue ? NumberOfSatellites.ToString() : HasNumberOfSatellites ? string.Empty : null; if (satellites != null) { xmlBuilder.WriteAttributeString("G", satellites); } string gpsTime = GpsUtcTime.HasValue ? GpsUtcTime.ToString() : HasGpsUtcTime ? string.Empty : null; if (gpsTime != null) { xmlBuilder.WriteAttributeString("H", gpsTime); } string gpsDate = GpsUtcDate.HasValue ? GpsUtcDate.ToString() : HasGpsUtcDate ? string.Empty : null; if (gpsDate != null) { xmlBuilder.WriteAttributeString("I", gpsDate); } xmlBuilder.WriteEndElement(); return(xmlBuilder); }