PublishModule
in the first tutorial: <application name="publishAppli"> <deployment> <lib url="CLibrary.jar" /> </deployment> <modules> <cModule name="PublishModule"> <cImplementation path="PublishModule2" nativeConfig="nativeConfig.xml"/> <interfaces> <eventReceived service="event"/> <cyclic service="published" frequency="200ms" attach="attach"/> </interfaces> </cModule> </modules> </application>
PublishModule
in the first tutorial: public interface CLibrary extends Library { @SignatureTag(type=SignatureType.NOTIFICATION, name="event") public void receive(boolean state); @SignatureTag(type=SignatureType.CYCLIC_SERVICE, name="published") public void publish(); @SignatureTag(type=SignatureType.INVOCATION, name="published") public void setInvoker(Invoker callback); public interface Invoker extends Callback { void invoke(int value); } }The associated Java interface must be exposed by the
deployment
element of the C module associated application. For example:<application name="publishAppli"> <deployment> <lib url="CLibrary.jar" /> </deployment> <modules> <cModule name="PublishModule"> ... </cModule> </modules> </application>The path of the interface must also be specified in the associated native configuration specification.
PublishModule
in the first tutorial: <nativeConfig libPath="org.da.testutils.clibrary.CLibrary"> <invokeServices> <invokeService name="published"> <argument name="value" /> </invokeService> </invokeServices> <notifServices> <notifService name="event"> <argument name="event" /> </notifService> </notifServices> </nativeConfig>
Copyright 2017-2020 Dassault Aviation. All Rights Reserved. Documentation and source under the LGPL v3 licence