Commit 3e5128eb authored by Tiziano Munaro's avatar Tiziano Munaro

GREEN/RED with minor changes

Issue-Ref: 3867
Issue-Url: https://af3-developer.fortiss.org/issues/3867Signed-off-by: Tiziano Munaro's avatarTiziano Munaro <munaro@fortiss.org>
parent 26ce6c8d
......@@ -14,7 +14,7 @@
provider="org.fortiss.af3.platform.raspberry.ui.prototype.ProtoypeProvider">
</modelPrototypeProvider>
<modelPrototypeProvider
provider="org.fortiss.af3.platform.raspberry.ui.prototype.LightRunnerBoardProtoypeProvider">
provider="org.fortiss.af3.platform.raspberry.ui.prototype.LightRunnerProtoypeProvider">
</modelPrototypeProvider>
</extension>
<extension
......@@ -400,7 +400,7 @@
modelElementClass="org.fortiss.af3.platform.raspberry.model.camera.CameraRoverID"/>
</modelElementHandler>
<modelElementHandler
handler="org.fortiss.af3.platform.raspberry.ui.prototype.LightRunnerBoardElementsHandler">
handler="org.fortiss.af3.platform.raspberry.ui.prototype.LightRunnerElementsHandler">
<modelElementClass
modelElementClass="org.fortiss.af3.platform.raspberry.model.modelsconference.Button"/>
<modelElementClass
......
LightRunnerBoardElementsHandler.java c8186c7b2db2f16a2ee8879c6f6792b9f94ed402 GREEN
LightRunnerBoardProtoypeProvider.java 83a7e4bdef1543d3e1beeae91c11cfffc8fbc790 GREEN
LightRunnerElementsHandler.java 6d7d65aeec9f75bcc35632d3d8af9b5b2c813ec6 GREEN
LightRunnerProtoypeProvider.java 105cf1de751c39921650c1e9a9e4307dc63d542f GREEN
ProtoypeProvider.java b523a903dc04d892dba166820fcc995e7ad743ae RED
......@@ -23,7 +23,7 @@ import org.fortiss.tooling.kernel.ui.extension.IModelElementHandler;
import org.fortiss.tooling.kernel.ui.extension.base.NamedCommentedModelElementHandlerBase;
/** {@link IModelElementHandler} for light runner board elements. */
public class LightRunnerBoardElementsHandler extends NamedCommentedModelElementHandlerBase<UIDUnit> {
public class LightRunnerElementsHandler extends NamedCommentedModelElementHandlerBase<UIDUnit> {
/** {@inheritDoc} */
@Override
......
......@@ -15,13 +15,13 @@
+--------------------------------------------------------------------------*/
package org.fortiss.af3.platform.raspberry.ui.prototype;
import static org.fortiss.af3.platform.raspberry.modelsconference.ModelsConferencePlatformElementFactory.createDemonstratorBoard;
import static org.fortiss.af3.platform.raspberry.lightrunner.LightRunnerPlatformElementFactory.createDemonstratorBoard;
import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
import org.fortiss.tooling.kernel.extension.base.PrototypeProviderBase;
/** {@link PrototypeProviderBase} for models conference board elements. */
public class LightRunnerBoardProtoypeProvider extends PrototypeProviderBase {
public class LightRunnerProtoypeProvider extends PrototypeProviderBase {
/** Stores the category to display for these prototypes. */
protected final static String CATEGORY_NAME = "Light Runner";
......
eclipse.preferences.version=1
encoding//html/external_tools.html=UTF-8
encoding//model/conti.ecorediag=UTF-8
encoding//src/org/fortiss/af3/platform/raspberry/modelsconference/AF3PlatformModelsConferenceActivator.java=UTF-8
encoding//src/org/fortiss/af3/platform/raspberry/modelsconference/ModelsConferencePlatformElementFactory.java=UTF-8
encoding//uml/exploration.ecorediag=UTF-8
encoding/<project>=US-ASCII
......@@ -8,6 +8,7 @@ Bundle-Vendor: %providerName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-11
Export-Package: org.fortiss.af3.platform.raspberry.generator.framework,
org.fortiss.af3.platform.raspberry.lightrunner,
org.fortiss.af3.platform.raspberry.model,
org.fortiss.af3.platform.raspberry.model.brick,
org.fortiss.af3.platform.raspberry.model.brick.impl,
......@@ -35,7 +36,6 @@ Export-Package: org.fortiss.af3.platform.raspberry.generator.framework,
org.fortiss.af3.platform.raspberry.model.v2v,
org.fortiss.af3.platform.raspberry.model.v2v.impl,
org.fortiss.af3.platform.raspberry.model.v2v.util,
org.fortiss.af3.platform.raspberry.modelsconference,
org.fortiss.af3.platform.raspberry.util
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.fortiss.af3.platform.raspberry.AF3PlatformRaspberryActivator
......
raspberry.ecore 57652dd3e1897a56d62b5e095712540a23a94b02 YELLOW
raspberry.ecore 709c09faa8a8673031eeafbb2b96d590ac8412a3 GREEN
......@@ -140,8 +140,8 @@
<eClassifiers xsi:type="ecore:EClass" name="V2VLeaderUIDOutput" eSuperTypes="#//v2v/V2VOuput"/>
<eClassifiers xsi:type="ecore:EClass" name="V2VHandshakeInput" eSuperTypes="#//v2v/V2VInput"/>
</eSubpackages>
<eSubpackages name="modelsconference" nsURI="http://www.fortiss.org/af3/platform/raspberry/modelsconference"
nsPrefix="org-fortiss-af3-platform-raspberry-modelconference">
<eSubpackages name="lightrunner" nsURI="http://www.fortiss.org/af3/platform/raspberry/lightrunner"
nsPrefix="org-fortiss-af3-platform-raspberry-lightrunner">
<eClassifiers xsi:type="ecore:EClass" name="LCD" eSuperTypes="#//RaspberryPiTransmitterBase #//brick/UIDUnit"/>
<eClassifiers xsi:type="ecore:EClass" name="Button" eSuperTypes="#//RaspberryPiReceiverBase #//brick/UIDUnit"/>
<eClassifiers xsi:type="ecore:EClass" name="LED" eSuperTypes="#//RaspberryPiTransmitterBase #//brick/UIDUnit"/>
......
......@@ -138,12 +138,12 @@
<genClasses ecoreClass="raspberry.ecore#//v2v/V2VLeaderUIDOutput"/>
<genClasses ecoreClass="raspberry.ecore#//v2v/V2VHandshakeInput"/>
</nestedGenPackages>
<nestedGenPackages prefix="Modelsconference" basePackage="org.fortiss.af3.platform.raspberry.model"
disposableProviderFactory="true" ecorePackage="raspberry.ecore#//modelsconference">
<genClasses ecoreClass="raspberry.ecore#//modelsconference/LCD"/>
<genClasses ecoreClass="raspberry.ecore#//modelsconference/Button"/>
<genClasses ecoreClass="raspberry.ecore#//modelsconference/LED"/>
<genClasses ecoreClass="raspberry.ecore#//modelsconference/Poti"/>
<nestedGenPackages prefix="Lightrunner" basePackage="org.fortiss.af3.platform.raspberry.model"
disposableProviderFactory="true" ecorePackage="raspberry.ecore#//lightrunner">
<genClasses ecoreClass="raspberry.ecore#//lightrunner/LCD"/>
<genClasses ecoreClass="raspberry.ecore#//lightrunner/Button"/>
<genClasses ecoreClass="raspberry.ecore#//lightrunner/LED"/>
<genClasses ecoreClass="raspberry.ecore#//lightrunner/Poti"/>
</nestedGenPackages>
</genPackages>
</genmodel:GenModel>
AF3PlatformRaspberryActivator.java 47c249340f86426257bb868bdc7b30c77086745c YELLOW
AF3PlatformRaspberryActivator.java 47c249340f86426257bb868bdc7b30c77086745c GREEN
CanBusCompositor.java fe2eabdab375daec6ccb47cb3fb8452112717854 YELLOW
CanToRaspberryCompositor.java 927a741f55da203b96939f8620c5c9ba5cd3f046 YELLOW
RaspberryPiCompositor.java 52c4a6dbc673bbb548aff89b870b60ad4b51fd6e YELLOW
RaspberryToCanCompositor.java 7180ea9d371143bdc70ca75170a58d9162289b66 YELLOW
CanBusCompositor.java b634ad94492dc168cde6a69dce61bee7a53f8e37 GREEN
CanToRaspberryCompositor.java 927a741f55da203b96939f8620c5c9ba5cd3f046 GREEN
RaspberryPiCompositor.java fc4d52f1c2edc550bfb1ed67c4c8efd788fa6eb7 RED
RaspberryToCanCompositor.java 7180ea9d371143bdc70ca75170a58d9162289b66 GREEN
......@@ -23,7 +23,7 @@ import org.fortiss.af3.platform.model.IPlatformArchitectureElement;
import org.fortiss.af3.platform.raspberry.model.CanBus;
import org.fortiss.af3.platform.raspberry.model.CanConnector;
/** Compositor for {@link CanConnector} on {@link CanBus}. */
/** Compositor for a {@link CanConnector} on a {@link CanBus}. */
public class CanBusCompositor
extends PlatformArchitectureElementCompositorBase<IPlatformArchitectureElement> {
......@@ -31,11 +31,11 @@ public class CanBusCompositor
@Override
protected boolean isCorrectElementClass(IPlatformArchitectureElement container,
EObject contained) {
final boolean instanceOfAny = isInstanceOfAny(contained, CanConnector.class);
final boolean isCanConnector = isInstanceOfAny(contained, CanConnector.class);
if(container != null) {
final boolean instanceOfAny2 = isInstanceOfAny(container, CanBus.class);
return instanceOfAny2 && instanceOfAny;
final boolean isCanBus = isInstanceOfAny(container, CanBus.class);
return isCanBus && isCanConnector;
}
return instanceOfAny;
return isCanConnector;
}
}
......@@ -79,9 +79,10 @@ public class RaspberryPiCompositor
/** {@inheritDoc} */
@Override
// TODO (TM): Create a marker interface for all RPi-compatible connectors.
protected boolean isCorrectElementClass(IPlatformArchitectureElement container,
EObject contained) {
final boolean instanceOfAny2 = isInstanceOfAny(contained, CanConnector.class,
final boolean isConnector = isInstanceOfAny(contained, CanConnector.class,
ActuatorPWM.class, ConsoleOutput.class, GamepadReceiverBase.class,
UltraSonicSensor.class, LaserRangeSensor.class, AccelerationXSensor.class,
AccelerationYSensor.class, AccelerationZSensor.class, AngularVelocityXSensor.class,
......@@ -96,9 +97,9 @@ public class RaspberryPiCompositor
ControlCenterDownstreamInput.class, ControlCenterUpstreamOutput.class,
V2VInput.class, V2VOuput.class);
if(container != null) {
final boolean instanceOfAny = isInstanceOfAny(container, RaspberryPi.class);
return instanceOfAny && instanceOfAny2;
final boolean isRaspberryPi = isInstanceOfAny(container, RaspberryPi.class);
return isRaspberryPi && isConnector;
}
return instanceOfAny2;
return isConnector;
}
}
CanBusGeneratorExtension.java 4bed3c88e71923515d7d9dc9235bc40a49ce237f YELLOW
CanConnectorGeneratorExtension.java 900c836414d63ccf2cba904b396e4d5b2efe51a5 YELLOW
CanTransmissionCatalog.java f678cb0f16d4ba46a0f5ae5dd35b569c1211f499 YELLOW
ConsoleOutputGeneratorExtension.java 1246aa81a2865a798207f13e66bfeebc8fbf0cb8 YELLOW
MainGenerator.java f241e63e8ebb6a3ecc955fe503369dde1d4b89c3 YELLOW
CanBusGeneratorExtension.java 4bed3c88e71923515d7d9dc9235bc40a49ce237f GREEN
CanConnectorGeneratorExtension.java 5680017d9ef5ec7ac81ef7c035ba0a946d0f8b15 GREEN
CanTransmissionCatalog.java 0e5d45246d1c05d8391d540053df306c3e2a0b4d GREEN
ConsoleOutputGeneratorExtension.java 49509abbd2d6e2715c2f3af074d2e46a5c0a961e GREEN
MainGenerator.java 9421a58c972935bb6660a2ba0ac663d9a79c7907 GREEN
MultiUnitMainGenerator.java 11c78dc068c5446b3e6b92ca688549b065f95071 RED
PWMActuatorGeneratorExtension.java a4925aac8b6b7d650ef60fca32b18bba894c3b03 YELLOW
RaspberryPIGeneratorExtension.java e47fb8e892354505fce0e388fd362d789f686fb6 YELLOW
SingleUnitMainGenerator.java 772c368ade02ebc703a8fc8f329b6748bcce72be YELLOW
PWMActuatorGeneratorExtension.java 0764332c723731ae0ab19f09f65dfe8c6a571bdb GREEN
RaspberryPIGeneratorExtension.java 33d100efb28c217042d32facbcb0ae0ac9173b36 GREEN
SingleUnitMainGenerator.java 25750238d45816d706021d2ceb1b493a4d3c0417 GREEN
......@@ -88,9 +88,7 @@ public class CanConnectorGeneratorExtension extends TransceiverExecutableBase<Ca
}
}
/**
* builds a constant literal C string including double quotes
*/
/** Builds a constant literal C string including double quotes. */
private RawString literalString(String str) {
return rawString("\"" + str + "\"");
}
......
......@@ -35,6 +35,7 @@ import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
* are used by the {@link RaspberryPIGeneratorExtension}.
*/
public class CanTransmissionCatalog extends TransmissionCatalog {
/** Mapping from atomic component to the execution unit it is allocated on. */
private HashMap<Component, RaspberryPi> componentToRaspberry = new HashMap<>();
/** Mapping from execution unit to generated CAN IDs starting from {@code canIdCounter}. */
......@@ -72,7 +73,7 @@ public class CanTransmissionCatalog extends TransmissionCatalog {
}
}
/** Returns whether this input port is connected to a remote source. */
/** Returns whether this {@link InputPort} is connected to a remote source. */
public boolean hasRemoteSource(InputPort inport) {
OutputPort outport = atomicInputToOutput.get(inport);
if(outport == null) {
......@@ -83,27 +84,27 @@ public class CanTransmissionCatalog extends TransmissionCatalog {
return inPi != outPi;
}
/** Returns whether the given output port is needed remotely. */
/** Returns whether the given {@link OutputPort} is needed remotely. */
public boolean isOutputNeededRemotely(OutputPort outport) {
return atomicInputToOutput.containsValue(outport);
}
/** Returns the atomic (remote) source port for this input port. */
/** Returns the atomic (remote) source port for this {@link InputPort} */
public OutputPort getSourcePort(InputPort inport) {
return atomicInputToOutput.get(inport);
}
/** Returns the {@link RaspberryPi} for the given port. */
/** Returns the {@link RaspberryPi} for the given {@link Port}. */
public RaspberryPi getRaspberryPi(Port port) {
return getRaspberryPi(port.getComponent());
}
/** Returns the {@link RaspberryPi} for the given component. */
/** Returns the {@link RaspberryPi} for the given {@link Component}. */
public RaspberryPi getRaspberryPi(Component component) {
return componentToRaspberry.get(component);
}
/** Returns the CAN id for the given {@link RaspberryPi}. */
/** Returns the CAN ID for the given {@link RaspberryPi}. */
public int getCanId(RaspberryPi raspi) {
return raspberryCanId.get(raspi);
}
......
......@@ -25,6 +25,7 @@ import org.fortiss.af3.project.model.typesystem.IType;
/** Executable for {@link ConsoleOutput}. */
public class ConsoleOutputGeneratorExtension extends ExecutableBase<ConsoleOutput>
implements IWriteableGeneratorExtension {
/** Constructor. */
public ConsoleOutputGeneratorExtension(ConsoleOutput modelElement) {
super(modelElement);
......@@ -38,7 +39,7 @@ public class ConsoleOutputGeneratorExtension extends ExecutableBase<ConsoleOutpu
return "printf(\"" + name + " = " + typeFormat + "\\n\", " + value + ");\n";
}
/** Returns the C format string for the given type. */
/** Returns the C format string for the given {@link IType}. */
private String getTypeFormat(IType type) {
if(type instanceof TDouble) {
return "%f";
......
......@@ -44,10 +44,7 @@ import org.fortiss.af3.platform.raspberry.generator.framework.IWriteableGenerato
import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
import org.fortiss.tooling.kernel.model.INamedElement;
/**
* Class containing the code-generation of the main.c file that is shared between single- and
* multi-unit deployment.
*/
/** Base class for generators for the main.c file to be deployed to {@link RaspberryPi}s. */
public abstract class MainGenerator {
/** The current execution unit. */
......@@ -150,6 +147,8 @@ public abstract class MainGenerator {
for(PlatformConnectorUnit pcu : platformConnector2ExecutableBase.keySet()) {
ExecutableBase<?> exec = platformConnector2ExecutableBase.get(pcu);
if(!configurableInitDone && exec instanceof IConfigurableExtension) {
// TODO (TM): Store the path of the configuration file in a constant so that it is
// easy to spot.
sb.append("conf_init(\"/home/pi/config.xml\");\n");
configurableInitDone = true;
}
......@@ -202,6 +201,7 @@ public abstract class MainGenerator {
}
return pnvVar + " = false;\n" + readCode;
}
// TODO (TM): Can this happen? If so, an exception should be thrown!
return "FIXME(\"No generator extension available to read " + inport.getName() + " from " +
receiver.getName() + "\");\n";
}
......@@ -216,11 +216,17 @@ public abstract class MainGenerator {
String novalCode = wexec.getNoValWriteCode(outport);
if(novalCode != null) {
String novalVariable = getPortNoValIdentifier(sourceVariable);
return "if (" + novalVariable + ") {\n" + novalCode + "} else {\n" + writeCode +
// @CodeFormatterOff
return "if (" + novalVariable + ") {\n"
+ novalCode + "\n" +
"} else {\n"
+ writeCode + "\n" +
"}\n";
// @CodeFormatterOn
}
return writeCode;
}
// TODO (TM): Can this happen? If so, an exception should be thrown!
return "FIXME(\"No generator extension available to write " + outport.getName() + " to " +
transmitter.getName() + "\");\n";
}
......
......@@ -54,19 +54,15 @@ public class PWMActuatorGeneratorExtension extends PiHALLibraryGeneratorExtensio
return "static int actuator_pwm_" + getSingletonPostfix() + " = -1;\n";
}
/** {@inheritDoc} */
@Override
public String getSingletonAuxiliaryFunctions() {
return null;
}
/** {@inheritDoc} */
@Override
public String getSingletonInitializationCode() {
return "char pwm_" + getSingletonPostfix() +
"_path[64];\nconf_query(\"//ff1/peripheral/device_file/maestro_steering/path\", pwm_" +
getSingletonPostfix() + "_path);\nactuator_pwm_" + getSingletonPostfix() +
" = temp_actuator_initialize(pwm_" + getSingletonPostfix() + "_path);\n";
// @CodeFormatterOff
return
"char pwm_" + getSingletonPostfix() + "_path[64];\n" +
"conf_query(\"//ff1/peripheral/device_file/maestro_steering/path\", pwm_" + getSingletonPostfix() + "_path);\n" +
"actuator_pwm_" + getSingletonPostfix() + " = temp_actuator_initialize(pwm_" + getSingletonPostfix() + "_path);\n";
// @CodeFormatterOn
}
/** {@inheritDoc} */
......@@ -78,8 +74,10 @@ public class PWMActuatorGeneratorExtension extends PiHALLibraryGeneratorExtensio
/** {@inheritDoc} */
@Override
public String getWriteCode(OutputPort logicalSignal, String value) {
return "temp_actuator_device_set_target(actuator_pwm_" + getSingletonPostfix() + ", " +
modelElement.getChannelID() + ", " + value + ");\n";
// @CodeFormatterOff
return
"temp_actuator_device_set_target(actuator_pwm_" + getSingletonPostfix() + ", " + modelElement.getChannelID() + ", " + value + ");\n";
// @CodeFormatterOn
}
/** {@inheritDoc} */
......
......@@ -67,6 +67,7 @@ import org.fortiss.tooling.kernel.extension.exception.ChainTransformationFailedE
/** {@link ExecutionUnitExecutableBase} for the {@link RaspberryPi} platform. */
public class RaspberryPIGeneratorExtension
extends ExecutionUnitExecutableBase<RaspberryPi, CSourcePackage> {
/** Folder name for library source files. */
private static final String SRC_LIB_SUB_PACKAGE_NAME = "src-lib";
/** Folder name for library include files. */
......@@ -265,8 +266,7 @@ public class RaspberryPIGeneratorExtension
/**
* Analyzes the deployment context searching for {@link ComponentToExecutionUnitAllocationTable}
* and
* {@link CanTransmissionCatalog}.
* and {@link CanTransmissionCatalog}.
*/
private void findDeploymentAndLookForCanTransmissionCatalog() {
ca2hw = null;
......@@ -322,18 +322,21 @@ public class RaspberryPIGeneratorExtension
generatorResult.addUnit(getEclipseCDTProjectFile(name));
}
/** Creates a {@link ComponentProgram} and {@link CSourcePackage} for a given component. */
private void createComponentProgram(Component cmp) throws ChainTransformationFailedException {
ComponentProgram cprog = createTransformedObjectFor(cmp, ComponentProgram.class, context);
if(cprog != null) {
CSourcePackage cPack = createTransformedObjectFor(cprog, CSourcePackage.class, context);
if(cPack != null) {
cPack.mergeInto(generatorResult);
}
}
}
/** Creates the code for all deployed components. */
private void addLogicalComponentCodeMultiUnit() throws ChainTransformationFailedException {
for(Component cmp : atomics) {
ComponentProgram cprog =
createTransformedObjectFor(cmp, ComponentProgram.class, context);
if(cprog != null) {
CSourcePackage cPack =
createTransformedObjectFor(cprog, CSourcePackage.class, context);
if(cPack != null) {
cPack.mergeInto(generatorResult);
}
}
createComponentProgram(cmp);
}
}
......@@ -346,15 +349,7 @@ public class RaspberryPIGeneratorExtension
continue;
}
Component cmp = pair.getSecond();
ComponentProgram cprog =
createTransformedObjectFor(cmp, ComponentProgram.class, context);
if(cprog != null) {
CSourcePackage cPack =
createTransformedObjectFor(cprog, CSourcePackage.class, context);
if(cPack != null) {
cPack.mergeInto(generatorResult);
}
}
createComponentProgram(cmp);
}
}
......
......@@ -37,8 +37,8 @@ import org.fortiss.af3.platform.model.Transmitter;
import org.fortiss.af3.platform.raspberry.generator.framework.ISharedInstanceGeneratorExtension;
import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
/** Separate class for generating the main.c file for deployments on single {@link RaspberryPi}. */
class SingleUnitMainGenerator extends MainGenerator {
/** Generator for the main.c file for deployments on a single {@link RaspberryPi}. */
public class SingleUnitMainGenerator extends MainGenerator {
/** Constructor. */
public SingleUnitMainGenerator(RaspberryPi executionUnit,
......
AccelerationXSensorGeneratorExtension.java a41f46fe75ca7719e5ba60b342be0cc3808e85b4 YELLOW
AccelerationYSensorGeneratorExtension.java cf7ca83838a28a9480d6cfd8d3066a6d3def922c YELLOW
AccelerationZSensorGeneratorExtension.java 27a45f20df343c3e90503190615b1adec273d054 YELLOW
ActuatorDigitsGeneratorExtension.java 5f8da1e0cd61912fedbb41a288ae0e7fa3f21277 YELLOW
AngularVelocityXSensorGeneratorExtension.java 109b144f69ad413c317a5942467f31756cbceb34 YELLOW
AngularVelocityYSensorGeneratorExtension.java ed91afa2a5db4eda76a5b42c133b85f1853fe039 YELLOW
AngularVelocityZSensorGeneratorExtension.java 864f5b3f0a4b559475d67f0578754b1ca29b2995 YELLOW
BrickGeneratorExtensionBase.java 061b271b89fb6923a9c1ee64d5f0b36c91f66719 YELLOW
IMUSensorGeneratorExtensionBase.java 4e63a55809d8b9130b564c079855cb1f8f125375 YELLOW
InstanceBrickGeneratorExtensionBase.java 2b788567fac588ef75724103a57d88ff9baa15e7 YELLOW
LEDButtonBActuatorGeneratorExtension.java bedde82a3883c21de498b49e7c1aa5db911236b5 YELLOW
LEDButtonGActuatorGeneratorExtension.java 41f85e5cb49f8a2f5b6e42bce0a74c0b595af10a YELLOW
LEDButtonGeneratorExtensionBase.java 5469ec9535ac9267e7ec914091e05510e55d108d YELLOW
LEDButtonRActuatorGeneratorExtension.java 40ac8856ce2b5f3870ea975f472ca2f506656916 YELLOW
LaserRangeSensorGeneratorExtension.java 5ee259affcc64b5017625ef3a4f5207d7c665ee2 YELLOW
SharedInstanceBrickGeneratorExtensionBase.java a70c20a1211f9c305634e44247c2dbe47c645382 YELLOW
UIDUnitSharedInstanceBrickGeneratorExtensionBase.java cec4c8dc6456eb91529ef9c708946cb2338635d4 YELLOW
UltraSonicSensorGeneratorExtension.java 48ba246a2d9ddb4b9c60f87ae040d06c4d7157a0 YELLOW
AccelerationXSensorGeneratorExtension.java 6756179e99450e55a3aeaa71c6796fa910945fbb GREEN
AccelerationYSensorGeneratorExtension.java 05042b858f9ad94aa59a7d1b52b6922be16934af GREEN
AccelerationZSensorGeneratorExtension.java afa81a191d8ace57ba681548d0dfedc6d6da8cf4 GREEN
ActuatorDigitsGeneratorExtension.java ffa8667349daf581c2f45daea666c3c6668ada24 GREEN
AngularVelocityXSensorGeneratorExtension.java be13e0a0ed0173dd531c5d61e86e32a55645f945 GREEN
AngularVelocityYSensorGeneratorExtension.java d74dc8068b3e2793e83fc33618843f0a43a7e62b GREEN
AngularVelocityZSensorGeneratorExtension.java d6dd2180ecf5f25699481a3043344deb0070ac1a GREEN
BrickGeneratorExtensionBase.java dca426683de026e947579c6c74fc645a1e0044e9 GREEN
IMUSensorGeneratorExtensionBase.java 8ad492eb5d16319c1aa11473337300ee8a5384a8 GREEN
InstanceBrickGeneratorExtensionBase.java 9df8a1ffc001781a7b52e341ee8aeb487e88d785 GREEN
LEDButtonBActuatorGeneratorExtension.java 5667b64295035702ea49e1a1f961711b6eeafa96 GREEN
LEDButtonGActuatorGeneratorExtension.java 6f1b2bd4cba43e2f9ae453cb5ead5a181d212e36 GREEN
LEDButtonGeneratorExtensionBase.java efa4cb7cdf7fca66b84595fd5e860643a58d38f8 GREEN
LEDButtonRActuatorGeneratorExtension.java 1a56562995ed5529cad580d7a8fe14c6f5e989b3 GREEN
LaserRangeSensorGeneratorExtension.java 3aee9b8d251c441f72096c9b9f6c9d3d70e57dde GREEN
SharedInstanceBrickGeneratorExtensionBase.java a70c20a1211f9c305634e44247c2dbe47c645382 GREEN
UIDUnitSharedInstanceBrickGeneratorExtensionBase.java a071984ca1c7d8e9266ada2d16311cf292568a25 GREEN
UltraSonicSensorGeneratorExtension.java 48ba246a2d9ddb4b9c60f87ae040d06c4d7157a0 GREEN
......@@ -16,7 +16,6 @@
package org.fortiss.af3.platform.raspberry.generator.extension.brick;
import org.fortiss.af3.component.model.InputPort;
import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
import org.fortiss.af3.platform.raspberry.model.brick.AccelerationXSensor;
/**
......@@ -25,8 +24,7 @@ import org.fortiss.af3.platform.raspberry.model.brick.AccelerationXSensor;
* @author hoelzl
*/
public class AccelerationXSensorGeneratorExtension
extends IMUSensorGeneratorExtensionBase<AccelerationXSensor>
implements IReadableGeneratorExtension {
extends IMUSensorGeneratorExtensionBase<AccelerationXSensor> {
/** Constructor. */
public AccelerationXSensorGeneratorExtension(AccelerationXSensor modelElement) {
super(modelElement);
......
......@@ -16,7 +16,6 @@
package org.fortiss.af3.platform.raspberry.generator.extension.brick;
import org.fortiss.af3.component.model.InputPort;
import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
import org.fortiss.af3.platform.raspberry.model.brick.AccelerationYSensor;
/**
......@@ -25,8 +24,7 @@ import org.fortiss.af3.platform.raspberry.model.brick.AccelerationYSensor;
* @author hoelzl
*/
public class AccelerationYSensorGeneratorExtension
extends IMUSensorGeneratorExtensionBase<AccelerationYSensor>
implements IReadableGeneratorExtension {
extends IMUSensorGeneratorExtensionBase<AccelerationYSensor> {
/** Constructor. */
public AccelerationYSensorGeneratorExtension(AccelerationYSensor modelElement) {
super(modelElement);
......
......@@ -16,7 +16,6 @@
package org.fortiss.af3.platform.raspberry.generator.extension.brick;
import org.fortiss.af3.component.model.InputPort;
import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
import org.fortiss.af3.platform.raspberry.model.brick.AccelerationZSensor;
/**
......@@ -25,8 +24,7 @@ import org.fortiss.af3.platform.raspberry.model.brick.AccelerationZSensor;
* @author hoelzl
*/
public class AccelerationZSensorGeneratorExtension
extends IMUSensorGeneratorExtensionBase<AccelerationZSensor>
implements IReadableGeneratorExtension {
extends IMUSensorGeneratorExtensionBase<AccelerationZSensor> {
/** Constructor. */
public AccelerationZSensorGeneratorExtension(AccelerationZSensor modelElement) {
super(modelElement);
......
......@@ -99,10 +99,4 @@ public class ActuatorDigitsGeneratorExtension
public String getNoValWriteCode(OutputPort logicalSignal) {
return ";";
}
/** {@inheritDoc} */
@Override
public String getInstanceTerminationCode() {
return null;
}
}
......@@ -16,7 +16,6 @@
package org.fortiss.af3.platform.raspberry.generator.extension.brick;
import org.fortiss.af3.component.model.InputPort;
import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
import org.fortiss.af3.platform.raspberry.model.brick.AngularVelocityXSensor;
/**
......@@ -25,8 +24,7 @@ import org.fortiss.af3.platform.raspberry.model.brick.AngularVelocityXSensor;
* @author hoelzl
*/
public class AngularVelocityXSensorGeneratorExtension
extends IMUSensorGeneratorExtensionBase<AngularVelocityXSensor>
implements IReadableGeneratorExtension {
extends IMUSensorGeneratorExtensionBase<AngularVelocityXSensor> {
/** Constructor. */
public AngularVelocityXSensorGeneratorExtension(AngularVelocityXSensor modelElement) {
super(modelElement);
......
......@@ -16,7 +16,6 @@
package org.fortiss.af3.platform.raspberry.generator.extension.brick;
import org.fortiss.af3.component.model.InputPort;
import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
import org.fortiss.af3.platform.raspberry.model.brick.AngularVelocityYSensor;
/**
......@@ -25,8 +24,7 @@ import org.fortiss.af3.platform.raspberry.model.brick.AngularVelocityYSensor;
* @author hoelzl
*/
public class AngularVelocityYSensorGeneratorExtension
extends IMUSensorGeneratorExtensionBase<AngularVelocityYSensor>
implements IReadableGeneratorExtension {
extends IMUSensorGeneratorExtensionBase<AngularVelocityYSensor>