public void MergeFrom(TransportConf other)
 {
     if (other == null)
     {
         return;
     }
     if (other.shmConf_ != null)
     {
         if (shmConf_ == null)
         {
             shmConf_ = new global::Apollo.Cyber.Proto.ShmConf();
         }
         ShmConf.MergeFrom(other.ShmConf);
     }
     if (other.participantAttr_ != null)
     {
         if (participantAttr_ == null)
         {
             participantAttr_ = new global::Apollo.Cyber.Proto.RtpsParticipantAttr();
         }
         ParticipantAttr.MergeFrom(other.ParticipantAttr);
     }
     if (other.communicationMode_ != null)
     {
         if (communicationMode_ == null)
         {
             communicationMode_ = new global::Apollo.Cyber.Proto.CommunicationMode();
         }
         CommunicationMode.MergeFrom(other.CommunicationMode);
     }
     if (other.resourceLimit_ != null)
     {
         if (resourceLimit_ == null)
         {
             resourceLimit_ = new global::Apollo.Cyber.Proto.ResourceLimit();
         }
         ResourceLimit.MergeFrom(other.ResourceLimit);
     }
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (shmConf_ != null)
            {
                hash ^= ShmConf.GetHashCode();
            }
            if (participantAttr_ != null)
            {
                hash ^= ParticipantAttr.GetHashCode();
            }
            if (communicationMode_ != null)
            {
                hash ^= CommunicationMode.GetHashCode();
            }
            if (resourceLimit_ != null)
            {
                hash ^= ResourceLimit.GetHashCode();
            }
            return(hash);
        }