#include <emulator_service_impl.h>


Public Types | |
| using | RomGetter = std::function<Rom*()> |
| using | RomLoader = std::function<bool(const std::string& path)> |
| using | ScreenshotCapturer |
Public Member Functions | |
| EmulatorServiceImpl (emu::IEmulator *emulator, RomGetter rom_getter=nullptr, RomLoader rom_loader=nullptr) | |
| void | SetScreenshotCapturer (ScreenshotCapturer capturer) |
| grpc::Status | LoadRom (grpc::ServerContext *context, const agent::LoadRomRequest *request, agent::LoadRomResponse *response) override |
| grpc::Status | GetLoadedRomPath (grpc::ServerContext *context, const agent::Empty *request, agent::LoadedRomPathResponse *response) override |
| grpc::Status | ControlEmulator (grpc::ServerContext *context, const agent::ControlRequest *request, agent::CommandResponse *response) override |
| grpc::Status | StepEmulator (grpc::ServerContext *context, const agent::StepControlRequest *request, agent::StepResponse *response) override |
| grpc::Status | RunToBreakpoint (grpc::ServerContext *context, const agent::Empty *request, agent::BreakpointHitResponse *response) override |
| grpc::Status | PressButtons (grpc::ServerContext *context, const agent::ButtonRequest *request, agent::CommandResponse *response) override |
| grpc::Status | ReleaseButtons (grpc::ServerContext *context, const agent::ButtonRequest *request, agent::CommandResponse *response) override |
| grpc::Status | HoldButtons (grpc::ServerContext *context, const agent::ButtonHoldRequest *request, agent::CommandResponse *response) override |
| grpc::Status | GetGameState (grpc::ServerContext *context, const agent::GameStateRequest *request, agent::GameStateResponse *response) override |
| grpc::Status | ReadMemory (grpc::ServerContext *context, const agent::MemoryRequest *request, agent::MemoryResponse *response) override |
| grpc::Status | WriteMemory (grpc::ServerContext *context, const agent::MemoryWriteRequest *request, agent::CommandResponse *response) override |
| grpc::Status | BreakpointControl (grpc::ServerContext *context, const agent::BreakpointControlRequest *request, agent::BreakpointControlResponse *response) override |
| grpc::Status | WatchpointControl (grpc::ServerContext *context, const agent::WatchpointControlRequest *request, agent::WatchpointControlResponse *response) override |
| grpc::Status | GetDisassembly (grpc::ServerContext *context, const agent::DisassemblyRequest *request, agent::DisassemblyResponse *response) override |
| grpc::Status | GetExecutionTrace (grpc::ServerContext *context, const agent::TraceRequest *request, agent::TraceResponse *response) override |
| grpc::Status | ResolveSymbol (grpc::ServerContext *context, const agent::SymbolLookupRequest *request, agent::SymbolLookupResponse *response) override |
| grpc::Status | GetSymbolAt (grpc::ServerContext *context, const agent::AddressRequest *request, agent::SymbolLookupResponse *response) override |
| grpc::Status | LoadSymbols (grpc::ServerContext *context, const agent::SymbolFileRequest *request, agent::CommandResponse *response) override |
| grpc::Status | GetDebugStatus (grpc::ServerContext *context, const agent::Empty *request, agent::DebugStatusResponse *response) override |
| grpc::Status | TestRun (grpc::ServerContext *context, const agent::TestRunRequest *request, agent::TestRunResponse *response) override |
| grpc::Status | SaveState (grpc::ServerContext *context, const agent::SaveStateRequest *request, agent::SaveStateResponse *response) override |
| grpc::Status | LoadState (grpc::ServerContext *context, const agent::LoadStateRequest *request, agent::LoadStateResponse *response) override |
| grpc::Status | ListStates (grpc::ServerContext *context, const agent::ListStatesRequest *request, agent::ListStatesResponse *response) override |
Private Attributes | |
| emu::IEmulator * | emulator_ |
| RomGetter | rom_getter_ |
| RomLoader | rom_loader_ |
| ScreenshotCapturer | screenshot_capturer_ |
| emu::debug::SymbolProvider | symbol_provider_ |
Definition at line 27 of file emulator_service_impl.h.
| using yaze::net::EmulatorServiceImpl::RomGetter = std::function<Rom*()> |
Definition at line 29 of file emulator_service_impl.h.
| using yaze::net::EmulatorServiceImpl::RomLoader = std::function<bool(const std::string& path)> |
Definition at line 30 of file emulator_service_impl.h.
Definition at line 33 of file emulator_service_impl.h.
|
explicit |
Definition at line 84 of file emulator_service_impl.cc.
|
inline |
Definition at line 41 of file emulator_service_impl.h.
References screenshot_capturer_.
|
override |
Definition at line 91 of file emulator_service_impl.cc.
References emulator_, yaze::Rom::is_loaded(), yaze::emu::IEmulator::LoadRom(), rom_getter_, yaze::Rom::size(), and yaze::Rom::title().

|
override |
Definition at line 118 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::GetLoadedRomPath().

|
override |
Definition at line 137 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::IsConnected(), yaze::emu::IEmulator::Pause(), yaze::emu::IEmulator::Reset(), and yaze::emu::IEmulator::Resume().

|
override |
Definition at line 165 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::GetCpuState(), yaze::emu::IEmulator::IsConnected(), yaze::emu::IEmulator::Step(), yaze::emu::IEmulator::StepOut(), and yaze::emu::IEmulator::StepOver().
|
override |
Definition at line 201 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::RunToBreakpoint().

|
override |
Definition at line 218 of file emulator_service_impl.cc.
References emulator_, yaze::emu::kUnspecified, yaze::emu::IEmulator::PressButton(), and yaze::emu::IEmulator::ReleaseButton().

|
override |
Definition at line 255 of file emulator_service_impl.cc.
References emulator_, yaze::emu::kUnspecified, and yaze::emu::IEmulator::ReleaseButton().

|
override |
Definition at line 278 of file emulator_service_impl.cc.
References emulator_, yaze::emu::kUnspecified, yaze::emu::IEmulator::PressButton(), and yaze::emu::IEmulator::ReleaseButton().

|
override |
Definition at line 315 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::GetGameState(), LOG_WARN, yaze::emu::IEmulator::ReadBlock(), and screenshot_capturer_.

|
override |
Definition at line 370 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::ReadBlock().
Referenced by yaze::cli::agent::RomDebugAgent::AnalyzeMemory(), yaze::cli::agent::RomDebugAgent::ComparePatch(), yaze::cli::agent::RomDebugAgent::HasStackImbalance(), and yaze::cli::agent::RomDebugAgent::ScanForIssues().

|
override |
Definition at line 386 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::WriteBlock().

|
override |
Definition at line 404 of file emulator_service_impl.cc.
References yaze::emu::IEmulator::AddBreakpoint(), emulator_, yaze::emu::IEmulator::ListBreakpoints(), yaze::emu::IEmulator::RemoveBreakpoint(), and yaze::emu::IEmulator::ToggleBreakpoint().

|
override |
Definition at line 447 of file emulator_service_impl.cc.
|
override |
Definition at line 457 of file emulator_service_impl.cc.
References yaze::emu::debug::Disassembler65816::Disassemble(), emulator_, yaze::emu::IEmulator::GetCpuState(), yaze::emu::IEmulator::ReadBlock(), yaze::emu::debug::DisassembledInstruction::size, and yaze::emu::CpuStateSnapshot::status.
Referenced by yaze::cli::agent::RomDebugAgent::AnalyzeBreakpoint(), and yaze::cli::agent::RomDebugAgent::GetDisassemblyContext().

|
override |
Definition at line 500 of file emulator_service_impl.cc.
Referenced by yaze::cli::agent::RomDebugAgent::BuildCallStack().
|
override |
Definition at line 507 of file emulator_service_impl.cc.
References yaze::emu::debug::SymbolProvider::FindSymbol(), and symbol_provider_.

|
override |
Definition at line 519 of file emulator_service_impl.cc.
References yaze::emu::debug::SymbolProvider::GetSymbol(), and symbol_provider_.

|
override |
Definition at line 531 of file emulator_service_impl.cc.
References yaze::emu::debug::SymbolProvider::LoadSymbolFile(), and symbol_provider_.

|
override |
Definition at line 544 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::GetCpuState(), yaze::emu::IEmulator::IsRunning(), and yaze::emu::IEmulator::ListBreakpoints().

|
override |
Definition at line 563 of file emulator_service_impl.cc.
|
override |
Definition at line 572 of file emulator_service_impl.cc.
|
override |
Definition at line 579 of file emulator_service_impl.cc.
|
override |
Definition at line 586 of file emulator_service_impl.cc.
|
private |
Definition at line 135 of file emulator_service_impl.h.
Referenced by BreakpointControl(), ControlEmulator(), GetDebugStatus(), GetDisassembly(), GetGameState(), GetLoadedRomPath(), HoldButtons(), LoadRom(), PressButtons(), ReadMemory(), ReleaseButtons(), RunToBreakpoint(), StepEmulator(), and WriteMemory().
|
private |
Definition at line 136 of file emulator_service_impl.h.
Referenced by LoadRom().
|
private |
Definition at line 137 of file emulator_service_impl.h.
|
private |
Definition at line 138 of file emulator_service_impl.h.
Referenced by GetGameState(), and SetScreenshotCapturer().
|
private |
Definition at line 139 of file emulator_service_impl.h.
Referenced by GetSymbolAt(), LoadSymbols(), and ResolveSymbol().