示例#1
0
        /// <summary>
        /// Adds a number of members into the Digest.
        /// </summary>
        /// <param name="d">Digest to add into this Digest</param>
        public void add(Digest d)
        {
            Address sender;
            long    low_seqno, high_seqno, high_seqno_seen;

            if (d != null)
            {
                for (int i = 0; i < d.size(); i++)
                {
                    sender          = d.senderAt(i);
                    low_seqno       = d.lowSeqnoAt(i);
                    high_seqno      = d.highSeqnoAt(i);
                    high_seqno_seen = d.highSeqnoSeenAt(i);
                    add(sender, low_seqno, high_seqno, high_seqno_seen);
                }
            }
        }
示例#2
0
        /// <remarks>
        /// For each member in the new digest the <c>merge()</c> method will be called. The digest must
        /// have enough space to merge the new digest.
        /// </remarks>
        /// <summary>
        /// Merge two digest together.
        /// </summary>
        /// <param name="d">Digest to merge into this Digest</param>
        public void merge(Digest d)
        {
            Address sender;
            long    low_seqno, high_seqno, high_seqno_seen;

            if (d == null)
            {
                if (Trace.trace)
                {
                    Trace.error("Digest.merge()", "digest to be merged with is null");
                }
                return;
            }
            for (int i = 0; i < d.size(); i++)
            {
                sender          = d.senderAt(i);
                low_seqno       = d.lowSeqnoAt(i);
                high_seqno      = d.highSeqnoAt(i);
                high_seqno_seen = d.highSeqnoSeenAt(i);
                merge(sender, low_seqno, high_seqno, high_seqno_seen);
            }
        }
示例#3
0
        /// <remarks>
        /// For each member in the new digest the <c>merge()</c> method will be called. The digest must
        /// have enough space to merge the new digest.
        /// </remarks>
        /// <summary>
        /// Merge two digest together.
        /// </summary>
        /// <param name="d">Digest to merge into this Digest</param>
        public void merge(Digest d)
        {
            Address sender;
            long    low_seqno, high_seqno, high_seqno_seen;

            if(d == null)
            {
                if(Trace.trace)
                    Trace.error("Digest.merge()", "digest to be merged with is null");
                return;
            }
            for(int i=0; i < d.size(); i++)
            {
                sender=d.senderAt(i);
                low_seqno=d.lowSeqnoAt(i);
                high_seqno=d.highSeqnoAt(i);
                high_seqno_seen=d.highSeqnoSeenAt(i);
                merge(sender, low_seqno, high_seqno, high_seqno_seen);
            }
        }
示例#4
0
        /// <summary>
        /// Adds a number of members into the Digest.
        /// </summary>
        /// <param name="d">Digest to add into this Digest</param>
        public void add(Digest d)
        {
            Address sender;
            long    low_seqno, high_seqno, high_seqno_seen;

            if(d != null)
            {
                for(int i=0; i < d.size(); i++)
                {
                    sender=d.senderAt(i);
                    low_seqno=d.lowSeqnoAt(i);
                    high_seqno=d.highSeqnoAt(i);
                    high_seqno_seen=d.highSeqnoSeenAt(i);
                    add(sender, low_seqno, high_seqno, high_seqno_seen);
                }
            }
        }