blob: 7e7904de0f854a8f741d8edc55f504076ef6755c [file] [log] [blame]
Sadik Armaganb5f01b22019-09-18 17:29:00 +01001//
2// Copyright © 2019 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include "CommandHandlerFunctor.hpp"
Keith Davis3201eea2019-10-24 17:30:41 +01009#include "ISendCounterPacket.hpp"
Sadik Armaganb5f01b22019-09-18 17:29:00 +010010#include "Packet.hpp"
11#include "ProfilingStateMachine.hpp"
12
13namespace armnn
14{
15
16namespace profiling
17{
18
Matteo Martincighc2728f92019-10-07 12:35:21 +010019class ConnectionAcknowledgedCommandHandler final : public CommandHandlerFunctor
Sadik Armaganb5f01b22019-09-18 17:29:00 +010020{
21
22public:
Jim Flynn397043f2019-10-17 17:37:10 +010023 ConnectionAcknowledgedCommandHandler(uint32_t familyId,
24 uint32_t packetId,
Sadik Armaganb5f01b22019-09-18 17:29:00 +010025 uint32_t version,
Keith Davis3201eea2019-10-24 17:30:41 +010026 ICounterDirectory& counterDirectory,
27 ISendCounterPacket& sendCounterPacket,
Sadik Armaganb5f01b22019-09-18 17:29:00 +010028 ProfilingStateMachine& profilingStateMachine)
Jim Flynn397043f2019-10-17 17:37:10 +010029 : CommandHandlerFunctor(familyId, packetId, version)
Keith Davis3201eea2019-10-24 17:30:41 +010030 , m_CounterDirectory(counterDirectory)
31 , m_SendCounterPacket(sendCounterPacket)
Matteo Martincighc2728f92019-10-07 12:35:21 +010032 , m_StateMachine(profilingStateMachine)
33 {}
Sadik Armaganb5f01b22019-09-18 17:29:00 +010034
35 void operator()(const Packet& packet) override;
36
37private:
Keith Davis3201eea2019-10-24 17:30:41 +010038 const ICounterDirectory& m_CounterDirectory;
39 ISendCounterPacket& m_SendCounterPacket;
40 ProfilingStateMachine& m_StateMachine;
41
Sadik Armaganb5f01b22019-09-18 17:29:00 +010042};
43
44} // namespace profiling
45
46} // namespace armnn
47