blob: 2a1c35f57e297b6933d33913d35773e2ad8517d0 [file] [log] [blame]
Aron Virginas-Tar1a0f6912019-08-23 15:18:44 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include "Packet.hpp"
Jim Flynn4e755a52020-03-29 17:48:26 +01009#include <armnn/profiling/ILocalPacketHandler.hpp>
Aron Virginas-Tar1a0f6912019-08-23 15:18:44 +010010
11#include <cstdint>
12
13namespace armnn
14{
15
16namespace profiling
17{
18
19class IProfilingConnection
20{
21public:
Matteo Martincigh2e7c8852019-09-09 09:23:53 +010022 virtual ~IProfilingConnection() {}
23
Matteo Martincigh54fb9572019-10-02 12:50:57 +010024 virtual bool IsOpen() const = 0;
Aron Virginas-Tar1a0f6912019-08-23 15:18:44 +010025
26 virtual void Close() = 0;
27
Matteo Martincigh24e8f922019-09-19 11:57:46 +010028 virtual bool WritePacket(const unsigned char* buffer, uint32_t length) = 0;
Aron Virginas-Tar1a0f6912019-08-23 15:18:44 +010029
30 virtual Packet ReadPacket(uint32_t timeout) = 0;
31};
32
33} // namespace profiling
34
35} // namespace armnn