1 //===-- MICmdCmdTarget.h ----------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // Overview: CMICmdCmdTargetSelect interface.
12 // To implement new MI commands derive a new command class from the
14 // class. To enable the new command for interpretation add the new
16 // to the command factory. The files of relevance are:
20 // For an introduction to adding a new command see
21 // CMICmdCmdSupportInfoMiCmdQuery
22 // command class as an example.
27 #include "MICmdBase.h"
28 #include "MICmnMIValueList.h"
29 #include "MICmnMIValueTuple.h"
32 //============================================================================
33 // Details: MI command class. MI commands derived from the command base class.
34 // *this class implements MI command "target-select".
35 // http://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI-Target-Manipulation.html#GDB_002fMI-Target-Manipulation
37 class CMICmdCmdTargetSelect : public CMICmdBase {
40 // Required by the CMICmdFactory when registering *this command
41 static CMICmdBase *CreateSelf();
45 /* ctor */ CMICmdCmdTargetSelect();
49 // From CMICmdInvoker::ICmd
50 bool Execute() override;
51 bool Acknowledge() override;
52 bool ParseArgs() override;
54 /* dtor */ ~CMICmdCmdTargetSelect() override;
58 const CMIUtilString m_constStrArgNamedType;
59 const CMIUtilString m_constStrArgNamedParameters;
63 //============================================================================
64 // Details: MI command class. MI commands derived from the command base class.
65 // *this class implements MI command "target-attach".
66 // http://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI-Target-Manipulation.html#GDB_002fMI-Target-Manipulation
68 class CMICmdCmdTargetAttach : public CMICmdBase {
71 // Required by the CMICmdFactory when registering *this command
72 static CMICmdBase *CreateSelf();
76 /* ctor */ CMICmdCmdTargetAttach();
80 // From CMICmdInvoker::ICmd
81 bool Execute() override;
82 bool Acknowledge() override;
83 bool ParseArgs() override;
85 /* dtor */ ~CMICmdCmdTargetAttach() override;
89 const CMIUtilString m_constStrArgPid;
90 const CMIUtilString m_constStrArgNamedFile;
91 const CMIUtilString m_constStrArgWaitFor;
95 //============================================================================
96 // Details: MI command class. MI commands derived from the command base class.
97 // *this class implements MI command "target-attach".
98 // http://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI-Target-Manipulation.html#GDB_002fMI-Target-Manipulation
100 class CMICmdCmdTargetDetach : public CMICmdBase {
103 // Required by the CMICmdFactory when registering *this command
104 static CMICmdBase *CreateSelf();
108 /* ctor */ CMICmdCmdTargetDetach();
112 // From CMICmdInvoker::ICmd
113 bool Execute() override;
114 bool Acknowledge() override;
115 bool ParseArgs() override;
117 /* dtor */ ~CMICmdCmdTargetDetach() override;