LLDB mainline
PlatformRemoteAppleBridge.h
Go to the documentation of this file.
1//===-- PlatformRemoteAppleBridge.h ---------------------------------*- C++
2//-*-===//
3//
4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5// See https://llvm.org/LICENSE.txt for license information.
6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEBRIDGE_H
11#define LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEBRIDGE_H
12
15#include "lldb/lldb-forward.h"
16#include "llvm/ADT/StringRef.h"
17
18#include <vector>
19
20namespace lldb_private {
21class ArchSpec;
22
24public:
26
27 static lldb::PlatformSP CreateInstance(bool force, const ArchSpec *arch);
28
29 static void Initialize();
30
31 static void Terminate();
32
33 static llvm::StringRef GetPluginNameStatic() { return "remote-bridgeos"; }
34
35 static llvm::StringRef GetDescriptionStatic();
36
37 llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); }
38
39 llvm::StringRef GetDescription() override { return GetDescriptionStatic(); }
40
41 std::vector<ArchSpec>
42 GetSupportedArchitectures(const ArchSpec &process_host_arch) override;
43
44protected:
45 llvm::StringRef GetDeviceSupportDirectoryName() override;
46 llvm::StringRef GetPlatformName() override;
47};
48
49} // namespace lldb_private
50
51#endif // LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEBRIDGE_H
An architecture specification class.
Definition: ArchSpec.h:31
std::vector< ArchSpec > GetSupportedArchitectures(const ArchSpec &process_host_arch) override
Get the platform's supported architectures in the order in which they should be searched.
static lldb::PlatformSP CreateInstance(bool force, const ArchSpec *arch)
A class that represents a running process on the host machine.
Definition: SBAttachInfo.h:14
std::shared_ptr< lldb_private::Platform > PlatformSP
Definition: lldb-forward.h:380