blob: 5b0763408c8f5aea82d612bfda215af75cc55761 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
/*******************************************************************************
* Copyright (c) 2011 Freescale Semiconductor and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*******************************************************************************/
package org.eclipse.cdt.debug.ui.memory.memorybrowser.api;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
/**
* Public API for accessing the memory browser.
*
* <p>
* All methods must be called on the UI thread, unless otherwise noted.
*/
public interface IMemoryBrowser {
/**
* Tells the memory browser to go to a new memory location. Updates the goto
* address bar and memory space selector (if present).
*
* <p>
* This operation is a no-op if there is no active memory retrieval object.
*
* @param expression
* the expression to go to. Cannot be null or empty string.
* Expression is trimmed.
* @param memorySpaceId
* optional memory space ID. Argument is ignored if the memory
* browser is not currently showing a memory space selector. If
* selector is showing, this argument is interpreted as follows:
* empty string means no memory space (as if the user selected
* the "----" memory space), and null means use whatever memory
* space is selected. Passing an ID that is not present in the
* selector will result in an IllegalArgumentException
* @param inNewTab
* if true, memory is shown in a new tab
* @throws CoreException
*/
public void go(String expression, String memorySpaceId, boolean inNewTab) throws CoreException;
/**
* Returns the selected memory space.
*
* <p>
* The memory browser exposes a memory space selector when debugging a
* target with multiple memory spaces. The selection provides the context
* for the expression when the user performs a GO action. This method will
* return the currently selected memory space.
*
* @return null if the memory space selector is not shown, or if the n/a
* entry is selected. Otherwise the selected memory space ID. Never
* an empty string.
*/
public String getSelectedMemorySpace();
/**
* Returns the active memory retrieval object, or null if none is active.
*
* This is the retrieval object being used to obtain the memory shown in the
* active tab. Note that all simultaneously visible tabs use the same
* retrieval object. The retrieval object is obtained from the active debug
* context.
*
* @return the active memory retrieval object, or null if none is active
*/
public IMemoryBlockRetrieval getActiveRetrieval();
}
|