2015-06-21 21:02:10 -07:00
|
|
|
/*----------------------------------------------------------------------------*/
|
|
|
|
|
/* Copyright (c) FIRST 2015. All Rights Reserved. */
|
|
|
|
|
/* Open Source Software - may be modified and shared by FRC teams. The code */
|
|
|
|
|
/* must be accompanied by the FIRST BSD license file in the root directory of */
|
|
|
|
|
/* the project. */
|
|
|
|
|
/*----------------------------------------------------------------------------*/
|
|
|
|
|
|
|
|
|
|
#include "nt_seqnum.h"
|
|
|
|
|
|
|
|
|
|
namespace NtImpl {
|
|
|
|
|
|
2015-06-22 23:16:58 -07:00
|
|
|
bool operator< (const SequenceNumber& lhs, const SequenceNumber& rhs)
|
2015-06-21 21:02:10 -07:00
|
|
|
{
|
|
|
|
|
if (lhs.m_val < rhs.m_val)
|
|
|
|
|
return (rhs.m_val - lhs.m_val) < (1u<<15);
|
|
|
|
|
else if (lhs.m_val > rhs.m_val)
|
|
|
|
|
return (lhs.m_val - rhs.m_val) > (1u<<15);
|
|
|
|
|
else
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
2015-06-22 23:16:58 -07:00
|
|
|
bool operator> (const SequenceNumber& lhs, const SequenceNumber& rhs)
|
2015-06-21 21:02:10 -07:00
|
|
|
{
|
|
|
|
|
if (lhs.m_val < rhs.m_val)
|
|
|
|
|
return (rhs.m_val - lhs.m_val) > (1u<<15);
|
|
|
|
|
else if (lhs.m_val > rhs.m_val)
|
|
|
|
|
return (lhs.m_val - rhs.m_val) < (1u<<15);
|
|
|
|
|
else
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} // namespace NtImpl
|