blob: 4d6dfa080a80700ed25da3dc0502a5545882abb5 [file] [log] [blame]
Francis Murtagh11f99b42019-08-16 11:28:52 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#include "Packet.hpp"
7
8#include <cstdint>
9
Aron Virginas-Tare898db92019-08-22 12:56:34 +010010namespace armnn
11{
12
13namespace profiling
14{
15
Francis Murtagh11f99b42019-08-16 11:28:52 +010016#pragma once
17
18class CommandHandlerFunctor
19{
20public:
Jim Flynn397043f2019-10-17 17:37:10 +010021 CommandHandlerFunctor(uint32_t familyId, uint32_t packetId, uint32_t version)
22 : m_FamilyId(familyId),
23 m_PacketId(packetId)
Matteo Martincighc2728f92019-10-07 12:35:21 +010024 , m_Version(version)
25 {}
Francis Murtagh11f99b42019-08-16 11:28:52 +010026
Jim Flynn397043f2019-10-17 17:37:10 +010027 uint32_t GetFamilyId() const;
Francis Murtagh11f99b42019-08-16 11:28:52 +010028 uint32_t GetPacketId() const;
29 uint32_t GetVersion() const;
30
Matteo Martincighc2728f92019-10-07 12:35:21 +010031 virtual void operator()(const Packet& packet) {}
Francis Murtagh11f99b42019-08-16 11:28:52 +010032
Jim Flynnc4728ad2019-10-07 15:15:12 +010033 virtual ~CommandHandlerFunctor() {}
34
Francis Murtagh11f99b42019-08-16 11:28:52 +010035private:
Jim Flynn397043f2019-10-17 17:37:10 +010036 uint32_t m_FamilyId;
Francis Murtagh11f99b42019-08-16 11:28:52 +010037 uint32_t m_PacketId;
38 uint32_t m_Version;
Aron Virginas-Tare898db92019-08-22 12:56:34 +010039};
40
41} // namespace profiling
42
43} // namespace armnn