#pragma once #include #include "AvrGdbCommandPacketInterface.hpp" #include "src/DebugServer/Gdb/CommandPackets/CommandPacket.hpp" #include "src/DebugServer/Gdb/BreakpointType.hpp" #include "src/Targets/TargetMemory.hpp" namespace DebugServer::Gdb::AvrGdb::CommandPackets { class SetBreakpoint : public CommandPackets::AvrGdbCommandPacketInterface , private Gdb::CommandPackets::CommandPacket { public: BreakpointType type = BreakpointType::UNKNOWN; Targets::TargetMemoryAddress address = 0; Targets::TargetMemorySize size = 0; explicit SetBreakpoint(const RawPacket& rawPacket); void handle( DebugSession& debugSession, const AvrGdbTargetDescriptor& gdbTargetDescriptor, const Targets::TargetDescriptor& targetDescriptor, Services::TargetControllerService& targetControllerService ) override; }; }