17 Debug Interface

TDebug_Interface is used when debugging the component code itself by providing a way of examining the internals of the software component. For production versions of components, this is often not supported. The interface assumes a hierarchical form with the root of a component returning children representing internal objects. Each of those objects may have children, and so forth. TDebug_Interface is the class for this interface and has the following methods:

Integer Count()

Returns the number of child components under this level. If this is a terminal (leaf) node, the method returns 0.

String Get_Title()

Returns text representing this level (such as "Cached data").

boolean Has_Children()

Returns True if this node has children.

void Set_Title( string Value )

Sets the text representing this level.

void Activate()

Indicates that the user wished to activate this level. The behavior is undefined and up to the implementor. Typically, this does nothing unless this level is a terminal representing some complex data which is not viewable in a hierarchical form.

boolean Can_Change()

Returns True if this level can be modified.

TDebug_Interface Child( Integer Ordinal )

Returns a debug interface for the specified child level (first child level is 0).

void Kill()

Tells object to destroy itself.

string Modify( string Data, integer Size )

Modifies data. If Size is -1, Data is assumed to be null-terminated and its length is automatically determined. The result will be NULL or a pointer to a null string to indicate success and error text otherwise.

integer Get_Context()

Returns the context set via Set_Context().

void Set_Context( integer Value )

Sets a user-defined integer value. The debugger does nothing with this context except return it via Get_Context().