You copied the Doc URL to your clipboard.

Component debug section

The debug section enables control of the published and imported Component Architecture Debug Interface (CADI) interfaces.

By default, all components publish CADI interfaces in the CADI factory to enable connecting CADI-compliant debuggers. By default, components do not import the CADI interfaces of their subcomponents.

A debug section
component MyComponent
{
    composition { a:comp_A; b:comp_B; c:comp_C;}
    debug
    {
        composition.publish;    // publish all components CADI ...
        a.unpublish;            // ... but do NOT publish CADI of ‘a’
        composition.unimport;   // do NOT import any CADI info ...
        b.import;               // ... but import CADI info of ‘b’
    }
}

The keywords are:

publish
The CADI of the subcomponent is published in the CADI factory and a CADI-compliant debugger can connect to the component.
unpublish
The CADI of the subcomponent is not published in the CADI factory and it is not possible for a CADI-compliant debugger to connect to the component.
import
The CADI information of the subcomponent is imported into the CADI interface of the component containing the debug section.
unimport
The CADI information of the subcomponent is not imported into the CADI interface of the component containing the debug section.
composition
All subcomponents of the component are affected by the statement.

These rules apply:

  • unpublish and unimport also affect all subcomponents of the components.
  • The top-level component cannot be unpublished or unimported.
Using unpublish and publish
The CADIs of aa and dd are not published because the unpublish command issued to aa applies to the CADI of dd, even though aa publishes dd in its debug section.
component MyComponent
{
    composition { aa:comp_A; bb:comp_B; cc:comp_C;}
    debug
    {
        composition.publish; // publish all components CADI ...
        aa.unpublish; // ... but do NOT publish CADI of ‘aa’
    }
}

component Comp_A
{
    composition { dd:comp_D}
    debug
    {
        dd.publish; // publish CADI of component dd
    }
}
Empty or missing debug section
debug
{
    composition.publish;
    composition.unimport;
}
Was this page helpful? Yes No