1 /* ide-debug-manager.h 2 * 3 * Copyright 2017-2019 Christian Hergert <chergert@redhat.com> 4 * 5 * This program is free software: you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation, either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 * 18 * SPDX-License-Identifier: GPL-3.0-or-later 19 */ 20 21 #pragma once 22 23 #include <libide-core.h> 24 #include <libide-foundry.h> 25 26 #include "ide-debugger.h" 27 #include "ide-debugger-breakpoints.h" 28 #include "ide-debugger-types.h" 29 30 G_BEGIN_DECLS 31 32 #define IDE_TYPE_DEBUG_MANAGER (ide_debug_manager_get_type()) 33 34 IDE_AVAILABLE_IN_3_32 35 G_DECLARE_FINAL_TYPE (IdeDebugManager, ide_debug_manager, IDE, DEBUG_MANAGER, IdeObject) 36 37 IDE_AVAILABLE_IN_3_32 38 IdeDebugManager *ide_debug_manager_from_context (IdeContext *context); 39 IDE_AVAILABLE_IN_3_32 40 IdeDebugger *ide_debug_manager_get_debugger (IdeDebugManager *self); 41 IDE_AVAILABLE_IN_3_32 42 gboolean ide_debug_manager_get_active (IdeDebugManager *self); 43 IDE_AVAILABLE_IN_3_32 44 gboolean ide_debug_manager_start (IdeDebugManager *self, 45 IdeRunner *runner, 46 GError **error); 47 IDE_AVAILABLE_IN_3_32 48 void ide_debug_manager_stop (IdeDebugManager *self); 49 IDE_AVAILABLE_IN_3_32 50 IdeDebuggerBreakpoints *ide_debug_manager_get_breakpoints_for_file (IdeDebugManager *self, 51 GFile *file); 52 IDE_AVAILABLE_IN_3_32 53 gboolean ide_debug_manager_supports_language (IdeDebugManager *self, 54 const gchar *language_id); 55 IDE_AVAILABLE_IN_3_32 56 IdeDebugger *ide_debug_manager_find_debugger (IdeDebugManager *self, 57 IdeRunner *runner); 58 59 G_END_DECLS 60