diff --git a/org.fortiss.af3.platform.raspberry/plugin.xml b/org.fortiss.af3.platform.raspberry/plugin.xml
index ff7a0915a01f0334993b73725536e979efe50c86..d2a572fab978dbb72b429b882d19ba604f4e850d 100644
--- a/org.fortiss.af3.platform.raspberry/plugin.xml
+++ b/org.fortiss.af3.platform.raspberry/plugin.xml
@@ -1,13 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?eclipse version="3.0"?>
 
-<!--
- <copyright>
- </copyright>
-
- |                                                                          |
--->
-
 <plugin>
 
    <extension point="org.eclipse.emf.ecore.generated_package">
@@ -113,7 +106,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.RaspberryPIExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.RaspberryPIGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -126,7 +119,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.CanConnectorExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.CanConnectorGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -139,7 +132,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.CanTransmissionCatalog">
             </objectClass>
          </target>
       </transformationProvider>
@@ -152,7 +145,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.CanTransmissionCatalog">
             </objectClass>
          </target>
       </transformationProvider>
@@ -165,7 +158,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.motorcontrol.MotorControlInputExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.motorcontrol.MotorControlInputGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -178,7 +171,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.motorcontrol.MotorControlOutputExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.motorcontrol.MotorControlOutputGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -191,7 +184,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.ConsoleOutputExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.ConsoleOutputGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -204,7 +197,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.brick.UltraSonicSensorExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.brick.UltraSonicSensorGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -217,7 +210,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.brick.LaserRangeSensorExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.brick.LaserRangeSensorGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -230,7 +223,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.PWMActuatorExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.PWMActuatorGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -243,7 +236,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button1Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button1GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -256,7 +249,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button2Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button2GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -269,7 +262,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button3Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button3GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -282,7 +275,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button4Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button4GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -295,7 +288,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL1Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonL1GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -308,7 +301,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL2Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonL2GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -321,7 +314,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR1Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonR1GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -334,7 +327,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonR2GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -347,7 +340,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickXExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Left_StickXGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -360,7 +353,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickYExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Left_StickYGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -373,7 +366,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickXExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Right_StickXGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -386,7 +379,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickYExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Right_StickYGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -400,7 +393,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonAExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonAGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -414,7 +407,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonBExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonBGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -428,7 +421,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonXExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonXGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -442,7 +435,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonYExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonYGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -456,7 +449,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonStartExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonStartGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -470,7 +463,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonSelectExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonSelectGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -484,7 +477,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonHomeExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonHomeGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -498,7 +491,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonL1Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonL1GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -512,7 +505,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonL3Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonL3GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -526,7 +519,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonR1Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonR1GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -540,7 +533,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonR3Executable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonR3GeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -554,7 +547,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadDownExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadDownGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -568,7 +561,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadUpExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadUpGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -582,7 +575,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadLeftExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadLeftGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -596,7 +589,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadRightExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadRightGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -610,7 +603,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Left_StickXExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Left_StickXGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -623,7 +616,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Left_StickYExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Left_StickYGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -636,7 +629,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Right_StickXExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Right_StickXGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -649,7 +642,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Right_StickYExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Right_StickYGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -662,7 +655,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.L2PositionExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.L2PositionGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -675,7 +668,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.R2PositionExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.R2PositionGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
@@ -688,7 +681,7 @@
          </source>
          <target>
             <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.SimpleRumbleFeatureExecutable">
+                  objectClass="org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.SimpleRumbleFeatureGeneratorExtension">
             </objectClass>
          </target>
       </transformationProvider>
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/.ratings
deleted file mode 100644
index 66dcf7acb62d98c854118af76ecf2e4cbca53fcb..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/.ratings
+++ /dev/null
@@ -1,9 +0,0 @@
-CanBusExecutable.java a6d7a7767a1eae9770007e98115ead912f8a6e47 RED
-CanConnectorExecutable.java ed13a0d5b71eae473ddec911cb572780660c85a4 RED
-CanTransmissionCatalog.java ec4637eda80234429a9f382a37713588a0fbb83a RED
-ConsoleOutputExecutable.java 599295ac093cbc5f2913be9c92094588c7276543 YELLOW
-HeaderCopyGenerator.java 18239a3adae35256e32dad19df9d8f38acbf7e66 RED
-MultiUnitMainGenerator.java 458754b89c2d79db3fee08baa444424772e40fb7 RED
-PWMActuatorExecutable.java d5d75c70ec12a3e008f744ff15b3c103b5d57f6c YELLOW
-RaspberryPIExecutable.java cafff8199da9cc59688289c9c26097e6872e9702 RED
-SingleUnitMainGenerator.java f97602fcb3bd8941260b7de3b27ea1a281b0b752 RED
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/HeaderCopyGenerator.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/HeaderCopyGenerator.java
deleted file mode 100644
index 18239a3adae35256e32dad19df9d8f38acbf7e66..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/HeaderCopyGenerator.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*-------------------------------------------------------------------------+
-| Copyright 2018 fortiss GmbH                                              |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import static org.fortiss.af3.generator.common.utils.SourceModelElementFactory.createByteContentUnitForPluginFileInRCP;
-
-import org.fortiss.af3.generator.common.model.c.CSourcePackage;
-import org.fortiss.af3.generator.common.model.source.ByteContentUnit;
-import org.fortiss.af3.platform.raspberry.AF3PlatformRaspberryActivator;
-
-/** Class for copying the header files to the target folder. */
-final class HeaderCopyGenerator {
-	/** Adds the header files to the given target {@link CSourcePackage}. */
-	public static void copyHeaderFiles(CSourcePackage incLibPack) throws Exception {
-		incLibPack.addUnit(copyAF3Hal("af3.h"));
-		incLibPack.addUnit(copyAF3Hal("af3_component.h"));
-		incLibPack.addUnit(copyAF3Hal("af3_component_remote_proxy.h"));
-		incLibPack.addUnit(copyAF3Hal("camera_client.h"));
-		incLibPack.addUnit(copyAF3Hal("cancatalog.h"));
-		incLibPack.addUnit(copyAF3Hal("caninbox.h"));
-		incLibPack.addUnit(copyAF3Hal("canoutbox.h"));
-		incLibPack.addUnit(copyAF3Hal("cansocket.h"));
-		incLibPack.addUnit(copyAF3Hal("canthread.h"));
-		incLibPack.addUnit(copyAF3Hal("debugprint.h"));
-		incLibPack.addUnit(copyAF3Hal("gamepad.h"));
-		incLibPack.addUnit(copyAF3Hal("listutil.h"));
-		incLibPack.addUnit(copyAF3Hal("rumblepad.h"));
-		incLibPack.addUnit(copyAF3Hal("protocol_can.h"));
-		incLibPack.addUnit(copyAF3Hal("protocol_control_center.h"));
-		incLibPack.addUnit(copyAF3Hal("protocol_coordinator.h"));
-		incLibPack.addUnit(copyAF3Hal("protocol_factory.h"));
-		incLibPack.addUnit(copyAF3Hal("protocol_worker.h"));
-		incLibPack.addUnit(copyAF3Hal("temp_actuator.h"));
-		incLibPack.addUnit(copyAF3Hal("timeutil.h"));
-		incLibPack.addUnit(copyBrick("ip_connection.h"));
-		incLibPack.addUnit(copyBrick("bricklet_distance_us.h"));
-		incLibPack.addUnit(copyBrick("bricklet_laser_range_finder.h"));
-		incLibPack.addUnit(copyBrick("bricklet_rgb_led_button.h"));
-		incLibPack.addUnit(copyBrick("brick_imu_v2.h"));
-		incLibPack.addUnit(copyBrick("bricklet_segment_display_4x7.h"));
-		incLibPack.addUnit(copyDataHal("data.h"));
-	}
-
-	/** Copies the AF3 HAL header file. */
-	private static ByteContentUnit copyDataHal(String header) throws Exception {
-		return copyHeader("data", header);
-	}
-
-	/** Copies the AF3 HAL header file. */
-	private static ByteContentUnit copyAF3Hal(String header) throws Exception {
-		return copyHeader("af3pihal", header);
-	}
-
-	/** Copies the brick header file. */
-	private static ByteContentUnit copyBrick(String header) throws Exception {
-		return copyHeader("brick", header);
-	}
-
-	/** Copies the header file from the plugin path. */
-	private static ByteContentUnit copyHeader(String subDir, String headerName) throws Exception {
-		return createByteContentUnitForPluginFileInRCP(AF3PlatformRaspberryActivator.PLUGIN_ID,
-				"code-gen-hal/inc/" + subDir, headerName, false);
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/.ratings
deleted file mode 100644
index b900143d936eb71b3c7280b6f4b15caf1abdc14e..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/.ratings
+++ /dev/null
@@ -1,3 +0,0 @@
-BrickExecutableBase.java e50fae1024e2f95953ff5cb2b56eb0250918021c YELLOW
-LaserRangeSensorExecutable.java a06ec7216bc2c48ec5a55b85b974f0bd3b3178e5 YELLOW
-UltraSonicSensorExecutable.java 7e121aa85b389b04f4e30fa54d695331082cb4b6 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/.ratings
deleted file mode 100644
index e550da08394a407a99838a1b571b971c5fa139f0..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/.ratings
+++ /dev/null
@@ -1,11 +0,0 @@
-IInstanceExecutable.java 3affc638b5802896ff7bfae6f9185fc0dfa8c8d2 YELLOW
-IInstanceInitializationExecutable.java 6941c4eb9622149d548f338c6727541cd23895ce YELLOW
-IInstanceTerminationExecutable.java 2663162a843e8954a11083d78e16b17659df0d27 YELLOW
-IRasPiHeaderExecutable.java f14b5714e7b982e097f6ac6e95eb91223a30d048 YELLOW
-IRasPiLibraryBasedExecutable.java cf3548f22185e666fdcf6d4658b783734c0e5e8e YELLOW
-IRasPiSourceBasedExecutable.java 79646213964346ace17013f5c8df5de13dafb1f0 YELLOW
-IReadableExecutable.java b50e2e1b3dc6d3557a3c923765b65b769960a95e YELLOW
-ISingletonExecutable.java d7a794f50cf4746fa9378ffaa89283130b5273b1 YELLOW
-ISingletonInitializationExecutable.java 973c7305f5b0c26e03d9294d2b481caada29053c YELLOW
-ISingletonTerminationExecutable.java a55e86fc68c083eaa7a81b4d08bafacd72c701b2 YELLOW
-IWriteableExecutable.java 43b0b80631fdd6e9f13cdc6fe3e63bbb98c62647 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/.ratings
deleted file mode 100644
index d35eb93b66aa594fd72d8eb1326c755295c69fce..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/.ratings
+++ /dev/null
@@ -1,15 +0,0 @@
-Button1Executable.java 4419314d71af50239cf6933a83a0f652614cf368 YELLOW
-Button2Executable.java 3af03ceea3aa09178fe88fe630c94282de0b72f2 YELLOW
-Button3Executable.java 964fbe4e0b5282ab617c4be2bed31afa8b4f394f YELLOW
-Button4Executable.java 53db1cce9e3dfface4027f883586bf90638cd4ff YELLOW
-ButtonExecutableBase.java 00be5129edbdc2a3a973b15921b74c7ac11f944e YELLOW
-ButtonL1Executable.java ab68cddae1d323ff0ecd7956133c44d1ef0f9168 YELLOW
-ButtonL2Executable.java 336b9d8d26a682b701f7a2ca078369c9cc621fbb YELLOW
-ButtonR1Executable.java 700ef701ed77a0d3f8141166fe647ac5cd4ad570 YELLOW
-ButtonR2Executable.java 9b4acdc37505f41c60d8216c92bcbd3f43a2ccec YELLOW
-GamepadExecutableBase.java fd54ded0437b7426df3f23c724bbcda873dbcdd1 YELLOW
-Left_StickXExecutable.java c3e7f28f44fa27bd79e14ed7e60f44be2dc5a9ab YELLOW
-Left_StickYExecutable.java f81cc1e3124eb712507825bc54e7d0f633fde640 YELLOW
-Right_StickXExecutable.java ade165c88d0c6758efa167e5ba445eff87a0fd79 YELLOW
-Right_StickYExecutable.java 891ea877d8c3f4bab6072a02b17bb92a6caa055d YELLOW
-StickExecutableBase.java 561a77c160dc27f13d6d6959a2285a0bf07d5096 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/.ratings
deleted file mode 100644
index ba2b40967b700c5234e38a3ec6a57218bdfe6a62..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/.ratings
+++ /dev/null
@@ -1,2 +0,0 @@
-BrickLibraryExecutableBase.java 3556b41e6ca909aaf89fa58eac31c63d0cfeb788 YELLOW
-PiHALLibraryExecutableBase.java d64da670a3f39ef53a8f548955f35b588308ba76 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/.ratings
deleted file mode 100644
index 1c6e2920fae509a09a7f5a245ef3b79d954ec693..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/.ratings
+++ /dev/null
@@ -1,3 +0,0 @@
-MotorControlExecutableBase.java 48d568df87fa1e15588b830065762ad73ff12f97 YELLOW
-MotorControlInputExecutable.java a6162b9bd9b98997f1b3cc8eb63232338e3e84a8 RED
-MotorControlOutputExecutable.java 26aef1e59d43c0370246e082a3d401a5c378fd03 RED
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/.ratings
deleted file mode 100644
index b17487a46179ea55a77efbcc75696c02fd29cbef..0000000000000000000000000000000000000000
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/.ratings
+++ /dev/null
@@ -1,25 +0,0 @@
-ButtonAExecutable.java bbcb151d851b1b3d3e97b7e11b790fa13559fd96 YELLOW
-ButtonBExecutable.java d659e04dc60cba0808bd2fceae22fcbc1bd203a9 YELLOW
-ButtonExecutableBase.java 578104b5b572ee49ddcc142d165e10eec07e1738 YELLOW
-ButtonHomeExecutable.java e3a19a82d2cafd3bc75b6a7fc1a75df5656df48c YELLOW
-ButtonL1Executable.java 68fac6c2abc7ea40eb7cc16839677a4cdc24111a YELLOW
-ButtonL3Executable.java 2d04b51ee7ab822419140cf69821bbcbcfded359 YELLOW
-ButtonR1Executable.java cc9b1332e442f3875191fdc2d4fa26bcc94f1b13 YELLOW
-ButtonR3Executable.java 4eb79b5e65829beeb0c65686c2ee1b97af02c60b YELLOW
-ButtonSelectExecutable.java a141f9ea800c48c10f9a1695fe7c730873a3b021 YELLOW
-ButtonStartExecutable.java d5dae399a944aafdccb80fea4273686afeaf65a8 YELLOW
-ButtonXExecutable.java 1bd0abb2cd33731bc1a501c5b523074a37847512 YELLOW
-ButtonYExecutable.java 703c9497600ca405b7dc2adb143179cf12aa5806 YELLOW
-DPadDownExecutable.java f19d39030b1370ea0d0f00727dd7e75635442760 YELLOW
-DPadLeftExecutable.java 1026fae470429fb99427adfccf494832f504a378 YELLOW
-DPadRightExecutable.java f354bdd8767b4c28e419dcb514f47521a526a01b YELLOW
-DPadUpExecutable.java e7a11870695ede63519696b071d30a4c93d6f9d3 YELLOW
-L2PositionExecutable.java 6d75fd0b020819a38b1c3ddda9aa9ed536832108 YELLOW
-Left_StickXExecutable.java 41667a015567298cfceee981d8c1f309e6cd97b5 YELLOW
-Left_StickYExecutable.java cc2b36f9bca913dc1956f34495cf9c77acb13c88 YELLOW
-R2PositionExecutable.java 19f778392841d02d281fd856564b75e1333dffaa YELLOW
-Right_StickXExecutable.java 97656a2ae56a70eac88153b123f2cd9c584af967 YELLOW
-Right_StickYExecutable.java f3d942123ca47d0ddbf32f4f46bfaf2b21732653 YELLOW
-RumblepadExecutableBase.java 39b4d75bed6526d82f5baa420b2415b271157df9 YELLOW
-SimpleRumbleFeatureExecutable.java 413b6fb3f5847f0d09f52341c98b95f74c352016 YELLOW
-StickExecutableBase.java 4e1188b3e3a3b6d53a6387d2cf472c89c27b7449 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/.ratings
new file mode 100644
index 0000000000000000000000000000000000000000..3f66f2c4812fa62fd32dbdcb6c508058efef3649
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/.ratings
@@ -0,0 +1,8 @@
+CanBusGeneratorExtension.java 4bed3c88e71923515d7d9dc9235bc40a49ce237f RED
+CanConnectorGeneratorExtension.java 6ca987deb8c2ba4d47609691563570bf6e3d7306 RED
+CanTransmissionCatalog.java 959d488ebec4ae6a50c3f699d42aad535b1ae0c3 YELLOW
+ConsoleOutputGeneratorExtension.java d57db44d57630a50e26c9eeed90d6631bf99db5d YELLOW
+MultiUnitMainGenerator.java 458754b89c2d79db3fee08baa444424772e40fb7 RED
+PWMActuatorGeneratorExtension.java 8cbfd72070cfc1c8a4da4ccc1d18a6b3e75cea7f YELLOW
+RaspberryPIGeneratorExtension.java 9822dd93e32d3287c1446eb94333d2ca55ff4274 RED
+SingleUnitMainGenerator.java 93d0370b01330ab023e02761df818d36fac42b0f RED
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanBusExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanBusGeneratorExtension.java
similarity index 89%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanBusExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanBusGeneratorExtension.java
index a6d7a7767a1eae9770007e98115ead912f8a6e47..4bed3c88e71923515d7d9dc9235bc40a49ce237f 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanBusExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanBusGeneratorExtension.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import java.util.List;
 import java.util.Map;
@@ -27,10 +27,10 @@ import org.fortiss.af3.platform.model.TransmissionUnit;
 import org.fortiss.af3.platform.raspberry.model.CanBus;
 
 /** Executable for {@link CanBus}. */
-public class CanBusExecutable extends TransmissionUnitExecutableBase<TransmissionUnit> {
+public class CanBusGeneratorExtension extends TransmissionUnitExecutableBase<TransmissionUnit> {
 
 	/** Constructor. */
-	public CanBusExecutable(TransmissionUnit modelElement) {
+	public CanBusGeneratorExtension(TransmissionUnit modelElement) {
 		super(modelElement);
 		// no functionality as of now
 	}
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanConnectorExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanConnectorGeneratorExtension.java
similarity index 94%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanConnectorExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanConnectorGeneratorExtension.java
index ed13a0d5b71eae473ddec911cb572780660c85a4..6ca987deb8c2ba4d47609691563570bf6e3d7306 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanConnectorExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanConnectorGeneratorExtension.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
 import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.rawString;
@@ -29,10 +29,10 @@ import org.fortiss.af3.platform.language.executable.TransceiverExecutableBase;
 import org.fortiss.af3.platform.raspberry.model.CanConnector;
 
 /** Executable for {@link CanConnector}s. */
-public class CanConnectorExecutable extends TransceiverExecutableBase<CanConnector> {
+public class CanConnectorGeneratorExtension extends TransceiverExecutableBase<CanConnector> {
 
 	/** Constructor. */
-	public CanConnectorExecutable(CanConnector modelElement) {
+	public CanConnectorGeneratorExtension(CanConnector modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanTransmissionCatalog.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanTransmissionCatalog.java
similarity index 87%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanTransmissionCatalog.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanTransmissionCatalog.java
index ec4637eda80234429a9f382a37713588a0fbb83a..959d488ebec4ae6a50c3f699d42aad535b1ae0c3 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/CanTransmissionCatalog.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/CanTransmissionCatalog.java
@@ -13,28 +13,34 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import static org.fortiss.af3.component.utils.ComponentArchitectureUtils.findSourcePort;
 
 import java.util.HashMap;
 
 import org.fortiss.af3.component.model.Component;
+import org.fortiss.af3.component.model.ComponentArchitecture;
 import org.fortiss.af3.component.model.InputPort;
 import org.fortiss.af3.component.model.OutputPort;
 import org.fortiss.af3.component.model.Port;
 import org.fortiss.af3.deployment.generator.TransmissionCatalog;
 import org.fortiss.af3.deployment.model.ComponentAllocation;
 import org.fortiss.af3.deployment.model.Deployment;
+import org.fortiss.af3.platform.model.PlatformArchitecture;
 import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
 
-/** Can Transmission Catalog */
+/**
+ * This class analyzes a {@link Deployment}, its {@link PlatformArchitecture} and its
+ * {@link ComponentArchitecture} and creates mappings, which are used by the
+ * {@link RaspberryPIGeneratorExtension}.
+ */
 public class CanTransmissionCatalog extends TransmissionCatalog {
-	/** Mapping from atomic component to deployed execution unit. */
+	/** Mapping from atomic component to the execution unit it is deployed on. */
 	private HashMap<Component, RaspberryPi> componentToRaspberry = new HashMap<>();
-	/** Mapping from execution unit to CAN IDs. */
+	/** Mapping from execution unit to generated CAN IDs starting from {@code canIdCounter}. */
 	private HashMap<RaspberryPi, Integer> raspberryCanId = new HashMap<>();
-	/** Counter for raspberry CAN IDs. */
+	/** Counter for generated CAN IDs. */
 	private int canIdCounter = 0xF;
 	/** Mapping from atomic input port to atomic output port. */
 	private HashMap<InputPort, OutputPort> atomicInputToOutput = new HashMap<>();
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/ConsoleOutputExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/ConsoleOutputGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/ConsoleOutputExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/ConsoleOutputGeneratorExtension.java
index 599295ac093cbc5f2913be9c92094588c7276543..d57db44d57630a50e26c9eeed90d6631bf99db5d 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/ConsoleOutputExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/ConsoleOutputGeneratorExtension.java
@@ -13,20 +13,20 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import org.fortiss.af3.component.model.OutputPort;
 import org.fortiss.af3.expression.model.types.TDouble;
 import org.fortiss.af3.platform.language.executable.ExecutableBase;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IWriteableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IWriteableGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.ConsoleOutput;
 import org.fortiss.af3.project.model.typesystem.IType;
 
 /** Executable for {@link ConsoleOutput}. */
-public class ConsoleOutputExecutable extends ExecutableBase<ConsoleOutput> implements
-		IWriteableExecutable {
+public class ConsoleOutputGeneratorExtension extends ExecutableBase<ConsoleOutput> implements
+		IWriteableGeneratorExtension {
 	/** Constructor. */
-	public ConsoleOutputExecutable(ConsoleOutput modelElement) {
+	public ConsoleOutputGeneratorExtension(ConsoleOutput modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/MultiUnitMainGenerator.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/MultiUnitMainGenerator.java
similarity index 99%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/MultiUnitMainGenerator.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/MultiUnitMainGenerator.java
index 458754b89c2d79db3fee08baa444424772e40fb7..9bc01db1c28996d3a8996057c0f6bd5560a2ac7a 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/MultiUnitMainGenerator.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/MultiUnitMainGenerator.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import static org.fortiss.af3.component.utils.ComponentArchitectureUtils.findSourcePort;
 import static org.fortiss.af3.component.utils.ComponentArchitectureUtils.isAtomicComponent;
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/PWMActuatorExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/PWMActuatorGeneratorExtension.java
similarity index 78%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/PWMActuatorExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/PWMActuatorGeneratorExtension.java
index d5d75c70ec12a3e008f744ff15b3c103b5d57f6c..8cbfd72070cfc1c8a4da4ccc1d18a6b3e75cea7f 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/PWMActuatorExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/PWMActuatorGeneratorExtension.java
@@ -13,20 +13,20 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import org.fortiss.af3.component.model.OutputPort;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonTerminationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IWriteableExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.library.PiHALLibraryExecutableBase;
+import org.fortiss.af3.platform.raspberry.generator.extension.library.PiHALLibraryGeneratorExtensionBase;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonInitializationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonTerminationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IWriteableGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.ActuatorPWM;
 
 /** Executable for {@link ActuatorPWM}. */
-public class PWMActuatorExecutable extends PiHALLibraryExecutableBase<ActuatorPWM> implements
-		ISingletonInitializationExecutable, IWriteableExecutable, ISingletonTerminationExecutable {
+public class PWMActuatorGeneratorExtension extends PiHALLibraryGeneratorExtensionBase<ActuatorPWM> implements
+		ISingletonInitializationGeneratorExtension, IWriteableGeneratorExtension, ISingletonTerminationGeneratorExtension {
 	/** Constructor. */
-	public PWMActuatorExecutable(ActuatorPWM modelElement) {
+	public PWMActuatorGeneratorExtension(ActuatorPWM modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPIExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/RaspberryPIGeneratorExtension.java
similarity index 93%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPIExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/RaspberryPIGeneratorExtension.java
index 5e572096e72db0868e670b019d710b381d3dd8e9..9822dd93e32d3287c1446eb94333d2ca55ff4274 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPIExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/RaspberryPIGeneratorExtension.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import static org.fortiss.af3.component.utils.ComponentArchitectureUtils.isAtomicComponent;
 import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.createDataDictionary;
@@ -52,16 +52,16 @@ import org.fortiss.af3.platform.model.ExecutionUnit;
 import org.fortiss.af3.platform.model.PlatformConnectorUnit;
 import org.fortiss.af3.platform.model.TransmissionUnit;
 import org.fortiss.af3.platform.raspberry.AF3PlatformRaspberryActivator;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IRasPiHeaderExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IRasPiLibraryBasedExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IRasPiSourceBasedExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IRasPiHeaderGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IRasPiLibraryBasedGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IRasPiSourceBasedGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.CanBus;
 import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
 import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
 import org.fortiss.tooling.kernel.extension.exception.ChainTransformationFailedException;
 
 /** {@link ExecutionUnitExecutableBase} for the {@link RaspberryPi} platform. */
-public class RaspberryPIExecutable extends ExecutionUnitExecutableBase<RaspberryPi, CSourcePackage> {
+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. */
@@ -96,7 +96,7 @@ public class RaspberryPIExecutable extends ExecutionUnitExecutableBase<Raspberry
 	private CSourcePackage generatorResult;
 
 	/** Constructor. */
-	public RaspberryPIExecutable(RaspberryPi modelElement) {
+	public RaspberryPIGeneratorExtension(RaspberryPi modelElement) {
 		super(modelElement);
 	}
 
@@ -136,8 +136,8 @@ public class RaspberryPIExecutable extends ExecutionUnitExecutableBase<Raspberry
 			ExecutableBase<?> executable =
 					createTransformedObjectWithoutExceptionFor(pcu, ExecutableBase.class, context);
 			platformConnector2ExecutableBase.put(pcu, executable);
-			if(executable instanceof IRasPiHeaderExecutable) {
-				IRasPiHeaderExecutable headerExec = (IRasPiHeaderExecutable)executable;
+			if(executable instanceof IRasPiHeaderGeneratorExtension) {
+				IRasPiHeaderGeneratorExtension headerExec = (IRasPiHeaderGeneratorExtension)executable;
 				if(!includedHeaders.contains(headerExec.getHeaderFileName())) {
 					generatorResult.getSubPackage(INC_LIB_SUB_PACKAGE_NAME).addUnit(
 							headerExec.getHeaderFileContent());
@@ -145,8 +145,8 @@ public class RaspberryPIExecutable extends ExecutionUnitExecutableBase<Raspberry
 				}
 				// ignore header file, since it is already included
 			}
-			if(executable instanceof IRasPiSourceBasedExecutable) {
-				IRasPiSourceBasedExecutable srcExec = (IRasPiSourceBasedExecutable)executable;
+			if(executable instanceof IRasPiSourceBasedGeneratorExtension) {
+				IRasPiSourceBasedGeneratorExtension srcExec = (IRasPiSourceBasedGeneratorExtension)executable;
 				if(!includedSources.contains(srcExec.getSourceFileName())) {
 					generatorResult.getSubPackage(SRC_LIB_SUB_PACKAGE_NAME).addUnit(
 							srcExec.getSourceFileContent());
@@ -154,8 +154,8 @@ public class RaspberryPIExecutable extends ExecutionUnitExecutableBase<Raspberry
 				}
 				// ignore source file, since it is already included
 			}
-			if(executable instanceof IRasPiLibraryBasedExecutable) {
-				IRasPiLibraryBasedExecutable libExec = (IRasPiLibraryBasedExecutable)executable;
+			if(executable instanceof IRasPiLibraryBasedGeneratorExtension) {
+				IRasPiLibraryBasedGeneratorExtension libExec = (IRasPiLibraryBasedGeneratorExtension)executable;
 				if(!includedLibraries.contains(libExec.getLibraryFileName())) {
 					generatorResult.getSubPackage(LIB_SUB_PACKAGE_NAME).addUnit(
 							libExec.getLibraryFileContent());
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/SingleUnitMainGenerator.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/SingleUnitMainGenerator.java
similarity index 88%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/SingleUnitMainGenerator.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/SingleUnitMainGenerator.java
index f97602fcb3bd8941260b7de3b27ea1a281b0b752..93d0370b01330ab023e02761df818d36fac42b0f 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/SingleUnitMainGenerator.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/SingleUnitMainGenerator.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
+package org.fortiss.af3.platform.raspberry.generator.extension;
 
 import static org.fortiss.af3.component.generator.c.ComponentProgramToCSourcePackageTransformation.getPortNoValIdentifier;
 import static org.fortiss.af3.component.generator.component.PortVariableUtils.getPortIdentifier;
@@ -36,12 +36,12 @@ import org.fortiss.af3.platform.model.ExecutionUnit;
 import org.fortiss.af3.platform.model.PlatformConnectorUnit;
 import org.fortiss.af3.platform.model.Receiver;
 import org.fortiss.af3.platform.model.Transmitter;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IInstanceExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IInstanceInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IReadableExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IWriteableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IInstanceGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IInstanceInitializationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonInitializationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IWriteableGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
 import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
 
@@ -98,9 +98,9 @@ class SingleUnitMainGenerator {
 		for(PlatformConnectorUnit pcu : platformConnector2ExecutableBase.keySet()) {
 			ExecutableBase<?> exec = platformConnector2ExecutableBase.get(pcu);
 			String sPostfix = null;
-			if(exec instanceof ISingletonInitializationExecutable) {
-				ISingletonInitializationExecutable singletonExec =
-						(ISingletonInitializationExecutable)exec;
+			if(exec instanceof ISingletonInitializationGeneratorExtension) {
+				ISingletonInitializationGeneratorExtension singletonExec =
+						(ISingletonInitializationGeneratorExtension)exec;
 				// check if function definition was already included
 				String ident = singletonExec.getSingletonIdentifier();
 				sPostfix = singletonPostfixMap.get(ident);
@@ -111,9 +111,9 @@ class SingleUnitMainGenerator {
 				}
 			}
 			// sPostfix is set by first if-block or remains null
-			if(exec instanceof IInstanceInitializationExecutable) {
-				IInstanceInitializationExecutable initExec =
-						(IInstanceInitializationExecutable)exec;
+			if(exec instanceof IInstanceInitializationGeneratorExtension) {
+				IInstanceInitializationGeneratorExtension initExec =
+						(IInstanceInitializationGeneratorExtension)exec;
 				String iPostfix = instancePostfixMap.get(initExec);
 				String def = initExec.getInstanceAuxiliaryFunctions(iPostfix, sPostfix);
 				sb.append(def != null ? def : "");
@@ -170,9 +170,9 @@ class SingleUnitMainGenerator {
 		for(PlatformConnectorUnit pcu : platformConnector2ExecutableBase.keySet()) {
 			ExecutableBase<?> exec = platformConnector2ExecutableBase.get(pcu);
 			String sPostfix = null;
-			if(exec instanceof ISingletonInitializationExecutable) {
-				ISingletonInitializationExecutable singletonExec =
-						(ISingletonInitializationExecutable)exec;
+			if(exec instanceof ISingletonInitializationGeneratorExtension) {
+				ISingletonInitializationGeneratorExtension singletonExec =
+						(ISingletonInitializationGeneratorExtension)exec;
 				// check if variable declaration was already included
 				String ident = singletonExec.getSingletonIdentifier();
 				sPostfix = singletonPostfixMap.get(ident);
@@ -183,9 +183,9 @@ class SingleUnitMainGenerator {
 				}
 			}
 			// sPostfix is set by first if-block or remains null
-			if(exec instanceof IInstanceInitializationExecutable) {
-				IInstanceInitializationExecutable initExec =
-						(IInstanceInitializationExecutable)exec;
+			if(exec instanceof IInstanceInitializationGeneratorExtension) {
+				IInstanceInitializationGeneratorExtension initExec =
+						(IInstanceInitializationGeneratorExtension)exec;
 				String iPostfix = instancePostfixMap.get(initExec);
 				String def = initExec.getVariableDeclaration(iPostfix, sPostfix);
 				sb.append(def != null ? def : "");
@@ -304,13 +304,13 @@ class SingleUnitMainGenerator {
 	private String createWriteCode(Transmitter transmitter, OutputPort outport) {
 		ExecutableBase<?> exec = platformConnector2ExecutableBase.get(transmitter);
 		String sPostfix = null;
-		if(exec instanceof ISingletonExecutable) {
+		if(exec instanceof ISingletonGeneratorExtension) {
 			sPostfix =
-					singletonPostfixMap.get(((ISingletonExecutable)exec).getSingletonIdentifier());
+					singletonPostfixMap.get(((ISingletonGeneratorExtension)exec).getSingletonIdentifier());
 		}
 		String iPostfix = instancePostfixMap.get(exec);
-		if(exec instanceof IWriteableExecutable) {
-			IWriteableExecutable wexec = (IWriteableExecutable)exec;
+		if(exec instanceof IWriteableGeneratorExtension) {
+			IWriteableGeneratorExtension wexec = (IWriteableGeneratorExtension)exec;
 			String sourceVariable = getPortIdentifier(outport);
 			String writeCode = wexec.getWriteCode(iPostfix, sPostfix, outport, sourceVariable);
 			String novalCode = wexec.getNoValWriteCode(iPostfix, sPostfix, outport);
@@ -329,13 +329,13 @@ class SingleUnitMainGenerator {
 	private String createReadCode(Receiver receiver, InputPort inport) {
 		ExecutableBase<?> exec = platformConnector2ExecutableBase.get(receiver);
 		String sPostfix = null;
-		if(exec instanceof ISingletonExecutable) {
+		if(exec instanceof ISingletonGeneratorExtension) {
 			sPostfix =
-					singletonPostfixMap.get(((ISingletonExecutable)exec).getSingletonIdentifier());
+					singletonPostfixMap.get(((ISingletonGeneratorExtension)exec).getSingletonIdentifier());
 		}
 		String iPostfix = instancePostfixMap.get(exec);
-		if(exec instanceof IReadableExecutable) {
-			IReadableExecutable rexec = (IReadableExecutable)exec;
+		if(exec instanceof IReadableGeneratorExtension) {
+			IReadableGeneratorExtension rexec = (IReadableGeneratorExtension)exec;
 			String targetVariable = getPortIdentifier(inport);
 			String readCode = rexec.getReadCode(iPostfix, sPostfix, inport, targetVariable);
 			String novalCode = rexec.getNoValReadCode(iPostfix, sPostfix, inport);
@@ -355,9 +355,9 @@ class SingleUnitMainGenerator {
 		for(PlatformConnectorUnit pcu : platformConnector2ExecutableBase.keySet()) {
 			ExecutableBase<?> exec = platformConnector2ExecutableBase.get(pcu);
 			String sPostfix = null;
-			if(exec instanceof ISingletonInitializationExecutable) {
-				ISingletonInitializationExecutable singletonExec =
-						(ISingletonInitializationExecutable)exec;
+			if(exec instanceof ISingletonInitializationGeneratorExtension) {
+				ISingletonInitializationGeneratorExtension singletonExec =
+						(ISingletonInitializationGeneratorExtension)exec;
 				String ident = singletonExec.getSingletonIdentifier();
 				sPostfix = singletonPostfixMap.get(ident);
 				if(!singletonInitDone.contains(ident)) {
@@ -367,9 +367,9 @@ class SingleUnitMainGenerator {
 				}
 			}
 			// sPostfix is set in the first if-block or is null
-			if(exec instanceof IInstanceInitializationExecutable) {
-				IInstanceInitializationExecutable initExec =
-						(IInstanceInitializationExecutable)exec;
+			if(exec instanceof IInstanceInitializationGeneratorExtension) {
+				IInstanceInitializationGeneratorExtension initExec =
+						(IInstanceInitializationGeneratorExtension)exec;
 				String iPostfix = instancePostfixMap.get(initExec);
 				String code = initExec.getInitializationCode(iPostfix, sPostfix);
 				sb.append(code != null ? code : "");
@@ -385,14 +385,14 @@ class SingleUnitMainGenerator {
 	private void computePostfixes() {
 		for(PlatformConnectorUnit pcu : platformConnector2ExecutableBase.keySet()) {
 			ExecutableBase<?> exec = platformConnector2ExecutableBase.get(pcu);
-			if(exec instanceof ISingletonExecutable) {
-				String id = ((ISingletonExecutable)exec).getSingletonIdentifier();
+			if(exec instanceof ISingletonGeneratorExtension) {
+				String id = ((ISingletonGeneratorExtension)exec).getSingletonIdentifier();
 				if(!singletonPostfixMap.containsKey(id)) {
 					String sPostfix = "singleton_" + (postfixCounter++);
 					singletonPostfixMap.put(id, sPostfix);
 				}
 			}
-			if(exec instanceof IInstanceExecutable) {
+			if(exec instanceof IInstanceGeneratorExtension) {
 				if(!instancePostfixMap.containsKey(exec)) {
 					String iPostfix = "instance_" + (postfixCounter++);
 					instancePostfixMap.put(exec, iPostfix);
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/.ratings
new file mode 100644
index 0000000000000000000000000000000000000000..3554096a596721307c581253205613dca2e4f10e
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/.ratings
@@ -0,0 +1,3 @@
+BrickGeneratorExtensionBase.java 01442772f80ebf32eaf0507495a4380d0de034b1 YELLOW
+LaserRangeSensorGeneratorExtension.java ff0c1e5e96a69b7deb6d7675e40f18510a36e7a0 YELLOW
+UltraSonicSensorGeneratorExtension.java cbd4555e28600ce8f47c737330adfc9b5581bae8 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/BrickExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/BrickGeneratorExtensionBase.java
similarity index 79%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/BrickExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/BrickGeneratorExtensionBase.java
index e50fae1024e2f95953ff5cb2b56eb0250918021c..01442772f80ebf32eaf0507495a4380d0de034b1 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/BrickExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/BrickGeneratorExtensionBase.java
@@ -13,22 +13,21 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.brick;
+package org.fortiss.af3.platform.raspberry.generator.extension.brick;
 
 import org.eclipse.emf.ecore.EObject;
-import org.fortiss.af3.platform.language.executable.ExecutableBase;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.library.BrickLibraryExecutableBase;
+import org.fortiss.af3.platform.raspberry.generator.extension.library.BrickLibraryGeneratorExtensionBase;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonInitializationGeneratorExtension;
 
 /**
- * Base class for {@link ExecutableBase executables} for the Brick and Bricklets hardware.
+ * Base class for generator extensions of the Brick and Bricklets hardware.
  * 
  * @author hoelzl
  */
-abstract class BrickExecutableBase<T extends EObject> extends BrickLibraryExecutableBase<T>
-		implements ISingletonInitializationExecutable {
+abstract class BrickGeneratorExtensionBase<T extends EObject> extends
+		BrickLibraryGeneratorExtensionBase<T> implements ISingletonInitializationGeneratorExtension {
 	/** Constructor. */
-	public BrickExecutableBase(T modelElement) {
+	public BrickGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/LaserRangeSensorExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/LaserRangeSensorGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/LaserRangeSensorExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/LaserRangeSensorGeneratorExtension.java
index a06ec7216bc2c48ec5a55b85b974f0bd3b3178e5..ff0c1e5e96a69b7deb6d7675e40f18510a36e7a0 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/LaserRangeSensorExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/LaserRangeSensorGeneratorExtension.java
@@ -13,23 +13,23 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.brick;
+package org.fortiss.af3.platform.raspberry.generator.extension.brick;
 
 import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.platform.language.executable.ExecutableBase;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IInstanceInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IReadableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IInstanceInitializationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.brick.LaserRangeSensor;
 
 /**
- * {@link ExecutableBase} for {@link LaserRangeSensor}s.
+ * Generator extension for {@link LaserRangeSensor}s.
  * 
  * @author hoelzl
  */
-public class LaserRangeSensorExecutable extends BrickExecutableBase<LaserRangeSensor> implements
-		IReadableExecutable, IInstanceInitializationExecutable {
+public class LaserRangeSensorGeneratorExtension extends
+		BrickGeneratorExtensionBase<LaserRangeSensor> implements IReadableGeneratorExtension,
+		IInstanceInitializationGeneratorExtension {
 	/** Constructor. */
-	public LaserRangeSensorExecutable(LaserRangeSensor modelElement) {
+	public LaserRangeSensorGeneratorExtension(LaserRangeSensor modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/UltraSonicSensorExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/UltraSonicSensorGeneratorExtension.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/UltraSonicSensorExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/UltraSonicSensorGeneratorExtension.java
index 7e121aa85b389b04f4e30fa54d695331082cb4b6..cbd4555e28600ce8f47c737330adfc9b5581bae8 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/brick/UltraSonicSensorExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/brick/UltraSonicSensorGeneratorExtension.java
@@ -13,23 +13,23 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.brick;
+package org.fortiss.af3.platform.raspberry.generator.extension.brick;
 
 import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.platform.language.executable.ExecutableBase;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IInstanceInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IReadableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IInstanceInitializationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.brick.UltraSonicSensor;
 
 /**
- * {@link ExecutableBase} for {@link UltraSonicSensor}s.
+ * Generator extension for {@link UltraSonicSensor}s.
  * 
  * @author hoelzl
  */
-public class UltraSonicSensorExecutable extends BrickExecutableBase<UltraSonicSensor> implements
-		IReadableExecutable, IInstanceInitializationExecutable {
+public class UltraSonicSensorGeneratorExtension extends
+		BrickGeneratorExtensionBase<UltraSonicSensor> implements IReadableGeneratorExtension,
+		IInstanceInitializationGeneratorExtension {
 	/** Constructor. */
-	public UltraSonicSensorExecutable(UltraSonicSensor modelElement) {
+	public UltraSonicSensorGeneratorExtension(UltraSonicSensor modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/.ratings
new file mode 100644
index 0000000000000000000000000000000000000000..77e88cc88bbf4a885c7cc3e2dcef33c419e3458b
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/.ratings
@@ -0,0 +1,15 @@
+Button1GeneratorExtension.java 3335c0b49cb8bd4efa607a7e1aaa122b7ad86681 YELLOW
+Button2GeneratorExtension.java f166db531e5885c7cf9bf90716e60703827c6fbd YELLOW
+Button3GeneratorExtension.java b35cd0d25ed5c41cfd3225da01f7df7fd94b88d4 YELLOW
+Button4GeneratorExtension.java d31585dfefb892586626858234b80edaabf6d064 YELLOW
+ButtonGeneratorExtensionBase.java 2959e0fc9cfe1e71d78cc8f20437c579bcc81c4f YELLOW
+ButtonL1GeneratorExtension.java c367e0a10069041b80e14409aaa70ca68c01509b YELLOW
+ButtonL2GeneratorExtension.java 035d2462b09d581a7be10d199bc011d8953bc082 YELLOW
+ButtonR1GeneratorExtension.java d82887e00d4bbc2938f7a89057460f109f0ddcf3 YELLOW
+ButtonR2GeneratorExtension.java d35159fef36179780b2cf5406de64ce75dd4facf YELLOW
+GamepadGeneratorExtensionBase.java 25784be76c120d2df8b5f2f88345223c7ff5c254 YELLOW
+Left_StickXGeneratorExtension.java 809953003e0e24908e17183aa86cc74f0e5078ab YELLOW
+Left_StickYGeneratorExtension.java 5cb4c657e7b1baa6b6162a957912cb40209e53a2 YELLOW
+Right_StickXGeneratorExtension.java f3d0096b369a2e8226f9a158a958bd581f2cad67 YELLOW
+Right_StickYGeneratorExtension.java a54408a4adfc5e7c6de4dcc9930581f6dfdfe72b YELLOW
+StickGeneratorExtensionBase.java a6a134cbc86e6f30c822170bf76ac7fdbc132d71 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button1Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button1GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button1Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button1GeneratorExtension.java
index 4419314d71af50239cf6933a83a0f652614cf368..3335c0b49cb8bd4efa607a7e1aaa122b7ad86681 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button1Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button1GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
 
 /** Executable for gamepad {@link Button1}. */
-public class Button1Executable extends ButtonExecutableBase<Button1> {
+public class Button1GeneratorExtension extends ButtonGeneratorExtensionBase<Button1> {
 	/** Constructor. */
-	public Button1Executable(Button1 modelElement) {
+	public Button1GeneratorExtension(Button1 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button2Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button2GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button2Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button2GeneratorExtension.java
index 3af03ceea3aa09178fe88fe630c94282de0b72f2..f166db531e5885c7cf9bf90716e60703827c6fbd 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button2Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button2GeneratorExtension.java
@@ -13,15 +13,15 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
 
 /** Executable for {@link Button2}. */
-public class Button2Executable extends ButtonExecutableBase<Button2> {
+public class Button2GeneratorExtension extends ButtonGeneratorExtensionBase<Button2> {
 
 	/** Constructor. */
-	public Button2Executable(Button2 modelElement) {
+	public Button2GeneratorExtension(Button2 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button3Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button3GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button3Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button3GeneratorExtension.java
index 964fbe4e0b5282ab617c4be2bed31afa8b4f394f..b35cd0d25ed5c41cfd3225da01f7df7fd94b88d4 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button3Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button3GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
 
 /** Executable for {@link Button3}. */
-public class Button3Executable extends ButtonExecutableBase<Button3> {
+public class Button3GeneratorExtension extends ButtonGeneratorExtensionBase<Button3> {
 	/** Constructor. */
-	public Button3Executable(Button3 modelElement) {
+	public Button3GeneratorExtension(Button3 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button4Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button4GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button4Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button4GeneratorExtension.java
index 53db1cce9e3dfface4027f883586bf90638cd4ff..d31585dfefb892586626858234b80edaabf6d064 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button4Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Button4GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
 
 /** Executable for {@link Button4}. */
-public class Button4Executable extends ButtonExecutableBase<Button4> {
+public class Button4GeneratorExtension extends ButtonGeneratorExtensionBase<Button4> {
 	/** Constructor. */
-	public Button4Executable(Button4 modelElement) {
+	public Button4GeneratorExtension(Button4 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonGeneratorExtensionBase.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonGeneratorExtensionBase.java
index 00be5129edbdc2a3a973b15921b74c7ac11f944e..2959e0fc9cfe1e71d78cc8f20437c579bcc81c4f 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonGeneratorExtensionBase.java
@@ -13,21 +13,21 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.eclipse.emf.ecore.EObject;
 import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IReadableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
 
 /**
  * Base class for executables reading gamepad buttons.
  * 
  * @author hoelzl
  */
-abstract class ButtonExecutableBase<T extends EObject> extends GamepadExecutableBase<T> implements
-		IReadableExecutable {
+abstract class ButtonGeneratorExtensionBase<T extends EObject> extends GamepadGeneratorExtensionBase<T> implements
+		IReadableGeneratorExtension {
 	/** Constructor. */
-	public ButtonExecutableBase(T modelElement) {
+	public ButtonGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL1Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonL1GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL1Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonL1GeneratorExtension.java
index ab68cddae1d323ff0ecd7956133c44d1ef0f9168..c367e0a10069041b80e14409aaa70ca68c01509b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL1Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonL1GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
 
 /** Executable for {@link ButtonL1}. */
-public class ButtonL1Executable extends ButtonExecutableBase<ButtonL1> {
+public class ButtonL1GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonL1> {
 	/** Constructor. */
-	public ButtonL1Executable(ButtonL1 modelElement) {
+	public ButtonL1GeneratorExtension(ButtonL1 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL2Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonL2GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL2Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonL2GeneratorExtension.java
index 336b9d8d26a682b701f7a2ca078369c9cc621fbb..035d2462b09d581a7be10d199bc011d8953bc082 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL2Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonL2GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
 
 /** Executable for {@link ButtonL2}. */
-public class ButtonL2Executable extends ButtonExecutableBase<ButtonL2> {
+public class ButtonL2GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonL2> {
 	/** Constructor. */
-	public ButtonL2Executable(ButtonL2 modelElement) {
+	public ButtonL2GeneratorExtension(ButtonL2 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR1Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonR1GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR1Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonR1GeneratorExtension.java
index 700ef701ed77a0d3f8141166fe647ac5cd4ad570..d82887e00d4bbc2938f7a89057460f109f0ddcf3 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR1Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonR1GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
 
 /** Executable for {@link ButtonR1}. */
-public class ButtonR1Executable extends ButtonExecutableBase<ButtonR1> {
+public class ButtonR1GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonR1> {
 	/** Constructor. */
-	public ButtonR1Executable(ButtonR1 modelElement) {
+	public ButtonR1GeneratorExtension(ButtonR1 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR2Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonR2GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR2Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonR2GeneratorExtension.java
index 9b4acdc37505f41c60d8216c92bcbd3f43a2ccec..d35159fef36179780b2cf5406de64ce75dd4facf 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR2Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/ButtonR2GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2;
 
 /** Executable for {@link ButtonR2}. */
-public class ButtonR2Executable extends ButtonExecutableBase<ButtonR2> {
+public class ButtonR2GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonR2> {
 	/** Constructor. */
-	public ButtonR2Executable(ButtonR2 modelElement) {
+	public ButtonR2GeneratorExtension(ButtonR2 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/GamepadExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/GamepadGeneratorExtensionBase.java
similarity index 80%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/GamepadExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/GamepadGeneratorExtensionBase.java
index fd54ded0437b7426df3f23c724bbcda873dbcdd1..25784be76c120d2df8b5f2f88345223c7ff5c254 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/GamepadExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/GamepadGeneratorExtensionBase.java
@@ -13,22 +13,22 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.eclipse.emf.ecore.EObject;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonTerminationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.library.PiHALLibraryExecutableBase;
+import org.fortiss.af3.platform.raspberry.generator.extension.library.PiHALLibraryGeneratorExtensionBase;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonInitializationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonTerminationGeneratorExtension;
 
 /**
  * Base class for all executables of the gamepad input sensors.
  * 
  * @author hoelzl
  */
-abstract class GamepadExecutableBase<T extends EObject> extends PiHALLibraryExecutableBase<T>
-		implements ISingletonInitializationExecutable, ISingletonTerminationExecutable {
+abstract class GamepadGeneratorExtensionBase<T extends EObject> extends PiHALLibraryGeneratorExtensionBase<T>
+		implements ISingletonInitializationGeneratorExtension, ISingletonTerminationGeneratorExtension {
 	/** Constructor. */
-	public GamepadExecutableBase(T modelElement) {
+	public GamepadGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickXExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Left_StickXGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickXExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Left_StickXGeneratorExtension.java
index c3e7f28f44fa27bd79e14ed7e60f44be2dc5a9ab..809953003e0e24908e17183aa86cc74f0e5078ab 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickXExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Left_StickXGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
 
 /** Executable for {@link Left_StickX_Position}. */
-public class Left_StickXExecutable extends StickExecutableBase<Left_StickX_Position> {
+public class Left_StickXGeneratorExtension extends StickGeneratorExtensionBase<Left_StickX_Position> {
 	/** Constructor. */
-	public Left_StickXExecutable(Left_StickX_Position modelElement) {
+	public Left_StickXGeneratorExtension(Left_StickX_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickYExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Left_StickYGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickYExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Left_StickYGeneratorExtension.java
index f81cc1e3124eb712507825bc54e7d0f633fde640..5cb4c657e7b1baa6b6162a957912cb40209e53a2 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickYExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Left_StickYGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
 
 /** Executable for {@link Left_StickY_Position}. */
-public class Left_StickYExecutable extends StickExecutableBase<Left_StickY_Position> {
+public class Left_StickYGeneratorExtension extends StickGeneratorExtensionBase<Left_StickY_Position> {
 	/** Constructor. */
-	public Left_StickYExecutable(Left_StickY_Position modelElement) {
+	public Left_StickYGeneratorExtension(Left_StickY_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickXExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Right_StickXGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickXExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Right_StickXGeneratorExtension.java
index ade165c88d0c6758efa167e5ba445eff87a0fd79..f3d0096b369a2e8226f9a158a958bd581f2cad67 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickXExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Right_StickXGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
 
 /** Executable for {@link Right_StickX_Position}. */
-public class Right_StickXExecutable extends StickExecutableBase<Right_StickX_Position> {
+public class Right_StickXGeneratorExtension extends StickGeneratorExtensionBase<Right_StickX_Position> {
 	/** Constructor. */
-	public Right_StickXExecutable(Right_StickX_Position modelElement) {
+	public Right_StickXGeneratorExtension(Right_StickX_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickYExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Right_StickYGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickYExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Right_StickYGeneratorExtension.java
index 891ea877d8c3f4bab6072a02b17bb92a6caa055d..a54408a4adfc5e7c6de4dcc9930581f6dfdfe72b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickYExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/Right_StickYGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
 
 /** Executable for {@link Right_StickY_Position}. */
-public class Right_StickYExecutable extends StickExecutableBase<Right_StickY_Position> {
+public class Right_StickYGeneratorExtension extends StickGeneratorExtensionBase<Right_StickY_Position> {
 	/** Constructor. */
-	public Right_StickYExecutable(Right_StickY_Position modelElement) {
+	public Right_StickYGeneratorExtension(Right_StickY_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/StickExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/StickGeneratorExtensionBase.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/StickExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/StickGeneratorExtensionBase.java
index 561a77c160dc27f13d6d6959a2285a0bf07d5096..a6a134cbc86e6f30c822170bf76ac7fdbc132d71 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/StickExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/gamepad/StickGeneratorExtensionBase.java
@@ -13,21 +13,21 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.gamepad;
 
 import org.eclipse.emf.ecore.EObject;
 import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IReadableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
 
 /**
  * Base class for executables reading gamepad sticks.
  * 
  * @author hoelzl
  */
-abstract class StickExecutableBase<T extends EObject> extends GamepadExecutableBase<T> implements
-		IReadableExecutable {
+abstract class StickGeneratorExtensionBase<T extends EObject> extends GamepadGeneratorExtensionBase<T> implements
+		IReadableGeneratorExtension {
 	/** Constructor. */
-	public StickExecutableBase(T modelElement) {
+	public StickGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/.ratings
new file mode 100644
index 0000000000000000000000000000000000000000..cbbb5eae19b7db0508f9b39d02b17cf232261ef0
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/.ratings
@@ -0,0 +1,2 @@
+BrickLibraryGeneratorExtensionBase.java a02f7030ddcc539c8e48488e8e3c29858edaf1f7 YELLOW
+PiHALLibraryGeneratorExtensionBase.java 74752cafe6b83d8c00dc88945bf001507704022b YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/BrickLibraryExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/BrickLibraryGeneratorExtensionBase.java
similarity index 81%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/BrickLibraryExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/BrickLibraryGeneratorExtensionBase.java
index 3556b41e6ca909aaf89fa58eac31c63d0cfeb788..a02f7030ddcc539c8e48488e8e3c29858edaf1f7 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/BrickLibraryExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/BrickLibraryGeneratorExtensionBase.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.library;
+package org.fortiss.af3.platform.raspberry.generator.extension.library;
 
 import static org.fortiss.af3.generator.common.utils.SourceModelElementFactory.createByteContentUnitForPluginFileInRCP;
 
@@ -21,18 +21,18 @@ import org.eclipse.emf.ecore.EObject;
 import org.fortiss.af3.generator.common.model.source.ByteContentUnit;
 import org.fortiss.af3.platform.language.executable.ExecutableBase;
 import org.fortiss.af3.platform.raspberry.AF3PlatformRaspberryActivator;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IRasPiHeaderExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IRasPiLibraryBasedExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IRasPiHeaderGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IRasPiLibraryBasedGeneratorExtension;
 
 /**
  * Base class for executables using the AF3 Pi HAL library.
  * 
  * @author hoelzl
  */
-public abstract class BrickLibraryExecutableBase<T extends EObject> extends ExecutableBase<T>
-		implements IRasPiLibraryBasedExecutable, IRasPiHeaderExecutable {
+public abstract class BrickLibraryGeneratorExtensionBase<T extends EObject> extends ExecutableBase<T>
+		implements IRasPiLibraryBasedGeneratorExtension, IRasPiHeaderGeneratorExtension {
 	/** Constructor. */
-	public BrickLibraryExecutableBase(T modelElement) {
+	public BrickLibraryGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/PiHALLibraryExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/PiHALLibraryGeneratorExtensionBase.java
similarity index 81%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/PiHALLibraryExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/PiHALLibraryGeneratorExtensionBase.java
index d64da670a3f39ef53a8f548955f35b588308ba76..74752cafe6b83d8c00dc88945bf001507704022b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/library/PiHALLibraryExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/library/PiHALLibraryGeneratorExtensionBase.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.library;
+package org.fortiss.af3.platform.raspberry.generator.extension.library;
 
 import static org.fortiss.af3.generator.common.utils.SourceModelElementFactory.createByteContentUnitForPluginFileInRCP;
 
@@ -21,18 +21,18 @@ import org.eclipse.emf.ecore.EObject;
 import org.fortiss.af3.generator.common.model.source.ByteContentUnit;
 import org.fortiss.af3.platform.language.executable.ExecutableBase;
 import org.fortiss.af3.platform.raspberry.AF3PlatformRaspberryActivator;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IRasPiHeaderExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IRasPiLibraryBasedExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IRasPiHeaderGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.IRasPiLibraryBasedGeneratorExtension;
 
 /**
  * Base class for executables using the AF3 Pi HAL library.
  * 
  * @author hoelzl
  */
-public abstract class PiHALLibraryExecutableBase<T extends EObject> extends ExecutableBase<T>
-		implements IRasPiLibraryBasedExecutable, IRasPiHeaderExecutable {
+public abstract class PiHALLibraryGeneratorExtensionBase<T extends EObject> extends ExecutableBase<T>
+		implements IRasPiLibraryBasedGeneratorExtension, IRasPiHeaderGeneratorExtension {
 	/** Constructor. */
-	public PiHALLibraryExecutableBase(T modelElement) {
+	public PiHALLibraryGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/.ratings
new file mode 100644
index 0000000000000000000000000000000000000000..233f8d127cfa43c0f50e7a4770759118c38e8fcf
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/.ratings
@@ -0,0 +1,3 @@
+MotorControlGeneratorExtensionBase.java 3144ca92ff4dd5c7aff891c8a5e6df2a63d18e33 RED
+MotorControlInputGeneratorExtension.java 46e45f37f30b48fe50a7167799adaab015b8abd3 RED
+MotorControlOutputGeneratorExtension.java 9ab48031ad519db2aed2cab21c5219d6c8feeefb RED
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlGeneratorExtensionBase.java
similarity index 83%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlGeneratorExtensionBase.java
index 48d568df87fa1e15588b830065762ad73ff12f97..3144ca92ff4dd5c7aff891c8a5e6df2a63d18e33 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlGeneratorExtensionBase.java
@@ -13,21 +13,21 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.motorcontrol;
+package org.fortiss.af3.platform.raspberry.generator.extension.motorcontrol;
 
 import org.eclipse.emf.ecore.EObject;
 import org.fortiss.af3.platform.language.executable.ExecutableBase;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonInitializationExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonInitializationGeneratorExtension;
 
 /**
  * {@link ExecutableBase} base class for motor controller elements.
  * 
  * @author hoelzl
  */
-abstract class MotorControlExecutableBase<T extends EObject> extends ExecutableBase<T> implements
-		ISingletonInitializationExecutable {
+abstract class MotorControlGeneratorExtensionBase<T extends EObject> extends ExecutableBase<T> implements
+		ISingletonInitializationGeneratorExtension {
 	/** Constructor. */
-	public MotorControlExecutableBase(T modelElement) {
+	public MotorControlGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlInputExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlInputGeneratorExtension.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlInputExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlInputGeneratorExtension.java
index a6162b9bd9b98997f1b3cc8eb63232338e3e84a8..46e45f37f30b48fe50a7167799adaab015b8abd3 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlInputExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlInputGeneratorExtension.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.motorcontrol;
+package org.fortiss.af3.platform.raspberry.generator.extension.motorcontrol;
 
 import org.fortiss.af3.platform.language.executable.ExecutableBase;
 import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlInput;
@@ -23,9 +23,9 @@ import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlInput;
  * 
  * @author hoelzl
  */
-public class MotorControlInputExecutable extends MotorControlExecutableBase<MotorControlInput> {
+public class MotorControlInputGeneratorExtension extends MotorControlGeneratorExtensionBase<MotorControlInput> {
 	/** Constructor. */
-	public MotorControlInputExecutable(MotorControlInput modelElement) {
+	public MotorControlInputGeneratorExtension(MotorControlInput modelElement) {
 		super(modelElement);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlOutputExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlOutputGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlOutputExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlOutputGeneratorExtension.java
index 26aef1e59d43c0370246e082a3d401a5c378fd03..9ab48031ad519db2aed2cab21c5219d6c8feeefb 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/motorcontrol/MotorControlOutputExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/motorcontrol/MotorControlOutputGeneratorExtension.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.motorcontrol;
+package org.fortiss.af3.platform.raspberry.generator.extension.motorcontrol;
 
 import org.fortiss.af3.platform.language.executable.ExecutableBase;
 import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlOutput;
@@ -23,9 +23,9 @@ import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlOutput;
  * 
  * @author hoelzl
  */
-public class MotorControlOutputExecutable extends ExecutableBase<MotorControlOutput> {
+public class MotorControlOutputGeneratorExtension extends ExecutableBase<MotorControlOutput> {
 	/** Constructor. */
-	public MotorControlOutputExecutable(MotorControlOutput modelElement) {
+	public MotorControlOutputGeneratorExtension(MotorControlOutput modelElement) {
 		super(modelElement);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/.ratings
new file mode 100644
index 0000000000000000000000000000000000000000..c78efe80981cca140d5397c28a05e0a2e9907e50
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/.ratings
@@ -0,0 +1,25 @@
+ButtonAGeneratorExtension.java a5db7054bcb35a1d63e7946949c33b7e4f0f9a23 YELLOW
+ButtonBGeneratorExtension.java 6b8a456407a402bb0eea94c5baa0e143bf55cc9c YELLOW
+ButtonGeneratorExtensionBase.java 8a634f311d273940280ca0bcbc06a90ca8c1a85b YELLOW
+ButtonHomeGeneratorExtension.java dea4c975dd062b2daba4cae2b3b1032a4dbcf102 YELLOW
+ButtonL1GeneratorExtension.java dfc3306d8907bd8cb51fa93551e600ea4bcfa147 YELLOW
+ButtonL3GeneratorExtension.java 406f4bda79cb3d317cc7b79619f3644f661b6c9a YELLOW
+ButtonR1GeneratorExtension.java 10258cae77ccb9644797495f81c30fa1cc1f2242 YELLOW
+ButtonR3GeneratorExtension.java 889fb1be3f4c134b3a03350fa0f51f29d167999c YELLOW
+ButtonSelectGeneratorExtension.java 9163cb0825ca6eff46f125ce66748fd0c53e6bd6 YELLOW
+ButtonStartGeneratorExtension.java a82fb9e7fb78f1f05fdcfec5acb38ef1a19976c3 YELLOW
+ButtonXGeneratorExtension.java a5db6960de3b84cbe28b120bdef0828098b99a0d YELLOW
+ButtonYGeneratorExtension.java 494c7d6adf3ec5198b9c10a44c640694317cb826 YELLOW
+DPadDownGeneratorExtension.java 8cdaeeb7a7f22f046b71d79a715e89d000f2ed3f YELLOW
+DPadLeftGeneratorExtension.java 33ffcd6e3fd69df7cdd0409c5347a982292e2801 YELLOW
+DPadRightGeneratorExtension.java 4182ae5dad3920f8828b7a7250d3d3ca6b912d1b YELLOW
+DPadUpGeneratorExtension.java 43b1b7174b6b7c2daabef226773c27e0a1f714a8 YELLOW
+L2PositionGeneratorExtension.java e3ca7c1ff0c0b880d6bdaa88eeb19717de41058f YELLOW
+Left_StickXGeneratorExtension.java 86aa9e10c59a99f7066fa2768244ba0e97009aaa YELLOW
+Left_StickYGeneratorExtension.java f80bb60b5e0f2acd0bcc50c27a2b28a5f629824d YELLOW
+R2PositionGeneratorExtension.java afccd5232599c6b162b275a68deda2b7c230135b YELLOW
+Right_StickXGeneratorExtension.java f6a85ea861bcd7e985f1f70ae070a0f0da4c307e YELLOW
+Right_StickYGeneratorExtension.java aa1065190dd041f21abc3e8498e902d55d0735dc YELLOW
+RumblepadGeneratorExtensionBase.java e1d574b01824f1daff6d3dce5f64bf4136c0dfcc YELLOW
+SimpleRumbleFeatureGeneratorExtension.java 47dccaddc556d1fe72e55e736f86f7fb888cdf35 YELLOW
+StickGeneratorExtensionBase.java e0091b551ceb24c45c4349d54db8c5a885508c06 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonAExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonAGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonAExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonAGeneratorExtension.java
index bbcb151d851b1b3d3e97b7e11b790fa13559fd96..a5db7054bcb35a1d63e7946949c33b7e4f0f9a23 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonAExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonAGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonA;
 
 /** Executable for {@link ButtonA}. */
-public class ButtonAExecutable extends ButtonExecutableBase<ButtonA> {
+public class ButtonAGeneratorExtension extends ButtonGeneratorExtensionBase<ButtonA> {
 	/** Constructor. */
-	public ButtonAExecutable(ButtonA modelElement) {
+	public ButtonAGeneratorExtension(ButtonA modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonBExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonBGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonBExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonBGeneratorExtension.java
index d659e04dc60cba0808bd2fceae22fcbc1bd203a9..6b8a456407a402bb0eea94c5baa0e143bf55cc9c 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonBExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonBGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonB;
 
 /** Executable for {@link ButtonB}. */
-public class ButtonBExecutable extends ButtonExecutableBase<ButtonB> {
+public class ButtonBGeneratorExtension extends ButtonGeneratorExtensionBase<ButtonB> {
 	/** Constructor. */
-	public ButtonBExecutable(ButtonB modelElement) {
+	public ButtonBGeneratorExtension(ButtonB modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonGeneratorExtensionBase.java
similarity index 83%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonGeneratorExtensionBase.java
index 578104b5b572ee49ddcc142d165e10eec07e1738..8a634f311d273940280ca0bcbc06a90ca8c1a85b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonGeneratorExtensionBase.java
@@ -13,21 +13,21 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.eclipse.emf.ecore.EObject;
 import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IReadableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
 
 /**
  * Base class for executables reading rumblepad buttons.
  * 
  * @author hoelzl
  */
-abstract class ButtonExecutableBase<T extends EObject> extends RumblepadExecutableBase<T> implements
-		IReadableExecutable {
+abstract class ButtonGeneratorExtensionBase<T extends EObject> extends RumblepadGeneratorExtensionBase<T> implements
+		IReadableGeneratorExtension {
 	/** Constructor. */
-	public ButtonExecutableBase(T modelElement) {
+	public ButtonGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonHomeExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonHomeGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonHomeExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonHomeGeneratorExtension.java
index e3a19a82d2cafd3bc75b6a7fc1a75df5656df48c..dea4c975dd062b2daba4cae2b3b1032a4dbcf102 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonHomeExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonHomeGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonHome;
 
 /** Executable for {@link ButtonHome}. */
-public class ButtonHomeExecutable extends ButtonExecutableBase<ButtonHome> {
+public class ButtonHomeGeneratorExtension extends ButtonGeneratorExtensionBase<ButtonHome> {
 	/** Constructor. */
-	public ButtonHomeExecutable(ButtonHome modelElement) {
+	public ButtonHomeGeneratorExtension(ButtonHome modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonL1Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonL1GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonL1Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonL1GeneratorExtension.java
index 68fac6c2abc7ea40eb7cc16839677a4cdc24111a..dfc3306d8907bd8cb51fa93551e600ea4bcfa147 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonL1Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonL1GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1;
 
 /** Executable for {@link ButtonL1}. */
-public class ButtonL1Executable extends ButtonExecutableBase<ButtonL1> {
+public class ButtonL1GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonL1> {
 	/** Constructor. */
-	public ButtonL1Executable(ButtonL1 modelElement) {
+	public ButtonL1GeneratorExtension(ButtonL1 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonL3Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonL3GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonL3Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonL3GeneratorExtension.java
index 2d04b51ee7ab822419140cf69821bbcbcfded359..406f4bda79cb3d317cc7b79619f3644f661b6c9a 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonL3Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonL3GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL3;
 
 /** Executable for {@link ButtonL3}. */
-public class ButtonL3Executable extends ButtonExecutableBase<ButtonL3> {
+public class ButtonL3GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonL3> {
 	/** Constructor. */
-	public ButtonL3Executable(ButtonL3 modelElement) {
+	public ButtonL3GeneratorExtension(ButtonL3 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonR1Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonR1GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonR1Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonR1GeneratorExtension.java
index cc9b1332e442f3875191fdc2d4fa26bcc94f1b13..10258cae77ccb9644797495f81c30fa1cc1f2242 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonR1Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonR1GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1;
 
 /** Executable for {@link ButtonR1}. */
-public class ButtonR1Executable extends ButtonExecutableBase<ButtonR1> {
+public class ButtonR1GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonR1> {
 	/** Constructor. */
-	public ButtonR1Executable(ButtonR1 modelElement) {
+	public ButtonR1GeneratorExtension(ButtonR1 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonR3Executable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonR3GeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonR3Executable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonR3GeneratorExtension.java
index 4eb79b5e65829beeb0c65686c2ee1b97af02c60b..889fb1be3f4c134b3a03350fa0f51f29d167999c 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonR3Executable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonR3GeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR3;
 
 /** Executable for {@link ButtonR3}. */
-public class ButtonR3Executable extends ButtonExecutableBase<ButtonR3> {
+public class ButtonR3GeneratorExtension extends ButtonGeneratorExtensionBase<ButtonR3> {
 	/** Constructor. */
-	public ButtonR3Executable(ButtonR3 modelElement) {
+	public ButtonR3GeneratorExtension(ButtonR3 modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonSelectExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonSelectGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonSelectExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonSelectGeneratorExtension.java
index a141f9ea800c48c10f9a1695fe7c730873a3b021..9163cb0825ca6eff46f125ce66748fd0c53e6bd6 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonSelectExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonSelectGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonSelect;
 
 /** Executable for {@link ButtonSelect}. */
-public class ButtonSelectExecutable extends ButtonExecutableBase<ButtonSelect> {
+public class ButtonSelectGeneratorExtension extends ButtonGeneratorExtensionBase<ButtonSelect> {
 	/** Constructor. */
-	public ButtonSelectExecutable(ButtonSelect modelElement) {
+	public ButtonSelectGeneratorExtension(ButtonSelect modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonStartExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonStartGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonStartExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonStartGeneratorExtension.java
index d5dae399a944aafdccb80fea4273686afeaf65a8..a82fb9e7fb78f1f05fdcfec5acb38ef1a19976c3 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonStartExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonStartGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonStart;
 
 /** Executable for {@link ButtonStart}. */
-public class ButtonStartExecutable extends ButtonExecutableBase<ButtonStart> {
+public class ButtonStartGeneratorExtension extends ButtonGeneratorExtensionBase<ButtonStart> {
 	/** Constructor. */
-	public ButtonStartExecutable(ButtonStart modelElement) {
+	public ButtonStartGeneratorExtension(ButtonStart modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonXExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonXGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonXExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonXGeneratorExtension.java
index 1bd0abb2cd33731bc1a501c5b523074a37847512..a5db6960de3b84cbe28b120bdef0828098b99a0d 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonXExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonXGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonX;
 
 /** Executable for {@link ButtonX}. */
-public class ButtonXExecutable extends ButtonExecutableBase<ButtonX> {
+public class ButtonXGeneratorExtension extends ButtonGeneratorExtensionBase<ButtonX> {
 	/** Constructor. */
-	public ButtonXExecutable(ButtonX modelElement) {
+	public ButtonXGeneratorExtension(ButtonX modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonYExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonYGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonYExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonYGeneratorExtension.java
index 703c9497600ca405b7dc2adb143179cf12aa5806..494c7d6adf3ec5198b9c10a44c640694317cb826 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/ButtonYExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/ButtonYGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonY;
 
 /** Executable for {@link ButtonY}. */
-public class ButtonYExecutable extends ButtonExecutableBase<ButtonY> {
+public class ButtonYGeneratorExtension extends ButtonGeneratorExtensionBase<ButtonY> {
 	/** Constructor. */
-	public ButtonYExecutable(ButtonY modelElement) {
+	public ButtonYGeneratorExtension(ButtonY modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadDownExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadDownGeneratorExtension.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadDownExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadDownGeneratorExtension.java
index f19d39030b1370ea0d0f00727dd7e75635442760..8cdaeeb7a7f22f046b71d79a715e89d000f2ed3f 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadDownExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadDownGeneratorExtension.java
@@ -13,20 +13,20 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadDown;
 
 /** Executable for {@link DPadDown}. */
-public class DPadDownExecutable extends ButtonExecutableBase<DPadDown> {
+public class DPadDownGeneratorExtension extends ButtonGeneratorExtensionBase<DPadDown> {
 	/** Constructor. */
-	public DPadDownExecutable(DPadDown modelElement) {
+	public DPadDownGeneratorExtension(DPadDown modelElement) {
 		super(modelElement);
 	}
 
 	/** {@inheritDoc} */
 	@Override
 	protected String getButtonIdentifier() {
-		return "RUMBLEPAD_BUTTON_DPAD_DOWN";
+		return "RUMBLEPAD_DPAD_DOWN";
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadLeftExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadLeftGeneratorExtension.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadLeftExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadLeftGeneratorExtension.java
index 1026fae470429fb99427adfccf494832f504a378..33ffcd6e3fd69df7cdd0409c5347a982292e2801 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadLeftExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadLeftGeneratorExtension.java
@@ -13,20 +13,20 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadLeft;
 
 /** Executable for {@link DPadLeft}. */
-public class DPadLeftExecutable extends ButtonExecutableBase<DPadLeft> {
+public class DPadLeftGeneratorExtension extends ButtonGeneratorExtensionBase<DPadLeft> {
 	/** Constructor. */
-	public DPadLeftExecutable(DPadLeft modelElement) {
+	public DPadLeftGeneratorExtension(DPadLeft modelElement) {
 		super(modelElement);
 	}
 
 	/** {@inheritDoc} */
 	@Override
 	protected String getButtonIdentifier() {
-		return "RUMBLEPAD_BUTTON_DPAD_LEFT";
+		return "RUMBLEPAD_DPAD_LEFT";
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadRightExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadRightGeneratorExtension.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadRightExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadRightGeneratorExtension.java
index f354bdd8767b4c28e419dcb514f47521a526a01b..4182ae5dad3920f8828b7a7250d3d3ca6b912d1b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadRightExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadRightGeneratorExtension.java
@@ -13,20 +13,20 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadRight;
 
 /** Executable for {@link DPadRight}. */
-public class DPadRightExecutable extends ButtonExecutableBase<DPadRight> {
+public class DPadRightGeneratorExtension extends ButtonGeneratorExtensionBase<DPadRight> {
 	/** Constructor. */
-	public DPadRightExecutable(DPadRight modelElement) {
+	public DPadRightGeneratorExtension(DPadRight modelElement) {
 		super(modelElement);
 	}
 
 	/** {@inheritDoc} */
 	@Override
 	protected String getButtonIdentifier() {
-		return "RUMBLEPAD_BUTTON_DPAD_RIGHT";
+		return "RUMBLEPAD_DPAD_RIGHT";
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadUpExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadUpGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadUpExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadUpGeneratorExtension.java
index e7a11870695ede63519696b071d30a4c93d6f9d3..43b1b7174b6b7c2daabef226773c27e0a1f714a8 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/DPadUpExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/DPadUpGeneratorExtension.java
@@ -13,20 +13,20 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadUp;
 
 /** Executable for {@link DPadUp}. */
-public class DPadUpExecutable extends ButtonExecutableBase<DPadUp> {
+public class DPadUpGeneratorExtension extends ButtonGeneratorExtensionBase<DPadUp> {
 	/** Constructor. */
-	public DPadUpExecutable(DPadUp modelElement) {
+	public DPadUpGeneratorExtension(DPadUp modelElement) {
 		super(modelElement);
 	}
 
 	/** {@inheritDoc} */
 	@Override
 	protected String getButtonIdentifier() {
-		return "RUMBLEPAD_BUTTON_DPAD_UP";
+		return "RUMBLEPAD_DPAD_UP";
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/L2PositionExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/L2PositionGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/L2PositionExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/L2PositionGeneratorExtension.java
index 6d75fd0b020819a38b1c3ddda9aa9ed536832108..e3ca7c1ff0c0b880d6bdaa88eeb19717de41058f 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/L2PositionExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/L2PositionGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.L2_Position;
 
 /** Executable for {@link L2_Position}. */
-public class L2PositionExecutable extends StickExecutableBase<L2_Position> {
+public class L2PositionGeneratorExtension extends StickGeneratorExtensionBase<L2_Position> {
 	/** Constructor. */
-	public L2PositionExecutable(L2_Position modelElement) {
+	public L2PositionGeneratorExtension(L2_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Left_StickXExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Left_StickXGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Left_StickXExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Left_StickXGeneratorExtension.java
index 41667a015567298cfceee981d8c1f309e6cd97b5..86aa9e10c59a99f7066fa2768244ba0e97009aaa 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Left_StickXExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Left_StickXGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position;
 
 /** Executable for {@link Left_StickX_Position}. */
-public class Left_StickXExecutable extends StickExecutableBase<Left_StickX_Position> {
+public class Left_StickXGeneratorExtension extends StickGeneratorExtensionBase<Left_StickX_Position> {
 	/** Constructor. */
-	public Left_StickXExecutable(Left_StickX_Position modelElement) {
+	public Left_StickXGeneratorExtension(Left_StickX_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Left_StickYExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Left_StickYGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Left_StickYExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Left_StickYGeneratorExtension.java
index cc2b36f9bca913dc1956f34495cf9c77acb13c88..f80bb60b5e0f2acd0bcc50c27a2b28a5f629824d 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Left_StickYExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Left_StickYGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position;
 
 /** Executable for {@link Left_StickY_Position}. */
-public class Left_StickYExecutable extends StickExecutableBase<Left_StickY_Position> {
+public class Left_StickYGeneratorExtension extends StickGeneratorExtensionBase<Left_StickY_Position> {
 	/** Constructor. */
-	public Left_StickYExecutable(Left_StickY_Position modelElement) {
+	public Left_StickYGeneratorExtension(Left_StickY_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/R2PositionExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/R2PositionGeneratorExtension.java
similarity index 86%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/R2PositionExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/R2PositionGeneratorExtension.java
index 19f778392841d02d281fd856564b75e1333dffaa..afccd5232599c6b162b275a68deda2b7c230135b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/R2PositionExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/R2PositionGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.R2_Position;
 
 /** Executable for {@link R2_Position}. */
-public class R2PositionExecutable extends StickExecutableBase<R2_Position> {
+public class R2PositionGeneratorExtension extends StickGeneratorExtensionBase<R2_Position> {
 	/** Constructor. */
-	public R2PositionExecutable(R2_Position modelElement) {
+	public R2PositionGeneratorExtension(R2_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Right_StickXExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Right_StickXGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Right_StickXExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Right_StickXGeneratorExtension.java
index 97656a2ae56a70eac88153b123f2cd9c584af967..f6a85ea861bcd7e985f1f70ae070a0f0da4c307e 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Right_StickXExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Right_StickXGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position;
 
 /** Executable for {@link Right_StickX_Position}. */
-public class Right_StickXExecutable extends StickExecutableBase<Right_StickX_Position> {
+public class Right_StickXGeneratorExtension extends StickGeneratorExtensionBase<Right_StickX_Position> {
 	/** Constructor. */
-	public Right_StickXExecutable(Right_StickX_Position modelElement) {
+	public Right_StickXGeneratorExtension(Right_StickX_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Right_StickYExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Right_StickYGeneratorExtension.java
similarity index 85%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Right_StickYExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Right_StickYGeneratorExtension.java
index f3d942123ca47d0ddbf32f4f46bfaf2b21732653..aa1065190dd041f21abc3e8498e902d55d0735dc 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/Right_StickYExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/Right_StickYGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position;
 
 /** Executable for {@link Right_StickY_Position}. */
-public class Right_StickYExecutable extends StickExecutableBase<Right_StickY_Position> {
+public class Right_StickYGeneratorExtension extends StickGeneratorExtensionBase<Right_StickY_Position> {
 	/** Constructor. */
-	public Right_StickYExecutable(Right_StickY_Position modelElement) {
+	public Right_StickYGeneratorExtension(Right_StickY_Position modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/RumblepadExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/RumblepadGeneratorExtensionBase.java
similarity index 78%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/RumblepadExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/RumblepadGeneratorExtensionBase.java
index 39b4d75bed6526d82f5baa420b2415b271157df9..e1d574b01824f1daff6d3dce5f64bf4136c0dfcc 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/RumblepadExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/RumblepadGeneratorExtensionBase.java
@@ -13,29 +13,30 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.eclipse.emf.ecore.EObject;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonInitializationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.ISingletonTerminationExecutable;
-import org.fortiss.af3.platform.raspberry.generator.executable.library.PiHALLibraryExecutableBase;
+import org.fortiss.af3.platform.raspberry.generator.extension.library.PiHALLibraryGeneratorExtensionBase;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonInitializationGeneratorExtension;
+import org.fortiss.af3.platform.raspberry.generator.framework.ISingletonTerminationGeneratorExtension;
 
 /**
  * Base class for all executables of the rumblepad.
  * 
  * @author hoelzl
  */
-abstract class RumblepadExecutableBase<T extends EObject> extends PiHALLibraryExecutableBase<T>
-		implements ISingletonInitializationExecutable, ISingletonTerminationExecutable {
+abstract class RumblepadGeneratorExtensionBase<T extends EObject> extends
+		PiHALLibraryGeneratorExtensionBase<T> implements
+		ISingletonInitializationGeneratorExtension, ISingletonTerminationGeneratorExtension {
 	/** Constructor. */
-	public RumblepadExecutableBase(T modelElement) {
+	public RumblepadGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
 	/** {@inheritDoc} */
 	@Override
 	public final String getSingletonVariableDeclarationCode(String singletonPostfix) {
-		return "static rumblepad_configuration_t rumblepad_config_" + singletonPostfix + ";\n";
+		return "static rumblepad_configuration_t* rumblepad_config_" + singletonPostfix + ";\n";
 	}
 
 	/** {@inheritDoc} */
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/SimpleRumbleFeatureExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/SimpleRumbleFeatureGeneratorExtension.java
similarity index 88%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/SimpleRumbleFeatureExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/SimpleRumbleFeatureGeneratorExtension.java
index 413b6fb3f5847f0d09f52341c98b95f74c352016..47dccaddc556d1fe72e55e736f86f7fb888cdf35 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/SimpleRumbleFeatureExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/SimpleRumbleFeatureGeneratorExtension.java
@@ -13,7 +13,7 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
 import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.intConst;
@@ -25,10 +25,10 @@ import org.fortiss.af3.platform.language.executable.IWritableExecutable;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.SimpleRumbleFeature;
 
 /** Executable for {@link SimpleRumbleFeature}. */
-public class SimpleRumbleFeatureExecutable extends RumblepadExecutableBase<SimpleRumbleFeature>
+public class SimpleRumbleFeatureGeneratorExtension extends RumblepadGeneratorExtensionBase<SimpleRumbleFeature>
 		implements IWritableExecutable {
 	/** Constructor. */
-	public SimpleRumbleFeatureExecutable(SimpleRumbleFeature modelElement) {
+	public SimpleRumbleFeatureGeneratorExtension(SimpleRumbleFeature modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/StickExecutableBase.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/StickGeneratorExtensionBase.java
similarity index 84%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/StickExecutableBase.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/StickGeneratorExtensionBase.java
index 4e1188b3e3a3b6d53a6387d2cf472c89c27b7449..e0091b551ceb24c45c4349d54db8c5a885508c06 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/rumblepad/StickExecutableBase.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/extension/rumblepad/StickGeneratorExtensionBase.java
@@ -13,21 +13,21 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.rumblepad;
+package org.fortiss.af3.platform.raspberry.generator.extension.rumblepad;
 
 import org.eclipse.emf.ecore.EObject;
 import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.platform.raspberry.generator.executable.framework.IReadableExecutable;
+import org.fortiss.af3.platform.raspberry.generator.framework.IReadableGeneratorExtension;
 
 /**
  * Base class for executables reading rumblepad sticks and axis inputs.
  * 
  * @author hoelzl
  */
-abstract class StickExecutableBase<T extends EObject> extends RumblepadExecutableBase<T> implements
-		IReadableExecutable {
+abstract class StickGeneratorExtensionBase<T extends EObject> extends RumblepadGeneratorExtensionBase<T> implements
+		IReadableGeneratorExtension {
 	/** Constructor. */
-	public StickExecutableBase(T modelElement) {
+	public StickGeneratorExtensionBase(T modelElement) {
 		super(modelElement);
 	}
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/.ratings
new file mode 100644
index 0000000000000000000000000000000000000000..a129066af0e61cca3780d507ff87b3e28673a1d1
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/.ratings
@@ -0,0 +1,11 @@
+IInstanceGeneratorExtension.java 9d20878f9a1b9f82bd8f9f090bd989af1f08c8ab YELLOW
+IInstanceInitializationGeneratorExtension.java ae145d29cb2abbc492380c6af303a12fc2a0daa6 YELLOW
+IInstanceTerminationGeneratorExtension.java d9632d04207a484bbe46110ec5925c9850228f30 YELLOW
+IRasPiHeaderGeneratorExtension.java ba484bfa345f324e8998004868bb0a815ccc1ada YELLOW
+IRasPiLibraryBasedGeneratorExtension.java 7759d1510fa776727afaa3c38f881c2209dc97a2 YELLOW
+IRasPiSourceBasedGeneratorExtension.java 4aa645389a5f4538d7004ff7d6f6a29008bf29e7 YELLOW
+IReadableGeneratorExtension.java cb46973bf8d1635c9893f15d4c37a60c570b5377 YELLOW
+ISingletonGeneratorExtension.java c345a55893508b1707f0fbe3cebae7c761f3277d YELLOW
+ISingletonInitializationGeneratorExtension.java 50394cc39e0937785c093b7042f7b4a89027aa33 YELLOW
+ISingletonTerminationGeneratorExtension.java 5f15352e7343ca551b754f6259dd2324a16b55a8 YELLOW
+IWriteableGeneratorExtension.java dd4da2e4939a947d9ff343d94bb8e86a7f15439c YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceGeneratorExtension.java
similarity index 83%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceGeneratorExtension.java
index 3affc638b5802896ff7bfae6f9185fc0dfa8c8d2..9d20878f9a1b9f82bd8f9f090bd989af1f08c8ab 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceGeneratorExtension.java
@@ -13,14 +13,14 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 /**
- * Marker interface for {@link IInstanceInitializationExecutable} and
- * {@link IInstanceTerminationExecutable}.
+ * Common marker interface for {@link IInstanceInitializationGeneratorExtension} and
+ * {@link IInstanceTerminationGeneratorExtension}.
  * 
  * @author hoelzl
  */
-public interface IInstanceExecutable {
+public interface IInstanceGeneratorExtension {
 	// marker interface only
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceInitializationExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceInitializationGeneratorExtension.java
similarity index 80%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceInitializationExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceInitializationGeneratorExtension.java
index 6941c4eb9622149d548f338c6727541cd23895ce..ae145d29cb2abbc492380c6af303a12fc2a0daa6 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceInitializationExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceInitializationGeneratorExtension.java
@@ -13,22 +13,24 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
-
-import org.fortiss.af3.platform.language.executable.ExecutableBase;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 /**
- * Interface for {@link ExecutableBase}s, which require initialization including the definition
+ * Interface for generator extensions, which require initialization including the definition
  * static variables in the main program (e.g. a Unix file descriptor) on an instance level, e.g.,
  * every sensor of a certain type has its own instance data.
+ * <P>
+ * Implementors of this interface receive a {@code postfix}, which is unique for every model element
+ * instance, and the {@code singletonPostfix} in case the implementing class also implements
+ * {@link ISingletonGeneratorExtension}.
  * 
  * @author hoelzl
  */
-public interface IInstanceInitializationExecutable extends IInstanceExecutable {
+public interface IInstanceInitializationGeneratorExtension extends IInstanceGeneratorExtension {
 	/**
 	 * Returns the variable declarations needed by this executable. The postfix is given by the code
 	 * generator to ensure uniqueness of variables for platform elements of the same type. If the
-	 * implementing class also implements {@link ISingletonInitializationExecutable} the
+	 * implementing class also implements {@link ISingletonInitializationGeneratorExtension} the
 	 * {@code singletonPostfix} is non-null and the same as supplied to the methods of the latter
 	 * interface.
 	 */
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceTerminationExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceTerminationGeneratorExtension.java
similarity index 74%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceTerminationExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceTerminationGeneratorExtension.java
index 2663162a843e8954a11083d78e16b17659df0d27..d9632d04207a484bbe46110ec5925c9850228f30 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IInstanceTerminationExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IInstanceTerminationGeneratorExtension.java
@@ -13,18 +13,16 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
-
-import org.fortiss.af3.platform.language.executable.ExecutableBase;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 /**
- * Interface for {@link ExecutableBase}s, which require to be terminated during program shutdown.
- * The termination code is included for every executable instance with the {@code postfix} provided
- * by the code generator.
+ * Interface for generator extensions, which require to be terminated during program shutdown.
+ * The termination code is included for every model element instance with the {@code postfix}
+ * providedgenerator extensions by the code generator.
  * 
  * @author hoelzl
  */
-public interface IInstanceTerminationExecutable extends IInstanceExecutable {
+public interface IInstanceTerminationGeneratorExtension extends IInstanceGeneratorExtension {
 	/** Returns an termination code for the given {@code postfix}. */
 	String getInstanceTerminationCode(String postfix);
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiHeaderExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiHeaderGeneratorExtension.java
similarity index 88%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiHeaderExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiHeaderGeneratorExtension.java
index f14b5714e7b982e097f6ac6e95eb91223a30d048..ba484bfa345f324e8998004868bb0a815ccc1ada 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiHeaderExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiHeaderGeneratorExtension.java
@@ -13,16 +13,16 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 import org.fortiss.af3.generator.common.model.source.ByteContentUnit;
 
 /**
- * Interface for executables, which require a header file to be included.
+ * Interface for generator extensions, which require a header file to be included.
  * 
  * @author hoelzl
  */
-public interface IRasPiHeaderExecutable {
+public interface IRasPiHeaderGeneratorExtension {
 	/** Returns the name of the header file required by this executable. */
 	String getHeaderFileName();
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiLibraryBasedExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiLibraryBasedGeneratorExtension.java
similarity index 87%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiLibraryBasedExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiLibraryBasedGeneratorExtension.java
index cf3548f22185e666fdcf6d4658b783734c0e5e8e..7759d1510fa776727afaa3c38f881c2209dc97a2 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiLibraryBasedExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiLibraryBasedGeneratorExtension.java
@@ -13,16 +13,16 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 import org.fortiss.af3.generator.common.model.source.ByteContentUnit;
 
 /**
- * Interface for executables, which require a static library to be included.
+ * Interface for generator extensions, which require a static library to be included.
  * 
  * @author hoelzl
  */
-public interface IRasPiLibraryBasedExecutable {
+public interface IRasPiLibraryBasedGeneratorExtension {
 	/** Returns the name of the library required by this executable. */
 	String getLibraryFileName();
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiSourceBasedExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiSourceBasedGeneratorExtension.java
similarity index 87%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiSourceBasedExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiSourceBasedGeneratorExtension.java
index 79646213964346ace17013f5c8df5de13dafb1f0..4aa645389a5f4538d7004ff7d6f6a29008bf29e7 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IRasPiSourceBasedExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IRasPiSourceBasedGeneratorExtension.java
@@ -13,16 +13,16 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 import org.fortiss.af3.generator.common.model.source.ByteContentUnit;
 
 /**
- * Interface for executables, which require a source file to be included.
+ * Interface for generator extensions, which require a source file to be included.
  * 
  * @author hoelzl
  */
-public interface IRasPiSourceBasedExecutable {
+public interface IRasPiSourceBasedGeneratorExtension {
 	/** Returns the name of the source file required by this executable. */
 	String getSourceFileName();
 
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IReadableExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IReadableGeneratorExtension.java
similarity index 70%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IReadableExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IReadableGeneratorExtension.java
index b50e2e1b3dc6d3557a3c923765b65b769960a95e..cb46973bf8d1635c9893f15d4c37a60c570b5377 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IReadableExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IReadableGeneratorExtension.java
@@ -13,18 +13,22 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 import org.fortiss.af3.component.model.InputPort;
 
 /**
- * Executable for platform elements that can be read (e.g. sensors and busses). Each method is
- * provided a target variable by the calling code generator, which should be used to write the read
- * value into.
+ * Generator extension for platform elements that can be read (e.g. sensors and busses). Each method
+ * is provided a target variable by the calling code generator, which should be used to write the
+ * read value into. Implementors are also provided a {@code postfix} and a {@code singletonPostfix}
+ * if they also implement {@link IInstanceGeneratorExtension} and
+ * {@link ISingletonGeneratorExtension}, respectively. The code generator also provides the deployed
+ * {@link InputPort} in case an implementor needs additional data from the model (e.g. the type of
+ * the input port).
  * 
  * @author hoelzl
  */
-public interface IReadableExecutable {
+public interface IReadableGeneratorExtension {
 	/** Returns the read code for the given port and target variable. */
 	String getReadCode(String postfix, String singletonPostfix, InputPort logicalSignal,
 			String targetVariable);
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonGeneratorExtension.java
similarity index 76%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonGeneratorExtension.java
index d7a794f50cf4746fa9378ffaa89283130b5273b1..c345a55893508b1707f0fbe3cebae7c761f3277d 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonGeneratorExtension.java
@@ -13,15 +13,16 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 /**
- * Interface for executables, which require singleton support (for variable declarations,,
- * initialization, and termination) .
+ * Interface for generator extensions, which require singleton support (for variable declarations,,
+ * initialization, and termination). Extension sharing the same singleton identifier returned by
+ * {@link #getSingletonIdentifier()} will have their code contributions included only once.
  * 
  * @author hoelzl
  */
-public interface ISingletonExecutable {
+public interface ISingletonGeneratorExtension {
 	/** Returns the singleton identifier. */
 	public abstract String getSingletonIdentifier();
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonInitializationExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonInitializationGeneratorExtension.java
similarity index 63%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonInitializationExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonInitializationGeneratorExtension.java
index 973c7305f5b0c26e03d9294d2b481caada29053c..50394cc39e0937785c093b7042f7b4a89027aa33 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonInitializationExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonInitializationGeneratorExtension.java
@@ -13,20 +13,24 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 /**
- * Interface implemented by platform-specific executables, which require singleton initialization
- * including the definition of static singleton variables in the main program, e.g., every sensor
- * of a certain type shares a single IP connection with the other instances.
+ * Interface implemented by platform-specific generator extensions, which require singleton
+ * initialization including the definition of static singleton variables in the main program, e.g.,
+ * every sensor of a certain type shares a single IP connection with the other instances.
  * <P>
- * In contrast to {@link IInstanceInitializationExecutable}, if there are more than one actuator or
- * sensor with the singleton identifier, the common initialization code is only included once in the
- * generated code and it is included before all other initialization code.
+ * In contrast to {@link IInstanceInitializationGeneratorExtension}, if there are more than one
+ * actuator or sensor with the same singleton identifier, the common initialization code, auxiliary
+ * functions and variable declaration code is only included once in the generated code and it is
+ * included before all other initialization code.
+ * <P>
+ * The code generator provides implementations of this interface with a unique
+ * {@code singletonPostfix}, which is intended to be used when creating variable or function names.
  * 
  * @author hoelzl
  */
-public interface ISingletonInitializationExecutable extends ISingletonExecutable {
+public interface ISingletonInitializationGeneratorExtension extends ISingletonGeneratorExtension {
 	/**
 	 * Returns the code to initialize local variables used by the code. Implementors may use the
 	 * provided {@code singletonPostfix} to create unique variable names.
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonTerminationExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonTerminationGeneratorExtension.java
similarity index 83%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonTerminationExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonTerminationGeneratorExtension.java
index a55e86fc68c083eaa7a81b4d08bafacd72c701b2..5f15352e7343ca551b754f6259dd2324a16b55a8 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/ISingletonTerminationExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/ISingletonTerminationGeneratorExtension.java
@@ -13,19 +13,17 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
-
-import org.fortiss.af3.platform.language.executable.ExecutableBase;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 /**
- * Interface for singleton {@link ExecutableBase}s, which require to be terminated during program
+ * Interface for singleton generator extensions, which require to be terminated during program
  * shutdown. The termination code is only executed once for all executables, which return the same
  * identifier with {@link #getSingletonIdentifier()}. The executable is provided a
  * {@code singletonPostfix} to ensure uniqueness of identifiers.
  * 
  * @author hoelzl
  */
-public interface ISingletonTerminationExecutable extends ISingletonExecutable {
+public interface ISingletonTerminationGeneratorExtension extends ISingletonGeneratorExtension {
 	/** Returns an termination code for the given {@code singletonPostfix}. */
 	String getSingletonTerminationCode(String singletonPostfix);
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IWriteableExecutable.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IWriteableGeneratorExtension.java
similarity index 73%
rename from org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IWriteableExecutable.java
rename to org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IWriteableGeneratorExtension.java
index 43b0b80631fdd6e9f13cdc6fe3e63bbb98c62647..dd4da2e4939a947d9ff343d94bb8e86a7f15439c 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/executable/framework/IWriteableExecutable.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/framework/IWriteableGeneratorExtension.java
@@ -13,16 +13,22 @@
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.framework;
+package org.fortiss.af3.platform.raspberry.generator.framework;
 
 import org.fortiss.af3.component.model.OutputPort;
 
 /**
- * Executable for platform elements that can be written (e.g. actuators and busses).
+ * Executable for platform elements that can be written (e.g. actuators and busses). Each method
+ * is provided a value by the calling code generator, which should be used to obtain the
+ * value to be written. Implementors are also provided a {@code postfix} and a
+ * {@code singletonPostfix} if they also implement {@link IInstanceGeneratorExtension} and
+ * {@link ISingletonGeneratorExtension}, respectively. The code generator also provides the deployed
+ * {@link OutputPort} in case an implementor needs additional data from the model (e.g. the type of
+ * the output port).
  * 
  * @author hoelzl
  */
-public interface IWriteableExecutable {
+public interface IWriteableGeneratorExtension {
 	/** Returns the write code for the given port. */
 	String getWriteCode(String postfix, String singletonPostfix, OutputPort logicalSignal,
 			String value);
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/.ratings
index 5d000c84d5b734331020ca8ac6d3e15f2819716d..477663c91c1359aa946af50f5d109d628460edd4 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/.ratings
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/.ratings
@@ -1,8 +1,8 @@
-CanBusTransformation.java 8b4877996d3f9c1a4ddffd773595e8ea3e6fd3a2 YELLOW
-CanBusTransmissionCatalogTransformation.java 1d1f72d107a59ddaefac42e38cdfa236f688eebc YELLOW
-CanConnectorTransformation.java b149be82c792838b56e3c2741732e69599f25523 YELLOW
-CanConnectorTransmissionCatalogTransformation.java fa822114b375a2efdfa72c9c461099947519418d YELLOW
-ConsoleOutputTransformation.java 28597bfe24ee3c54df8248013ca599f06344790d YELLOW
-PWMActuatorTransformation.java 4bafff7e72aec8a86af540fd4db88c6eafb75341 YELLOW
+CanBusTransformation.java 71a9e46eea3b5bb5665ba0d64e50f2fe4677b3f6 YELLOW
+CanBusTransmissionCatalogTransformation.java fc53810988178d8a0a0656fb4a2b76a3b59ca2e5 YELLOW
+CanConnectorTransformation.java 985398c726b8554da392eefd3ba8c3fe73d09c32 YELLOW
+CanConnectorTransmissionCatalogTransformation.java 9998c14b9695fc9f0cb81a328f0e52dc07077d5b YELLOW
+ConsoleOutputTransformation.java b5034c8e855f20fcc859b6e511c1a447384bfe73 YELLOW
+PWMActuatorTransformation.java 086b3bb4cefd6c5a5e944d0bbacb10164413de72 YELLOW
 RasPiGeneratorTransformationBase.java dc2bd2ae0d0759234dc4ce7621034c888285b0df YELLOW
-RaspberryPITransformation.java 6f12165d10e1e2d3b0f8ac6ffe19603cfcfacd4a YELLOW
+RaspberryPITransformation.java 6ee0154963972c256d42a063853e5d0105035e63 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java
index 8b4877996d3f9c1a4ddffd773595e8ea3e6fd3a2..71a9e46eea3b5bb5665ba0d64e50f2fe4677b3f6 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java
@@ -15,13 +15,13 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.CanBusExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.CanBusGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.CanBus;
 
 /** Transformation for {@link CanBus}. */
 public class CanBusTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public CanBusTransformation() {
-		super(CanBus.class, CanBusExecutable.class);
+		super(CanBus.class, CanBusGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java
index 1d1f72d107a59ddaefac42e38cdfa236f688eebc..fc53810988178d8a0a0656fb4a2b76a3b59ca2e5 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java
@@ -18,7 +18,7 @@ package org.fortiss.af3.platform.raspberry.generator.transform;
 import org.fortiss.af3.deployment.generator.DeploymentTransformationContext;
 import org.fortiss.af3.deployment.generator.TransmissionCatalog;
 import org.fortiss.af3.platform.model.generic.GenericTransmissionUnit;
-import org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog;
+import org.fortiss.af3.platform.raspberry.generator.extension.CanTransmissionCatalog;
 import org.fortiss.af3.platform.raspberry.model.CanBus;
 import org.fortiss.tooling.kernel.extension.ITransformationProvider;
 import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java
index b149be82c792838b56e3c2741732e69599f25523..985398c726b8554da392eefd3ba8c3fe73d09c32 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java
@@ -15,13 +15,13 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.CanConnectorExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.CanConnectorGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.CanConnector;
 
 /** Transformation for {@link CanConnector}. */
 public class CanConnectorTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public CanConnectorTransformation() {
-		super(CanConnector.class, CanConnectorExecutable.class);
+		super(CanConnector.class, CanConnectorGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java
index fa822114b375a2efdfa72c9c461099947519418d..9998c14b9695fc9f0cb81a328f0e52dc07077d5b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java
@@ -17,7 +17,7 @@ package org.fortiss.af3.platform.raspberry.generator.transform;
 
 import org.fortiss.af3.deployment.generator.TransmissionCatalog;
 import org.fortiss.af3.platform.model.generic.GenericTransceiver;
-import org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog;
+import org.fortiss.af3.platform.raspberry.generator.extension.CanTransmissionCatalog;
 import org.fortiss.af3.platform.raspberry.model.CanConnector;
 import org.fortiss.tooling.kernel.extension.ITransformationProvider;
 import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/ConsoleOutputTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/ConsoleOutputTransformation.java
index 28597bfe24ee3c54df8248013ca599f06344790d..b5034c8e855f20fcc859b6e511c1a447384bfe73 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/ConsoleOutputTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/ConsoleOutputTransformation.java
@@ -15,13 +15,13 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.ConsoleOutputExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.ConsoleOutputGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.ConsoleOutput;
 
 /** Transformation for {@link ConsoleOutput}. */
 public class ConsoleOutputTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ConsoleOutputTransformation() {
-		super(ConsoleOutput.class, ConsoleOutputExecutable.class);
+		super(ConsoleOutput.class, ConsoleOutputGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java
index 4bafff7e72aec8a86af540fd4db88c6eafb75341..086b3bb4cefd6c5a5e944d0bbacb10164413de72 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java
@@ -15,13 +15,13 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.PWMActuatorExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.PWMActuatorGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.ActuatorPWM;
 
 /** Transformation for {@link ActuatorPWM}. */
 public class PWMActuatorTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public PWMActuatorTransformation() {
-		super(ActuatorPWM.class, PWMActuatorExecutable.class);
+		super(ActuatorPWM.class, PWMActuatorGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java
index 6f12165d10e1e2d3b0f8ac6ffe19603cfcfacd4a..6ee0154963972c256d42a063853e5d0105035e63 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java
@@ -15,13 +15,13 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.RaspberryPIExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.RaspberryPIGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
 
-/** Transformation from {@link RaspberryPi} to {@link RaspberryPIExecutable}. */
+/** Transformation from {@link RaspberryPi} to {@link RaspberryPIGeneratorExtension}. */
 public class RaspberryPITransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public RaspberryPITransformation() {
-		super(RaspberryPi.class, RaspberryPIExecutable.class);
+		super(RaspberryPi.class, RaspberryPIGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/.ratings
index dd1bd62e8df8c0be7bd8288403b7a892532c5024..beb82b2eccf4d4c777b2682b659eae694aa86f63 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/.ratings
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/.ratings
@@ -1,2 +1,2 @@
-LaserRangeTransformation.java c5d874667a38c93cd1ddf393107f93295b1d990d YELLOW
-UltraSonicTransformation.java af21e82f75ca2708478b75f47acfc83e7a73b81b YELLOW
+LaserRangeTransformation.java 270d75e0bbdea4e7e917b10455d5b71210667e82 YELLOW
+UltraSonicTransformation.java d278ee2d489f467f0df2cd25895afaee879035d0 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/LaserRangeTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/LaserRangeTransformation.java
index c5d874667a38c93cd1ddf393107f93295b1d990d..270d75e0bbdea4e7e917b10455d5b71210667e82 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/LaserRangeTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/LaserRangeTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.brick;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.brick.LaserRangeSensorExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.brick.LaserRangeSensorGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.brick.LaserRangeSensor;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.brick.LaserRangeSensor;
 public class LaserRangeTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public LaserRangeTransformation() {
-		super(LaserRangeSensor.class, LaserRangeSensorExecutable.class);
+		super(LaserRangeSensor.class, LaserRangeSensorGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/UltraSonicTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/UltraSonicTransformation.java
index af21e82f75ca2708478b75f47acfc83e7a73b81b..d278ee2d489f467f0df2cd25895afaee879035d0 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/UltraSonicTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/brick/UltraSonicTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.brick;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.brick.UltraSonicSensorExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.brick.UltraSonicSensorGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.brick.UltraSonicSensor;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.brick.UltraSonicSensor;
 public class UltraSonicTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public UltraSonicTransformation() {
-		super(UltraSonicSensor.class, UltraSonicSensorExecutable.class);
+		super(UltraSonicSensor.class, UltraSonicSensorGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/.ratings
index 794ca00107ca575fac7a578141e6f9eb2edde906..164594930ebe9b1624a772290168614eb9d9ca59 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/.ratings
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/.ratings
@@ -1,12 +1,12 @@
-Button1Transformation.java 5a01d8c5fbbae51354ba35973bfb37547bd28195 YELLOW
-Button2Transformation.java 237638a2dba39f29b1d9723c95afa50662dbb149 YELLOW
-Button3Transformation.java 4d84dea64e9008503868880398d4d42f27fd0c20 YELLOW
-Button4Transformation.java ac9eaae7e7285be57ac215e3700e950e499e5d0b YELLOW
-ButtonL1Transformation.java 79e6b994b53d6df5d6e98b6994e1d69a21408773 YELLOW
-ButtonL2Transformation.java 4d78ed819b645da4b27ed53595052482bf808a75 YELLOW
-ButtonR1Transformation.java 9fc95d20d1a9fd6f1789c2ab0ef4928cbb2620f7 YELLOW
-ButtonR2Transformation.java e9a432d95f76139ccc49fbb2ab526e4ab1d244eb YELLOW
-Left_StickXTransformation.java 966856dea8303ad0ae46df60a5c94ae491b2afc2 YELLOW
-Left_StickYTransformation.java 446a5c66b41c888c6bbb60b1931bbdb5a73b1622 YELLOW
-Right_StickXTransformation.java 3771d8376a0282d94a0a5d303f3bb256c1615103 YELLOW
-Right_StickYTransformation.java 8c92c0be940cb0dc1eb4e8f5909267682cb71d32 YELLOW
+Button1Transformation.java 4bf34cc802aa305cc8528a70ca64258ea3ae2024 YELLOW
+Button2Transformation.java 11174f097aba81099fcb0c7560ed9243c67c4833 YELLOW
+Button3Transformation.java b7b482ff74c17126e96f0f02b555527dfdeddb7f YELLOW
+Button4Transformation.java 8d1232c54a3b15553fcd25a5b103f4890ff95288 YELLOW
+ButtonL1Transformation.java 49aa56328b9384496389ede2169d59c1d84e8ba6 YELLOW
+ButtonL2Transformation.java acb8d2381c36d862770d3b4b01d1a2a718500243 YELLOW
+ButtonR1Transformation.java 27228272aae2910f50c61bf1fd83be71e94064ef YELLOW
+ButtonR2Transformation.java bd53109412aa6ce1bb99add99f91aa5b3cf82fb5 YELLOW
+Left_StickXTransformation.java 681d4b363afce8ddb46e5ec2b74434d0f44ed6ee YELLOW
+Left_StickYTransformation.java 2509be64519eade7910fb2140d7fded38ac75913 YELLOW
+Right_StickXTransformation.java e262c435750977acee193f6d59fe837cc9a02b89 YELLOW
+Right_StickYTransformation.java 5dcdf6affbed6c7c5de736fd47a9a5124d732587 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java
index 5a01d8c5fbbae51354ba35973bfb37547bd28195..4bf34cc802aa305cc8528a70ca64258ea3ae2024 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button1Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button1GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
 public class Button1Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Button1Transformation() {
-		super(Button1.class, Button1Executable.class);
+		super(Button1.class, Button1GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java
index 237638a2dba39f29b1d9723c95afa50662dbb149..11174f097aba81099fcb0c7560ed9243c67c4833 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button2Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button2GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
 public class Button2Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Button2Transformation() {
-		super(Button2.class, Button2Executable.class);
+		super(Button2.class, Button2GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java
index 4d84dea64e9008503868880398d4d42f27fd0c20..b7b482ff74c17126e96f0f02b555527dfdeddb7f 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button3Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button3GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
 public class Button3Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Button3Transformation() {
-		super(Button3.class, Button3Executable.class);
+		super(Button3.class, Button3GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java
index ac9eaae7e7285be57ac215e3700e950e499e5d0b..8d1232c54a3b15553fcd25a5b103f4890ff95288 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button4Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Button4GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
 public class Button4Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Button4Transformation() {
-		super(Button4.class, Button4Executable.class);
+		super(Button4.class, Button4GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java
index 79e6b994b53d6df5d6e98b6994e1d69a21408773..49aa56328b9384496389ede2169d59c1d84e8ba6 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL1Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonL1GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
 public class ButtonL1Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonL1Transformation() {
-		super(ButtonL1.class, ButtonL1Executable.class);
+		super(ButtonL1.class, ButtonL1GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java
index 4d78ed819b645da4b27ed53595052482bf808a75..acb8d2381c36d862770d3b4b01d1a2a718500243 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL2Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonL2GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
 public class ButtonL2Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonL2Transformation() {
-		super(ButtonL2.class, ButtonL2Executable.class);
+		super(ButtonL2.class, ButtonL2GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java
index 9fc95d20d1a9fd6f1789c2ab0ef4928cbb2620f7..27228272aae2910f50c61bf1fd83be71e94064ef 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR1Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonR1GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
 public class ButtonR1Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonR1Transformation() {
-		super(ButtonR1.class, ButtonR1Executable.class);
+		super(ButtonR1.class, ButtonR1GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java
index e9a432d95f76139ccc49fbb2ab526e4ab1d244eb..bd53109412aa6ce1bb99add99f91aa5b3cf82fb5 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.ButtonR2GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2;
 public class ButtonR2Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonR2Transformation() {
-		super(ButtonR2.class, ButtonR2Executable.class);
+		super(ButtonR2.class, ButtonR2GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java
index 966856dea8303ad0ae46df60a5c94ae491b2afc2..681d4b363afce8ddb46e5ec2b74434d0f44ed6ee 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickXExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Left_StickXGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
 public class Left_StickXTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Left_StickXTransformation() {
-		super(Left_StickX_Position.class, Left_StickXExecutable.class);
+		super(Left_StickX_Position.class, Left_StickXGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java
index 446a5c66b41c888c6bbb60b1931bbdb5a73b1622..2509be64519eade7910fb2140d7fded38ac75913 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickYExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Left_StickYGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
 public class Left_StickYTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Left_StickYTransformation() {
-		super(Left_StickY_Position.class, Left_StickYExecutable.class);
+		super(Left_StickY_Position.class, Left_StickYGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java
index 3771d8376a0282d94a0a5d303f3bb256c1615103..e262c435750977acee193f6d59fe837cc9a02b89 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickXExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Right_StickXGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
 public class Right_StickXTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Right_StickXTransformation() {
-		super(Right_StickX_Position.class, Right_StickXExecutable.class);
+		super(Right_StickX_Position.class, Right_StickXGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java
index 8c92c0be940cb0dc1eb4e8f5909267682cb71d32..5dcdf6affbed6c7c5de736fd47a9a5124d732587 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickYExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.gamepad.Right_StickYGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
 public class Right_StickYTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Right_StickYTransformation() {
-		super(Right_StickY_Position.class, Right_StickYExecutable.class);
+		super(Right_StickY_Position.class, Right_StickYGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/.ratings
index 8656eaabd333a12fd2f0d6f25abc713e875675f2..1ac22cdf53e70401f953be26de9577801c0ba749 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/.ratings
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/.ratings
@@ -1,2 +1,2 @@
-MotorControlInputTransformation.java 402a82dd3c96b48fa6f725ff4ecf8c39d25eda78 YELLOW
-MotorControlOutputTransformation.java 9b2294adc6db155535491b7d2e57fae6c8fe0b59 YELLOW
+MotorControlInputTransformation.java 3a0e2206c2c138f9d55cd6bae56e400ce753094c YELLOW
+MotorControlOutputTransformation.java 6d53340db380f0fe0578e1dfd9f9dc84da57c433 YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlInputTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlInputTransformation.java
index 402a82dd3c96b48fa6f725ff4ecf8c39d25eda78..3a0e2206c2c138f9d55cd6bae56e400ce753094c 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlInputTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlInputTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.motorcontrol;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.motorcontrol.MotorControlInputExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.motorcontrol.MotorControlInputGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlInput;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlInput;
 public class MotorControlInputTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public MotorControlInputTransformation() {
-		super(MotorControlInput.class, MotorControlInputExecutable.class);
+		super(MotorControlInput.class, MotorControlInputGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlOutputTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlOutputTransformation.java
index 9b2294adc6db155535491b7d2e57fae6c8fe0b59..6d53340db380f0fe0578e1dfd9f9dc84da57c433 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlOutputTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/motorcontrol/MotorControlOutputTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.motorcontrol;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.motorcontrol.MotorControlOutputExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.motorcontrol.MotorControlOutputGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlOutput;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.motorcontrol.MotorControlOutput;
 public class MotorControlOutputTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public MotorControlOutputTransformation() {
-		super(MotorControlOutput.class, MotorControlOutputExecutable.class);
+		super(MotorControlOutput.class, MotorControlOutputGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/.ratings b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/.ratings
index 96b12e399205152348b7e3abc3b989582cc2e2cb..0eefd9641539ce2683681785c41e5746ac3df358 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/.ratings
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/.ratings
@@ -1,22 +1,22 @@
-ButtonATransformation.java 963e50adcb12efe62f963c7cb8f132e138c05ea9 YELLOW
-ButtonBTransformation.java aee78d188ca3b856275aaa40f5cd78db039c6fa1 YELLOW
-ButtonHomeTransformation.java c634e9b06fb3f29d936400041394c2704f32f8f8 YELLOW
-ButtonL1Transformation.java 7af479fa30c573914309b38edbf4616dd3049e36 YELLOW
-ButtonL3Transformation.java 437d090d772090f2f6a7bb069bc5da3271306408 YELLOW
-ButtonR1Transformation.java 1033cb0821ffc62c538dd6199060755b4424e51e YELLOW
-ButtonR3Transformation.java 3d02b1b66ddc1bc8acefe3ee04cb84f6bc629681 YELLOW
-ButtonSelectTransformation.java 544e2ee5fe0a87babb7379a218817981da7a4b4e YELLOW
-ButtonStartTransformation.java 8477f58d8d4d3356f05bb8da480027f13b08eee7 YELLOW
-ButtonXTransformation.java 8aaf042122e3a87c107e9053ee5fda3ae5fe17f5 YELLOW
-ButtonYTransformation.java cdf5df332e249fa0252c92075634418aad4491c8 YELLOW
-DPadDownTransformation.java f81e4b08f604a4ceabe214ee6d6fc5904f175a75 YELLOW
-DPadLeftTransformation.java a765c40683a8b7210872998da32e01ae010acdbc YELLOW
-DPadRightTransformation.java 1c33fb0015a227799a5ea71d06e4e461eb87806b YELLOW
-DPadUpTransformation.java c0221dc99a34e260c286a6aede9bf0d68a33e409 YELLOW
-L2PositionTransformation.java 1fb4c5410c2ae50b857650948a6a1159fba41c59 YELLOW
-Left_StickXTransformation.java 0117361fa7de0d23cf6b4c7846e13c7c82d533a8 YELLOW
-Left_StickYTransformation.java 9812322d1817defbb3d91fe02df66c8f974ff587 YELLOW
-R2PositionTransformation.java 70d43df83231d10214120a6ef103e48a6aa60ed4 YELLOW
-Right_StickXTransformation.java f18a0a3cfc6fe629acb5a3e8ed7c24812e979b3b YELLOW
-Right_StickYTransformation.java faaca4195827e73af76e34f3eb361194e3156ab2 YELLOW
-SimpleRumbleFeatureTransformation.java 975d06c9a606db824f8e53291ef2bcac64afaecf YELLOW
+ButtonATransformation.java adc2439282b624ca2ed9fc51447c07cfe6e96102 YELLOW
+ButtonBTransformation.java 5c76f17efa7a19f2ebe31ebb7013e74a092e0b08 YELLOW
+ButtonHomeTransformation.java d9af8afead546eab287804f28503a5e6e89316fb YELLOW
+ButtonL1Transformation.java 457fc051c0fac3a31a8a1142200f1e1c2902df38 YELLOW
+ButtonL3Transformation.java 2d804e26a7771043c207a9fde1932abd437655ec YELLOW
+ButtonR1Transformation.java 8946eaf6b94c4414f62751ebf75df16a627e0b30 YELLOW
+ButtonR3Transformation.java 863294c3297231697a581c50bc2cbc0b5f5ee463 YELLOW
+ButtonSelectTransformation.java 69c2209551b43432df212db56edab02949c853bd YELLOW
+ButtonStartTransformation.java d61eaf2296a2b6fe9aaf59df35c68aa31c2956d2 YELLOW
+ButtonXTransformation.java 30a017b0d28a14b3a1ca406326c71f5658d6d19b YELLOW
+ButtonYTransformation.java 3c79d9ab0597b29ac146dcdd98c125bb8035e248 YELLOW
+DPadDownTransformation.java 46cd4aecc53c6fad09b62b692817b5469b8f5ac1 YELLOW
+DPadLeftTransformation.java f9a75eb3eb39491a7e689478665d8890dc173874 YELLOW
+DPadRightTransformation.java a9151df46b18c457d4baafe439ad991466e5bae7 YELLOW
+DPadUpTransformation.java c1d457828b014ced6a3f62ce42b060bcdfd4b01e YELLOW
+L2PositionTransformation.java 16cb88a0c85f74777c0589d3bf8a9aa737992315 YELLOW
+Left_StickXTransformation.java 2c89d8a86fb30e8ff3275308dc4745774a402d39 YELLOW
+Left_StickYTransformation.java 36d311144bdb182c3b9bb4d38302061780151fb2 YELLOW
+R2PositionTransformation.java 4b461a7a1b9e7b99feca6bbfe8d359acbcc272a6 YELLOW
+Right_StickXTransformation.java bd6869636e6039231d67e233cf31e9ba5e997b95 YELLOW
+Right_StickYTransformation.java 7c14762e77f6dbecf633bf72d47f40a779874281 YELLOW
+SimpleRumbleFeatureTransformation.java 9af88589741e49b8b5fac53f2d06757ecbb3272d YELLOW
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonATransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonATransformation.java
index 963e50adcb12efe62f963c7cb8f132e138c05ea9..adc2439282b624ca2ed9fc51447c07cfe6e96102 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonATransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonATransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonAExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonAGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonA;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonA;
 public class ButtonATransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonATransformation() {
-		super(ButtonA.class, ButtonAExecutable.class);
+		super(ButtonA.class, ButtonAGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonBTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonBTransformation.java
index aee78d188ca3b856275aaa40f5cd78db039c6fa1..5c76f17efa7a19f2ebe31ebb7013e74a092e0b08 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonBTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonBTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonBExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonBGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonB;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonB;
 public class ButtonBTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonBTransformation() {
-		super(ButtonB.class, ButtonBExecutable.class);
+		super(ButtonB.class, ButtonBGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonHomeTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonHomeTransformation.java
index c634e9b06fb3f29d936400041394c2704f32f8f8..d9af8afead546eab287804f28503a5e6e89316fb 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonHomeTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonHomeTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonHomeExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonHomeGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonHome;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonHome;
 public class ButtonHomeTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonHomeTransformation() {
-		super(ButtonHome.class, ButtonHomeExecutable.class);
+		super(ButtonHome.class, ButtonHomeGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL1Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL1Transformation.java
index 7af479fa30c573914309b38edbf4616dd3049e36..457fc051c0fac3a31a8a1142200f1e1c2902df38 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL1Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL1Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonL1Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonL1GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1;
 public class ButtonL1Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonL1Transformation() {
-		super(ButtonL1.class, ButtonL1Executable.class);
+		super(ButtonL1.class, ButtonL1GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL3Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL3Transformation.java
index 437d090d772090f2f6a7bb069bc5da3271306408..2d804e26a7771043c207a9fde1932abd437655ec 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL3Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonL3Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonL3Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonL3GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL3;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL3;
 public class ButtonL3Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonL3Transformation() {
-		super(ButtonL3.class, ButtonL3Executable.class);
+		super(ButtonL3.class, ButtonL3GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR1Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR1Transformation.java
index 1033cb0821ffc62c538dd6199060755b4424e51e..8946eaf6b94c4414f62751ebf75df16a627e0b30 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR1Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR1Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonR1Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonR1GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1;
 public class ButtonR1Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonR1Transformation() {
-		super(ButtonR1.class, ButtonR1Executable.class);
+		super(ButtonR1.class, ButtonR1GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR3Transformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR3Transformation.java
index 3d02b1b66ddc1bc8acefe3ee04cb84f6bc629681..863294c3297231697a581c50bc2cbc0b5f5ee463 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR3Transformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonR3Transformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonR3Executable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonR3GeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR3;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR3;
 public class ButtonR3Transformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonR3Transformation() {
-		super(ButtonR3.class, ButtonR3Executable.class);
+		super(ButtonR3.class, ButtonR3GeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonSelectTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonSelectTransformation.java
index 544e2ee5fe0a87babb7379a218817981da7a4b4e..69c2209551b43432df212db56edab02949c853bd 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonSelectTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonSelectTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonSelectExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonSelectGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonSelect;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonSelect;
 public class ButtonSelectTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonSelectTransformation() {
-		super(ButtonSelect.class, ButtonSelectExecutable.class);
+		super(ButtonSelect.class, ButtonSelectGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonStartTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonStartTransformation.java
index 8477f58d8d4d3356f05bb8da480027f13b08eee7..d61eaf2296a2b6fe9aaf59df35c68aa31c2956d2 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonStartTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonStartTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonStartExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonStartGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonStart;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonStart;
 public class ButtonStartTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonStartTransformation() {
-		super(ButtonStart.class, ButtonStartExecutable.class);
+		super(ButtonStart.class, ButtonStartGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonXTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonXTransformation.java
index 8aaf042122e3a87c107e9053ee5fda3ae5fe17f5..30a017b0d28a14b3a1ca406326c71f5658d6d19b 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonXTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonXTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonXExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonXGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonX;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonX;
 public class ButtonXTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonXTransformation() {
-		super(ButtonX.class, ButtonXExecutable.class);
+		super(ButtonX.class, ButtonXGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonYTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonYTransformation.java
index cdf5df332e249fa0252c92075634418aad4491c8..3c79d9ab0597b29ac146dcdd98c125bb8035e248 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonYTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/ButtonYTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.ButtonYExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.ButtonYGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonY;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonY;
 public class ButtonYTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public ButtonYTransformation() {
-		super(ButtonY.class, ButtonYExecutable.class);
+		super(ButtonY.class, ButtonYGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadDownTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadDownTransformation.java
index f81e4b08f604a4ceabe214ee6d6fc5904f175a75..46cd4aecc53c6fad09b62b692817b5469b8f5ac1 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadDownTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadDownTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadDownExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadDownGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadDown;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadDown;
 public class DPadDownTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public DPadDownTransformation() {
-		super(DPadDown.class, DPadDownExecutable.class);
+		super(DPadDown.class, DPadDownGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadLeftTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadLeftTransformation.java
index a765c40683a8b7210872998da32e01ae010acdbc..f9a75eb3eb39491a7e689478665d8890dc173874 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadLeftTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadLeftTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadLeftExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadLeftGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadLeft;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadLeft;
 public class DPadLeftTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public DPadLeftTransformation() {
-		super(DPadLeft.class, DPadLeftExecutable.class);
+		super(DPadLeft.class, DPadLeftGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadRightTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadRightTransformation.java
index 1c33fb0015a227799a5ea71d06e4e461eb87806b..a9151df46b18c457d4baafe439ad991466e5bae7 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadRightTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadRightTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadRightExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadRightGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadRight;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadRight;
 public class DPadRightTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public DPadRightTransformation() {
-		super(DPadRight.class, DPadRightExecutable.class);
+		super(DPadRight.class, DPadRightGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadUpTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadUpTransformation.java
index c0221dc99a34e260c286a6aede9bf0d68a33e409..c1d457828b014ced6a3f62ce42b060bcdfd4b01e 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadUpTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/DPadUpTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.DPadUpExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.DPadUpGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadUp;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadUp;
 public class DPadUpTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public DPadUpTransformation() {
-		super(DPadUp.class, DPadUpExecutable.class);
+		super(DPadUp.class, DPadUpGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/L2PositionTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/L2PositionTransformation.java
index 1fb4c5410c2ae50b857650948a6a1159fba41c59..16cb88a0c85f74777c0589d3bf8a9aa737992315 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/L2PositionTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/L2PositionTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.L2PositionExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.L2PositionGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.L2_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.L2_Position;
 public class L2PositionTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public L2PositionTransformation() {
-		super(L2_Position.class, L2PositionExecutable.class);
+		super(L2_Position.class, L2PositionGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickXTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickXTransformation.java
index 0117361fa7de0d23cf6b4c7846e13c7c82d533a8..2c89d8a86fb30e8ff3275308dc4745774a402d39 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickXTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickXTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Left_StickXExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Left_StickXGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position;
 public class Left_StickXTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Left_StickXTransformation() {
-		super(Left_StickX_Position.class, Left_StickXExecutable.class);
+		super(Left_StickX_Position.class, Left_StickXGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickYTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickYTransformation.java
index 9812322d1817defbb3d91fe02df66c8f974ff587..36d311144bdb182c3b9bb4d38302061780151fb2 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickYTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Left_StickYTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Left_StickYExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Left_StickYGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position;
 public class Left_StickYTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Left_StickYTransformation() {
-		super(Left_StickY_Position.class, Left_StickYExecutable.class);
+		super(Left_StickY_Position.class, Left_StickYGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/R2PositionTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/R2PositionTransformation.java
index 70d43df83231d10214120a6ef103e48a6aa60ed4..4b461a7a1b9e7b99feca6bbfe8d359acbcc272a6 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/R2PositionTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/R2PositionTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.R2PositionExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.R2PositionGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.R2_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.R2_Position;
 public class R2PositionTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public R2PositionTransformation() {
-		super(R2_Position.class, R2PositionExecutable.class);
+		super(R2_Position.class, R2PositionGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickXTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickXTransformation.java
index f18a0a3cfc6fe629acb5a3e8ed7c24812e979b3b..bd6869636e6039231d67e233cf31e9ba5e997b95 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickXTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickXTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Right_StickXExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Right_StickXGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position;
 public class Right_StickXTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Right_StickXTransformation() {
-		super(Right_StickX_Position.class, Right_StickXExecutable.class);
+		super(Right_StickX_Position.class, Right_StickXGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickYTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickYTransformation.java
index faaca4195827e73af76e34f3eb361194e3156ab2..7c14762e77f6dbecf633bf72d47f40a779874281 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickYTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/Right_StickYTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.Right_StickYExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.Right_StickYGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position;
 public class Right_StickYTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public Right_StickYTransformation() {
-		super(Right_StickY_Position.class, Right_StickYExecutable.class);
+		super(Right_StickY_Position.class, Right_StickYGeneratorExtension.class);
 	}
 }
diff --git a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/SimpleRumbleFeatureTransformation.java b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/SimpleRumbleFeatureTransformation.java
index 975d06c9a606db824f8e53291ef2bcac64afaecf..9af88589741e49b8b5fac53f2d06757ecbb3272d 100644
--- a/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/SimpleRumbleFeatureTransformation.java
+++ b/org.fortiss.af3.platform.raspberry/src/org/fortiss/af3/platform/raspberry/generator/transform/rumblepad/SimpleRumbleFeatureTransformation.java
@@ -15,7 +15,7 @@
 +--------------------------------------------------------------------------*/
 package org.fortiss.af3.platform.raspberry.generator.transform.rumblepad;
 
-import org.fortiss.af3.platform.raspberry.generator.executable.rumblepad.SimpleRumbleFeatureExecutable;
+import org.fortiss.af3.platform.raspberry.generator.extension.rumblepad.SimpleRumbleFeatureGeneratorExtension;
 import org.fortiss.af3.platform.raspberry.generator.transform.RasPiGeneratorTransformationBase;
 import org.fortiss.af3.platform.raspberry.model.rumblepad.SimpleRumbleFeature;
 
@@ -23,6 +23,6 @@ import org.fortiss.af3.platform.raspberry.model.rumblepad.SimpleRumbleFeature;
 public class SimpleRumbleFeatureTransformation extends RasPiGeneratorTransformationBase {
 	/** Constructor. */
 	public SimpleRumbleFeatureTransformation() {
-		super(SimpleRumbleFeature.class, SimpleRumbleFeatureExecutable.class);
+		super(SimpleRumbleFeature.class, SimpleRumbleFeatureGeneratorExtension.class);
 	}
 }