1
/*******************************************************************************
2
* Copyright (c) 2000, 2006 QNX Software Systems and others.
3
* All rights reserved. This program and the accompanying materials
4
* are made available under the terms of the Eclipse Public License v1.0
5
* which accompanies this distribution, and is available at
6
* http://www.eclipse.org/legal/epl-v10.html
9
* QNX Software Systems - Initial API and implementation
10
*******************************************************************************/
12
package org.eclipse.cdt.debug.core.cdi.model;
14
import org.eclipse.cdt.debug.core.cdi.CDIException;
18
* A register is a special kind of variable that is contained
19
* in a register group. Each register has a name and a value.
23
public interface ICDIRegister extends ICDIRegisterDescriptor {
25
* Returns true if the value of this variable could be changed.
27
* @return true if the value of this variable could be changed
28
* @throws CDIException if this method fails. Reasons include:
30
boolean isEditable() throws CDIException;
33
* Returns the value of this variable.
36
* @return the value of this variable
37
* @throws CDIException if this method fails. Reasons include:
39
ICDIValue getValue(ICDIStackFrame context) throws CDIException;
42
* Attempts to set the value of this variable to the value of
43
* the given expression.
45
* @param expression - an expression to generate a new value
46
* @throws CDIException if this method fails. Reasons include:
48
void setValue(String expression) throws CDIException;
51
* Sets the value of this variable to the given value.
53
* @param value - a new value
54
* @throws CDIException if this method fails. Reasons include:
56
void setValue(ICDIValue value) throws CDIException;
59
* Remove the variable from the manager list.
62
* @return ICDIArgument
63
* @throws CDIException
65
void dispose() throws CDIException;
67
boolean equals(ICDIRegister reg);