class TargetImpl

Defined at line 21 of file ../../src/developer/debug/zxdb/client/target_impl.h

Public Methods

System * system ()

Defined at line 27 of file ../../src/developer/debug/zxdb/client/target_impl.h

ProcessImpl * process ()

Defined at line 28 of file ../../src/developer/debug/zxdb/client/target_impl.h

void TargetImpl (System * system)

The system owns this object and will outlive it.

Defined at line 28 of file ../../src/developer/debug/zxdb/client/target_impl.cc

TargetSymbols * symbols ()

Defined at line 29 of file ../../src/developer/debug/zxdb/client/target_impl.h

void ~TargetImpl ()

Defined at line 36 of file ../../src/developer/debug/zxdb/client/target_impl.cc

std::unique_ptr<TargetImpl> Clone (System * system)

Allocates a new target with the same settings as this one. This isn't a real copy, because any

process information is not cloned.

Defined at line 42 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void CreateProcess (Process::StartType start_type, uint64_t koid, const std::string & process_name, uint64_t timestamp, const std::vector<debug_ipc::ComponentInfo> & component_info, std::optional<debug_ipc::AddressRegion> shared_aspace)

Create a process in the target. The process should have been attached in debug_agent.

Defined at line 49 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void CreateProcessForTesting (uint64_t koid, const std::string & process_name)

Tests can use this to create a target for mocking purposes without making any IPC. To destroy

call ImplicitlyDetach().

Defined at line 63 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void ImplicitlyDetach ()

Removes the process from this target without making any IPC calls. This can be used to clean up

after a CreateProcessForTesting(), and during final shutdown. In final shutdown, we assume

anything still left running will continue running as-is and just clean up local references.

If the process is not running, this will do nothing.

Defined at line 72 of file ../../src/developer/debug/zxdb/client/target_impl.cc

State GetState ()

Target implementation:

Defined at line 80 of file ../../src/developer/debug/zxdb/client/target_impl.cc

Process * GetProcess ()

Defined at line 82 of file ../../src/developer/debug/zxdb/client/target_impl.cc

const TargetSymbols * GetSymbols ()

Defined at line 84 of file ../../src/developer/debug/zxdb/client/target_impl.cc

const std::vector<std::string> & GetArgs ()

Defined at line 86 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void SetArgs (std::vector<std::string> args)

Defined at line 88 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void Launch (CallbackWithTimestamp callback)

Defined at line 90 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void Kill (Callback callback)

Defined at line 120 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void Attach (uint64_t koid, debug_ipc::AttachConfig config, CallbackWithTimestamp callback)

Defined at line 145 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void Detach (Callback callback)

Defined at line 172 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void OnProcessExiting (int return_code, uint64_t timestamp)

Defined at line 197 of file ../../src/developer/debug/zxdb/client/target_impl.cc

void AssignPreviousConnectedProcess (const debug_ipc::ProcessRecord & record)

Defined at line 297 of file ../../src/developer/debug/zxdb/client/target_impl.cc