#include "src/profiling/symbolizer/symbolize_database.h"
#include <map>
#include <utility>
#include <vector>
#include "perfetto/base/logging.h"
#include "perfetto/ext/base/string_utils.h"
#include "perfetto/protozero/scattered_heap_buffer.h"
#include "perfetto/trace_processor/trace_processor.h"
#include "protos/perfetto/trace/profiling/profile_common.pbzero.h"
#include "protos/perfetto/trace/trace.pbzero.h"
#include "protos/perfetto/trace/trace_packet.pbzero.h"
#include "src/trace_processor/util/build_id.h"
namespace perfetto {
namespace profiling {
namespace {
Iterator;
constexpr const char* kQueryUnsymbolized = …;
NameAndBuildIdPair;
struct UnsymbolizedMapping { … };
std::map<UnsymbolizedMapping, std::vector<uint64_t>> GetUnsymbolizedFrames(
trace_processor::TraceProcessor* tp) { … }
}
void SymbolizeDatabase(trace_processor::TraceProcessor* tp,
Symbolizer* symbolizer,
std::function<void(const std::string&)> callback) { … }
std::vector<std::string> GetPerfettoBinaryPath() { … }
}
}