xref: /llvm-project/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleXR.h (revision 502a88bae799694d0ed90e1839cd7a0aacb6bc9d)
1 //===-- PlatformRemoteAppleXR.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_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEXR_H
10 #define LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEXR_H
11 
12 #include "PlatformRemoteDarwinDevice.h"
13 
14 namespace lldb_private {
15 class PlatformRemoteAppleXR : public PlatformRemoteDarwinDevice {
16 public:
17   PlatformRemoteAppleXR();
18 
19   static lldb::PlatformSP CreateInstance(bool force,
20                                          const lldb_private::ArchSpec *arch);
21 
22   static void Initialize();
23 
24   static void Terminate();
25 
26   static llvm::StringRef GetPluginNameStatic();
27 
28   static llvm::StringRef GetDescriptionStatic();
29 
GetDescription()30   llvm::StringRef GetDescription() override { return GetDescriptionStatic(); }
31 
GetPluginName()32   llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); }
33 
34   std::vector<lldb_private::ArchSpec> GetSupportedArchitectures(
35       const lldb_private::ArchSpec &process_host_arch) override;
36 
37 protected:
38   llvm::StringRef GetDeviceSupportDirectoryName() override;
39   llvm::StringRef GetPlatformName() override;
40 };
41 } // namespace lldb_private
42 
43 #endif // LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEXR_H
44