LLDB  mainline
Public Attributes | List of all members
lldb_private::Trace::Storage Struct Reference

We package all the data that can change upon process stops to make sure this contract is very visible. More...

Collaboration diagram for lldb_private::Trace::Storage:
Collaboration graph
[legend]

Public Attributes

std::vector< Process * > postmortem_processes
 Portmortem processes traced by this object if doing non-live tracing. More...
 
llvm::Optional< std::vector< lldb::cpu_id_t > > cpus
 The list of cpus being traced. More...
 
llvm::Optional< std::stringlive_refresh_error
 
llvm::DenseMap< lldb::tid_t, llvm::DenseMap< ConstString, uint64_t > > live_thread_data
 These data kinds are returned by lldb-server when fetching the state of the tracing session. More...
 
llvm::DenseMap< lldb::cpu_id_t, llvm::DenseMap< ConstString, uint64_t > > live_cpu_data_sizes
 cpu id -> data kind -> size More...
 
llvm::DenseMap< lldb::cpu_id_t, llvm::DenseMap< ConstString, std::vector< uint8_t > > > live_cpu_data
 cpu id -> data kind -> bytes More...
 
llvm::DenseMap< ConstString, uint64_t > live_process_data
 data kind -> size More...
 
llvm::DenseMap< lldb::tid_t, llvm::DenseMap< ConstString, FileSpec > > postmortem_thread_data
 Postmortem traces can specific additional data files, which are represented in this variable using a data kind identifier for each file. More...
 
llvm::DenseMap< lldb::cpu_id_t, llvm::DenseMap< ConstString, FileSpec > > postmortem_cpu_data
 cpu id -> data kind -> file More...
 

Detailed Description

We package all the data that can change upon process stops to make sure this contract is very visible.

This variable should only be accessed directly by constructores or live process data refreshers.

Definition at line 546 of file Trace.h.

Member Data Documentation

◆ cpus

llvm::Optional<std::vector<lldb::cpu_id_t> > lldb_private::Trace::Storage::cpus

The list of cpus being traced.

Might be None depending on the plug-in.

Definition at line 574 of file Trace.h.

Referenced by lldb_private::Trace::GetTracedCpus(), and lldb_private::Trace::OnAllCpusBinaryDataRead().

◆ live_cpu_data

llvm::DenseMap<lldb::cpu_id_t, llvm::DenseMap<ConstString, std::vector<uint8_t> > > lldb_private::Trace::Storage::live_cpu_data

cpu id -> data kind -> bytes

Definition at line 566 of file Trace.h.

Referenced by lldb_private::Trace::OnLiveCpuBinaryDataRead().

◆ live_cpu_data_sizes

llvm::DenseMap<lldb::cpu_id_t, llvm::DenseMap<ConstString, uint64_t> > lldb_private::Trace::Storage::live_cpu_data_sizes

cpu id -> data kind -> size

Definition at line 562 of file Trace.h.

Referenced by lldb_private::Trace::GetLiveCpuBinaryDataSize().

◆ live_process_data

llvm::DenseMap<ConstString, uint64_t> lldb_private::Trace::Storage::live_process_data

data kind -> size

Definition at line 569 of file Trace.h.

Referenced by lldb_private::Trace::GetLiveProcessBinaryDataSize().

◆ live_refresh_error

llvm::Optional<std::string> lldb_private::Trace::Storage::live_refresh_error

Definition at line 590 of file Trace.h.

◆ live_thread_data

llvm::DenseMap<lldb::tid_t, llvm::DenseMap<ConstString, uint64_t> > lldb_private::Trace::Storage::live_thread_data

These data kinds are returned by lldb-server when fetching the state of the tracing session.

The size in bytes can be used later for fetching the data in batches. tid -> data kind -> size

Definition at line 558 of file Trace.h.

Referenced by lldb_private::Trace::GetLiveThreadBinaryDataSize().

◆ postmortem_cpu_data

llvm::DenseMap<lldb::cpu_id_t, llvm::DenseMap<ConstString, FileSpec> > lldb_private::Trace::Storage::postmortem_cpu_data

cpu id -> data kind -> file

Definition at line 586 of file Trace.h.

Referenced by lldb_private::Trace::GetPostMortemCpuDataFile(), and lldb_private::Trace::SetPostMortemCpuDataFile().

◆ postmortem_processes

std::vector<Process *> lldb_private::Trace::Storage::postmortem_processes

Portmortem processes traced by this object if doing non-live tracing.

Otherwise it's empty.

Definition at line 549 of file Trace.h.

Referenced by lldb_private::Trace::GetTracedProcesses().

◆ postmortem_thread_data

llvm::DenseMap<lldb::tid_t, llvm::DenseMap<ConstString, FileSpec> > lldb_private::Trace::Storage::postmortem_thread_data

Postmortem traces can specific additional data files, which are represented in this variable using a data kind identifier for each file.

tid -> data kind -> file

Definition at line 582 of file Trace.h.

Referenced by lldb_private::Trace::GetPostMortemThreadDataFile(), and lldb_private::Trace::SetPostMortemThreadDataFile().


The documentation for this struct was generated from the following file: