|
In the Statechart Editor, in the statechart group settings dialog, it is possible to specify which topics and components (proxies) should be accessible from states inside this statechart group.
To make new topics and components (proxies) available in this dialog, they need to be specified and described in the VariantInfo-${PACKAGENAME}.xml
file of the containing package. This file is located in each package at ${PACKAGENAME}/data/${PACKAGENAME}/VariantInfo-${PACKAGENAME}.xml
. The file might look like this:
<?xml version="1.0" encoding="utf-8"?> <VariantInfo> <!-- Name of the library to be linked--> <Lib name="RobotComponentsInterfaces"> <!-- Path to the generated interface file --> <Proxy include="RobotComponents/interface/components/ViewSelectionInterface.h" <!-- Human readable name - shown in gui --> humanName="Automatic View Selection" <!-- Type of the proxy --> typeName="ViewSelectionInterfacePrx" <!-- variable name in generated statechart context file --> memberName="viewSelection" <!-- getter function in generated state file --> getterName="getViewSelection" <!-- Name of the property to specify the network name of the proxy--> propertyName="ViewSelectionName" <!-- Whether or not the proxy should have a default value, true -> default value is used if not specified--> propertyIsOptional="true" <!-- Default network name of the proxy--> propertyDefaultValue="ViewSelection" /> </VariantInfo>
To add a new proxy, add another Proxy
tag with the content like in the example matching to your proxy. The same can be done for topics using the Topic
tag.
If the file is in your own package, you also need to add your package to the additional packages: In ~/.armarx/default.cfg
add the line (the package list speficies the global default packages for all applications):
ArmarX.AdditionalPackages=${YOURPACKAGENAME},Armar6Skills,...
If not done already, you might also have to add the path to your package to the Statechart Groups Search Paths. This is done by clicking the settings wheel icon (right of the save button) in the Statechart Editor and choosing "Add Path".