CCA Wiki
CCA Software Resources
Menu [hide]

PerComponentFileFormat

print PDF
bocca approach
The componentness (that information not redundant with sidl interface descriptions) can now be described (or should be describable, were bocca complete) with the bocca command line:

bocca create component -l LANGUAGE COMPONENTNAME
bocca change COMPONENTNAME --provides=PORTTYPE:PORTNAME
bocca change COMPONENTNAME --uses=PORTTYPE:PORTNAME

The only open issue in the above (bocca) is handling delegated ports and port-properties/component-properties.

small language approach
The component description files may have multiple sections and each section might have its own format.
E.g.

Package ptest {
Component Foo in C++ {
Provides hello.StringConsumerPort output1;
Uses hello.TimePort t1;
}
Component Bar in C {
Provides hello.TimeService clock%N dynamic=true; // %N indicates a number will be part of the runtime-generated port instance name.
Provides hello.SyncService mysync dynamic=true delegated=true; // dynamic means 'not provided in setServices', delegated means not done by Class Bar inheriting interface SyncService and further that there will be a private data member mysync in the component that is the delegate provider.
}


Or in INI fashion, but I'm sure i must be breaking the INI conventions here; with minor extensions this is the language the Ccaffeine framework speaks to the gui to tell it what to draw.
{Component.Foo}
ImplementationLanguage=c++
{Provides.output1}
type=hello.StringConsumerPort
depends=sidl.string
{Uses.t1}
type=hello.TimePort
{Component.Bar}
ImplementationLanguage=c
etc

Created by: baallan last modification: Wednesday 03 of October, 2007 [16:50:31 UTC] by baallan


Online users
17 online users