LLDB mainline
TraceExporterCTF.h
Go to the documentation of this file.
1//===-- TraceExporterCTF.h --------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_SOURCE_PLUGINS_TRACE_EXPORTER_CTF_H
10#define LLDB_SOURCE_PLUGINS_TRACE_EXPORTER_CTF_H
11
13
14namespace lldb_private {
15namespace ctf {
16
17/// Trace Exporter Plugin that can produce traces in Chrome Trace Format.
18/// Still in development.
20public:
21 ~TraceExporterCTF() override = default;
22
23 /// PluginInterface protocol
24 /// \{
25 static llvm::Expected<lldb::TraceExporterUP> CreateInstance();
26
27 llvm::StringRef GetPluginName() override {
28 return GetPluginNameStatic();
29 }
30
31 static void Initialize();
32
33 static void Terminate();
34
35 static llvm::StringRef GetPluginNameStatic() { return "ctf"; }
36 /// \}
37};
38
39} // namespace ctf
40} // namespace lldb_private
41
42#endif // LLDB_SOURCE_PLUGINS_TRACE_EXPORTER_CTF_H
A plug-in interface definition class for trace exporters.
Definition: TraceExporter.h:28
Trace Exporter Plugin that can produce traces in Chrome Trace Format.
llvm::StringRef GetPluginName() override
static llvm::Expected< lldb::TraceExporterUP > CreateInstance()
PluginInterface protocol.
static llvm::StringRef GetPluginNameStatic()
~TraceExporterCTF() override=default
A class that represents a running process on the host machine.