Class/Member panel


This panel is used to display the class information [CC-RX], function information and variable information in a tree structure.

The following types of function/variable are displayed in this panel.

-

Global function

-

Static function

-

Member function (only when C++ source files are subject to analysis) [CC-RX]

-

Global variable

-

Static variable inside a file

-

Class variable (only when C++ source files are subject to analysis) [CC-RX]

-

Instance variable (only when C++ source files are subject to analysis) [CC-RX]

 

Note, however, that the class information [CC-RX], function information and variable information in the files not to be analyzed is not displayed in this panel (see "1.1.1 What is analyzed").

See "2.5 Display Class/Function/Variable Information" for details on how to display the class information [CC-RX], function information and variable information.

Caution

[CC-RX]

The class information is provided only when C++ source files are subject to analysis.
When C++ source files are subject to analysis, also see "3.6 When CC-RX (C++ Source Files) Is Used".

Figure A.24

Class/Member Panel

 

The following items are explained here.

[How to open]

-

On the toolbar in the Main window, click the button.

-

From the [View] menu, select [Program Analyzer] >> [Class/Member].

[Description of each area]

(1)

Panel control area

 

 

[View Setting] combo box

(Left combo box)

Selects a classification method for the tree from the drop-down list.

 

Selects the last node that was selected.

Note that this item is disabled if there are no node selections in the history, or during execution of a program.

 

Selects the node that was selected before the button was clicked.

Note that this item is disabled if there are no node selections in the history that were selected via button, or during execution of a program.

 

 

[Target Name] combo box

(Left combo box)

Specifies the character strings to search via the / button (case-insensitive).

You can either type character strings directly from the key board (up to 512 characters), or select one from the input history via the drop-down list (up to 10 items).

Note that this item is disabled during execution of a program.

 

Searches up in the last tree to have focus for nodes containing the string specified in the [Target Name] combo box, and selects the node that is found.

Note that this button is disabled if the [Target Name] combo box is left blank, or during execution of a program.

 

Searches down in the last tree to have focus for nodes containing the string specified in [Target Name] combo box, and selects the node that is found.

Note that this button is disabled if the [Target Name] combo box is left blank, or during execution of a program.

Remark

After typing character strings to search, to press the [Enter] key is the same function as clicking the button, and to press the [Shift] + [Enter] key is the same function as clicking the button.

(2)

Classes/Categories tree area

This area used to display the class and other information defined by the program in tree format.

Information about the node being selected in this tree appears in the Functions/Variables list area.

You can use the [View Setting] combo box to classify the display into the following five groups.

 

 

The node name and their order in the tree are described below.

Note however, that if information could not be obtained, or there are no child nodes to display, then that node will not appear in the tree.

You can expand/shrink the node with a child node by double-clicking it.

(a)

Category group (default)

This classifies and displays classes, interfaces and other types.

Node

Typedefs

Global Functions and Variables

Define Macros and Constants

Namespaces [CC-RX]

Namespace name

Class [CC-RX]

Class nameNote 1

Base Types

Base type (Class/Interface/Struct type) name

Derived Types

Derived type (Class/Interface/Struct type) name

Inner Types

Inner type (Class/Interface/Struct type/Union type/Enum type) name

Interfaces [CC-RX]

Interface nameNote 1

Base Types

Base type (Class/Interfaces/Struct type) name

Derived Types

Derived type (Class/Interface/Struct type) name

Inner Types

Inner type (Class/Interface/Struct type/Union type/Enum type) name

Struct Types

Struct type nameNote 1, 2

Union Types

Union type nameNote 3

Enum Types

Enum type name

Notes 1.

[CC-RX]

These are displayed in the following access specifier order, together with icons denoting the access specifier (nodes with the same access specifier are displayed in alphabetical order).

Access Specifier

Icon

public

None

protected

 

private

 

Notes 2.

[CC-RX]

Base Types node, Derived Types node and Inner Types node are displayed as necessary.

Notes 3.

[CC-RX]

Inner Types node is displayed as necessary.

(b)

Access group

This classifies and displays nodes by their access specifiers specified in their classes, etc..

Nodes of the same type are displayed in alphabetical order.

Node

Typedefs

Global Functions and Variables

Define Macros and Constants

public [CC-RX]

Class nameNote 1

Interface nameNote 1

Struct type nameNote 1

Union type nameNote 2

Enum type name

protected [CC-RX]

Class nameNote 1

Interface nameNote 1

Struct type nameNote 1

Union type nameNote 2

Enum type name

private [CC-RX]

Class nameNote 1

Interface nameNote 1

Struct type nameNote 1

Union type nameNote 2

Enum type name

Notes 1.

[CC-RX]

Base Types node, Derived Types node and Inner Types node are displayed as necessary.

Notes 2.

[CC-RX]

Inner Types node is displayed as necessary.

(c)

Namespace group

This classifies and displays nodes by the namespaces in which the class or other elements are defined.

Nodes of the same type are displayed in the access specifier order (see "(a) Category group (default)"), and nodes with the same access specifier are displayed in alphabetical order.

Node

Namespace nameNote 1

Typedefs

Global Functions and Variables

Define Macros and Constants

Class name [CC-RX]Note 2

Interface nameNote 2

Struct type nameNote 2

Union type nameNote 3

Enum type name

Notes 1.

Function, classes, and other elements that do not belong to any namespace (including when they are in C source file) are displayed in the same manner, in the "(Global)" instead of "Namespace name". If an element is defined in an anonymous namespace, its "Namespace name" will be "(Anonymous:<File name>)", and it will be displayed in the same way.

Notes 2.

[CC-RX]

Base Types node, Derived Types node and Inner Types node are displayed as necessary.

Notes 3.

[CC-RX]

Inner Types node is displayed as necessary.

(d)

File group

This classifies and displays the files in which the class or other elements are defined.

Nodes of the same type are displayed in the access specifier order (see "(a) Category group (default)"), and nodes with the same access specifier are displayed in alphabetical order.

Node

File nameNote 1

Typedefs

Global Functions and Variables

Define Macros and Constants

Class name [CC-RX]Note 2

Interface name [CC-RX]Note 2

Struct type nameNote 2

Union type nameNote 3

Enum type name

Notes 1.

The icon displayed differs depending on the type of the file.

Notes 2.

[CC-RX]

Base Types node, Derived Types node and Inner Types node are displayed as necessary.

Notes 3.

[CC-RX]

Inner Types node is displayed as necessary.

(e)

Alphabet group

This displays nodes in alphabetical order, regardless of their classes or access specifiers.

Node

Note

Typedefs

 

Global Functions and Variables

 

Define Macros and Constants

 

Class name [CC-RX]Note 1

These are displayed in alphabetical order.

Interface name [CC-RX]Note 1

Struct type nameNote 1

Union type nameNote 2

Enum type name

Notes 1.

[CC-RX]

Base Types node, Derived Types node and Inner Types node are displayed as necessary.

Notes 2.

[CC-RX]

Inner Types node is displayed as necessary.

Cautions 1.

Typedefs node/Global Functions and Variables node/Define Macros and Constants node is not displayed if no information displayed in the Functions/Variables list area exist.

Cautions 2.

[CC-RX]

When C++ source files are subject to analysis, the alternative name of a namespace is not displayed.

Remarks 1.

When the mouse cursor is hovered over a xxx name node (except for a file name node), the namespace name to which it belongs appears in a pop-up. However, if it belongs to a global namespace or an anonymous namespace, then "-" or "<unnamed>" will appear.
If the mouse cursor is hovered over a namespace name node, the namespace name to which it belongs (upper namespace name) will appear.

Remarks 2.

About Namespace name node:
If an element contains an internal namespace, it is displayed in the form "enveloping Namespace name::internal Namespace name".

Examples 1.

namespace Name: Name

Examples 2.

For an internal namespace: Name::SubName

Remarks 3.

About Class name node:
If it is a template class, then the type information is added.
If an element is an internal class, it is displayed in the form "enveloping Class name::internal Class name".

Examples 1.

class Sub: Sub

Examples 2.

template<class T> class List: List<T>

Examples 3.

For an internal class: Main::SubInMain

Remarks 4.

About Class/Interface/Struct type:
Base Types, Derived Types, and Inner Types are only shown for classes/interfaces that are direct descendants (if there are multiple such types, they are all shown).

Remarks 5.

If Class name/Interface name/Struct type name/Union type name/Enum type name is an anonymous (i.e. it has no tag name), then it will be displayed in the format of "<unnamed_N>" (N: A number from 1 automatically provided in appearance order).

Remarks 6.

You can jump to the corresponding node (Class name node, Interface name node, etc. in the same tree) by double-clicking a node displayed under the Base Types node/Derived Types node/Inner Types node.

Remarks 7.

You can jump to the location where the node currently being selected is defined or declared (see "2.7 Jump to Defined Location"/"2.8 Jump to Declared Location").

(3)

Functions/Variables list area

This area displays the information of the node currently being selected in the Classes/Categories tree area (e.g. function names/variable names that are defined in the node).

The relationship between the selection in the Classes/Categories tree area and the display contents of this area is as follows:

Node Selection

Display Contents of This area

Typedefs

Alternative name

Global Functions and Variables

Global function name

Static function name

Global variable name

Static variable inside a file name

Define Macros and Constants

Macro name

Constant

Class name

 

Interface name

 

Struct type name (C++ source file) [CC-RX]

Alternative name

Member function name

Class variable name

Instance variable name

Constant

Union type name (C++ source file) [CC-RX]

Alternative name

Member function name

Instance variable name

Constant

Struct type name (C source file)

Member variable name

Union type name (C source file)

Member variable name

Enum type name

Enum member name

Namespace name

 

File name

 

Other than above

None

Caution

Nothing is displayed in this area if functions/variables to be displayed do not exist or nothing is being selected in the Classes/Categories tree area.

Remarks 1.

When the mouse cursor is hovered over a xxx name node (except for a file name node), the namespace name to which it belongs appears in a pop-up. However, if it belongs to a global namespace or an anonymous namespace, then "-" or "<unnamed>" will appear.
If the mouse cursor is hovered over a namespace name node, the namespace name to which it belongs (upper namespace name) will appear.

Remarks 2.

Argument types are added to function names.

Examples 1.

int main(void): main(void)

Examples 2.

void main_sub01(int local_a, int local_b, int local_c): main_sub01(int, int, int)

Examples 3.

int function01(int arg01) const : function01(int) const

 

For template functions [CC-RX], the line for the definition of a template function and the line for the function using a template function are displayed individually.

Examples 1.

template<class T> T max(T a, T b) (on a line where a template is defined) : max<T:1>()

Examples 2.

int max(int a, int b) (on a line where a template is used): max<T:1>(int, int)

Remarks 3.

[CC-RX]

These are displayed in the following access specifier order, together with icons denoting the access specifier type (nodes with the same access specifier are displayed in alphabetical order).
However, if the tree is classified by File group, then they are all displayed in alphabetical order.

Access Specifier

Icon

public

None

protected

 

private

 

 

Remarks 4.

You can jump to the location where the node currently being selected is defined or declared (see "2.7 Jump to Defined Location"/"2.8 Jump to Declared Location").

[Toolbar]

The toolbar provides the following items and functions

 

Acquires the latest data from the debug tool, and updates the contents of this panel.

[[Edit] menu (Class/Member panel-dedicated items)]

The [Edit] menu for this panel provides the following items and functions.

Copy

Copies the contents of the selected node to the clipboard as character strings.

Select All

Selects all the nodes being displayed in the Functions/Variables list area.

[Context menu]

The context menu displayed by right-clicking on this panel provides the following items and functions.

Jump to Source

Opens the Editor panel and displays the source file in which the node currently being selected is defined (see "2.7 Jump to Defined Location").

Jump to Declaration of Source

Opens the Editor panel and displays the source file in which the node currently being selected is declared (see "2.8 Jump to Declared Location").

Jump to Disassemble

Opens the Disassemble panel (Disassemble1) and displays the disassemble data corresponding to the start address of the nodeNote currently being selected in the Functions/Variables list area (see "2.7 Jump to Defined Location").

Note that this item is disabled while disconnecting from the debug tool.

Jump to Memory

Opens the Memory panel (Memory1) and displays the memory list corresponding to the start address of the nodeNote currently being selected in the Functions/Variables list area (see "2.7 Jump to Defined Location").

Note that this item is disabled while disconnecting from the debug tool.

Jump to Function/Variable List

Opens the Function List panel/Variable List panel and selects the function/variable of the nodeNote currently being selected.

Copy

Copies the contents of the selected node to the clipboard as character strings.

Note

[CC-RX]

This item is disabled if a node that indicates a instance variable is selected.