Seth Alvesquiet compilerb93625210 years agoHistory
37 lines · 1.1 KB · C++
RawDownload
////  SequenceNumber.cpp//  libraries/networking/src/udt////  Created by Clement on 7/23/15.//  Copyright 2015 High Fidelity, Inc.////  Distributed under the Apache License, Version 2.0.//  See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html// #include "SequenceNumber.h" #include <QtCore/QMetaType> using namespace udt; Q_DECLARE_METATYPE(SequenceNumber); int sequenceNumberMetaTypeID = qRegisterMetaType<SequenceNumber>(); int udt::seqlen(const SequenceNumber& seq1, const SequenceNumber& seq2) {    return (seq1._value <= seq2._value) ? (seq2._value - seq1._value + 1)                                        : (seq2._value - seq1._value + SequenceNumber::MAX + 2);} int udt::seqoff(const SequenceNumber& seq1, const SequenceNumber& seq2) {    if (glm::abs(seq1._value - seq2._value) < SequenceNumber::THRESHOLD) {        return seq2._value - seq1._value;    }        if (seq1._value < seq2._value) {        return seq2._value - seq1._value - SequenceNumber::MAX - 1;    }        return seq2._value - seq1._value + SequenceNumber::MAX + 1;}