public void MergeFrom(MeterReadingProfile other)
 {
     if (other == null)
     {
         return;
     }
     if (other.readingMessageInfo_ != null)
     {
         if (readingMessageInfo_ == null)
         {
             ReadingMessageInfo = new global::openfmb.commonmodule.ReadingMessageInfo();
         }
         ReadingMessageInfo.MergeFrom(other.ReadingMessageInfo);
     }
     if (other.meter_ != null)
     {
         if (meter_ == null)
         {
             Meter = new global::openfmb.commonmodule.Meter();
         }
         Meter.MergeFrom(other.Meter);
     }
     if (other.meterReading_ != null)
     {
         if (meterReading_ == null)
         {
             MeterReading = new global::openfmb.metermodule.MeterReading();
         }
         MeterReading.MergeFrom(other.MeterReading);
     }
     _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (readingMessageInfo_ != null)
            {
                hash ^= ReadingMessageInfo.GetHashCode();
            }
            if (meter_ != null)
            {
                hash ^= Meter.GetHashCode();
            }
            if (meterReading_ != null)
            {
                hash ^= MeterReading.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }