blob: 247f67925b00518deef2518d4192e80e6fd1a633 [file] [log] [blame]
Francis Murtagh1f7db452019-08-14 09:49:34 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include <cstdint>
9
Aron Virginas-Tare898db92019-08-22 12:56:34 +010010namespace armnn
11{
12
13namespace profiling
14{
15
Francis Murtagh1f7db452019-08-14 09:49:34 +010016class CommandHandlerKey
17{
18public:
Jim Flynn397043f2019-10-17 17:37:10 +010019 CommandHandlerKey(uint32_t familyId, uint32_t packetId, uint32_t version)
20 : m_FamilyId(familyId), m_PacketId(packetId), m_Version(version) {};
Francis Murtagh1f7db452019-08-14 09:49:34 +010021
Jim Flynn397043f2019-10-17 17:37:10 +010022 uint32_t GetFamilyId() const;
Francis Murtagh1f7db452019-08-14 09:49:34 +010023 uint32_t GetPacketId() const;
24 uint32_t GetVersion() const;
25
26 bool operator< (const CommandHandlerKey& rhs) const;
27 bool operator> (const CommandHandlerKey& rhs) const;
28 bool operator<=(const CommandHandlerKey& rhs) const;
29 bool operator>=(const CommandHandlerKey& rhs) const;
30 bool operator==(const CommandHandlerKey& rhs) const;
31 bool operator!=(const CommandHandlerKey& rhs) const;
32
33private:
Jim Flynn397043f2019-10-17 17:37:10 +010034 uint32_t m_FamilyId;
Francis Murtagh1f7db452019-08-14 09:49:34 +010035 uint32_t m_PacketId;
36 uint32_t m_Version;
37};
Aron Virginas-Tare898db92019-08-22 12:56:34 +010038
39} // namespace profiling
40
41} // namespace armnn