1 //
2 // Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5
6 #include "ProfilingService.hpp"
7
8 #include <client/include/IProfilingService.hpp>
9
10 namespace arm
11 {
12
13 namespace pipe
14 {
15
CreateProfilingService(uint16_t maxGlobalCounterId,IInitialiseProfilingService & initialiser,const std::string & softwareInfo,const std::string & softwareVersion,const std::string & hardwareVersion,arm::pipe::Optional<IReportStructure &> reportStructure)16 std::unique_ptr<IProfilingService> IProfilingService::CreateProfilingService(
17 uint16_t maxGlobalCounterId,
18 IInitialiseProfilingService& initialiser,
19 const std::string& softwareInfo,
20 const std::string& softwareVersion,
21 const std::string& hardwareVersion,
22 arm::pipe::Optional<IReportStructure&> reportStructure)
23 {
24 return std::make_unique<ProfilingService>(maxGlobalCounterId,
25 initialiser,
26 softwareInfo,
27 softwareVersion,
28 hardwareVersion,
29 reportStructure);
30 }
31
32 ProfilingGuidGenerator IProfilingService::m_GuidGenerator;
33
GetNextGuid()34 ProfilingDynamicGuid IProfilingService::GetNextGuid()
35 {
36 return m_GuidGenerator.NextGuid();
37 }
38
GetStaticId(const std::string & str)39 ProfilingStaticGuid IProfilingService::GetStaticId(const std::string& str)
40 {
41 return m_GuidGenerator.GenerateStaticId(str);
42 }
43
ResetGuidGenerator()44 void IProfilingService::ResetGuidGenerator()
45 {
46 m_GuidGenerator.Reset();
47 }
48
NextGuid()49 ProfilingDynamicGuid IProfilingService::NextGuid()
50 {
51 return IProfilingService::GetNextGuid();
52 }
53
GenerateStaticId(const std::string & str)54 ProfilingStaticGuid IProfilingService::GenerateStaticId(const std::string& str)
55 {
56 return IProfilingService::GetStaticId(str);
57 }
58
59 } // namespace pipe
60 } // namespace arm
61