3
0
mirror of https://github.com/Qortal/Brooklyn.git synced 2025-02-23 23:55:54 +00:00
Brooklyn/arch/arm/ARMnn/profiling/common/src/PacketVersionResolver.cpp
Scare Crowe d2ebfd0519 QortalOS Titan 5.60.12
Screw the description like that inbred T3Q
2022-03-05 21:17:59 +05:00

72 lines
1.3 KiB
C++

//
// Copyright © 2017 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
#include <common/include/PacketVersionResolver.hpp>
namespace arm
{
namespace pipe
{
bool PacketKey::operator<(const PacketKey& rhs) const
{
bool result = true;
if (m_FamilyId == rhs.m_FamilyId)
{
result = m_PacketId < rhs.m_PacketId;
}
else if (m_FamilyId > rhs.m_FamilyId)
{
result = false;
}
return result;
}
bool PacketKey::operator>(const PacketKey& rhs) const
{
return rhs < *this;
}
bool PacketKey::operator<=(const PacketKey& rhs) const
{
return !(*this > rhs);
}
bool PacketKey::operator>=(const PacketKey& rhs) const
{
return !(*this < rhs);
}
bool PacketKey::operator==(const PacketKey& rhs) const
{
return m_FamilyId == rhs.m_FamilyId && m_PacketId == rhs.m_PacketId;
}
bool PacketKey::operator!=(const PacketKey& rhs) const
{
return !(*this == rhs);
}
Version PacketVersionResolver::ResolvePacketVersion(uint32_t familyId, uint32_t packetId) const
{
const PacketKey packetKey(familyId, packetId);
if( packetKey == ActivateTimeLinePacket )
{
return Version(1, 1, 0);
}
if( packetKey == DeactivateTimeLinePacket )
{
return Version(1, 1, 0);
}
return Version(1, 0, 0);
}
} // namespace pipe
} // namespace arm