1 //===-- LocateSymbolFile.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_SYMBOL_LOCATESYMBOLFILE_H 10 #define LLDB_SYMBOL_LOCATESYMBOLFILE_H 11 12 #include <cstdint> 13 14 #include "lldb/Utility/FileSpec.h" 15 #include "lldb/Utility/FileSpecList.h" 16 #include "lldb/Utility/Status.h" 17 #include "lldb/lldb-forward.h" 18 19 namespace lldb_private { 20 21 class ArchSpec; 22 class ModuleSpec; 23 class UUID; 24 25 class Symbols { 26 public: 27 /// Locate the symbol file for the given UUID on a background thread. This 28 /// function returns immediately. Under the hood it uses the debugger's 29 /// thread pool to call DownloadObjectAndSymbolFile. If a symbol file is 30 /// found, this will notify all target which contain the module with the 31 /// given UUID. 32 static void DownloadSymbolFileAsync(const UUID &uuid); 33 }; 34 35 } // namespace lldb_private 36 37 #endif // LLDB_SYMBOL_LOCATESYMBOLFILE_H 38