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);
                }
示例#2
0
        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);
        }