diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Actuator.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Actuator.java
new file mode 100644
index 0000000000000000000000000000000000000000..198046e45acb3aa350c8c2c531c810eddd647bfb
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Actuator.java
@@ -0,0 +1,22 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IPlatformIOResource;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.Transmitter;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Actuator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getActuator()
+ * @model
+ * @generated
+ */
+public interface Actuator extends Transmitter, IBoardPlatformArchitectureElement, ICommunicationMaster, IBoardDomain, IPlatformPort, IPlatformIOResource {
+} // Actuator
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ActuatorOut.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ActuatorOut.java
new file mode 100644
index 0000000000000000000000000000000000000000..fb59d4d3f7ad266203bf71b8bad84fbff2da42d3
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ActuatorOut.java
@@ -0,0 +1,22 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformIOResource;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.Transmitter;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Actuator Out</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getActuatorOut()
+ * @model
+ * @generated
+ */
+public interface ActuatorOut extends Transmitter, IIpCorePlatformArchitectureElement, ICommunicationMaster, IProcessorDomain, IPlatformPort, IPlatformIOResource {
+} // ActuatorOut
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Bus.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Bus.java
new file mode 100644
index 0000000000000000000000000000000000000000..0ccae99ff8ea592fdf528a915bee6829addc371d
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Bus.java
@@ -0,0 +1,19 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+import org.fortiss.af3.platform.model.TransmissionUnit;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bus</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getBus()
+ * @model
+ * @generated
+ */
+public interface Bus extends TransmissionUnit, IIpCorePlatformArchitectureElement, IProcessorDomain {
+} // Bus
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/BusMasterInterface.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/BusMasterInterface.java
new file mode 100644
index 0000000000000000000000000000000000000000..0ac98be1deca30a5bf7d7ea19c66a4d1114184f7
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/BusMasterInterface.java
@@ -0,0 +1,21 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformInterface;
+import org.fortiss.af3.platform.model.Transceiver;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bus Master Interface</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getBusMasterInterface()
+ * @model
+ * @generated
+ */
+public interface BusMasterInterface extends Transceiver, IIpCorePlatformArchitectureElement, IPlatformInterface, ICommunicationMaster, IProcessorDomain {
+} // BusMasterInterface
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/BusMasterPort.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/BusMasterPort.java
new file mode 100644
index 0000000000000000000000000000000000000000..ff15298937e9f0f0a2e86fd320f0dc3f94ca553d
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/BusMasterPort.java
@@ -0,0 +1,21 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.Transceiver;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bus Master Port</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getBusMasterPort()
+ * @model
+ * @generated
+ */
+public interface BusMasterPort extends Transceiver, IIpCorePlatformArchitectureElement, IPlatformPort, ICommunicationMaster, IProcessorDomain {
+} // BusMasterPort
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBus.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBus.java
new file mode 100644
index 0000000000000000000000000000000000000000..a20cd83e599c28e4273f031d6e8ba8196fbb2057
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBus.java
@@ -0,0 +1,19 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.TransmissionUnit;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CAN Bus</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getCANBus()
+ * @model
+ * @generated
+ */
+public interface CANBus extends TransmissionUnit, IBoardPlatformArchitectureElement, IBoardDomain {
+} // CANBus
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBusMasterInterface.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBusMasterInterface.java
new file mode 100644
index 0000000000000000000000000000000000000000..659427d229d2bdfacfda74a2d37275859cbc7d66
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBusMasterInterface.java
@@ -0,0 +1,21 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IPlatformInterface;
+import org.fortiss.af3.platform.model.Transceiver;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CAN Bus Master Interface</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getCANBusMasterInterface()
+ * @model
+ * @generated
+ */
+public interface CANBusMasterInterface extends Transceiver, IBoardPlatformArchitectureElement, IPlatformInterface, ICommunicationMaster, IBoardDomain {
+} // CANBusMasterInterface
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBusMasterPort.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBusMasterPort.java
new file mode 100644
index 0000000000000000000000000000000000000000..07bcd104f92c44c72569bfb01d87296b6d7dfb3b
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/CANBusMasterPort.java
@@ -0,0 +1,21 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.Transceiver;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CAN Bus Master Port</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getCANBusMasterPort()
+ * @model
+ * @generated
+ */
+public interface CANBusMasterPort extends Transceiver, IBoardPlatformArchitectureElement, IPlatformPort, ICommunicationMaster, IBoardDomain {
+} // CANBusMasterPort
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Core.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Core.java
new file mode 100644
index 0000000000000000000000000000000000000000..a24a483a7ad1c2cc84bf701871ea1869a048cb59
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Core.java
@@ -0,0 +1,20 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.ExecutionUnit;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Core</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getCore()
+ * @model
+ * @generated
+ */
+public interface Core extends ExecutionUnit, ICommunicationMaster, IIpCorePlatformArchitectureElement, IProcessorDomain {
+} // Core
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/IBoardDomain.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/IBoardDomain.java
new file mode 100644
index 0000000000000000000000000000000000000000..d0c12d0e54b65066c10f8c27913818c2a32e92a4
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/IBoardDomain.java
@@ -0,0 +1,30 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IArchitectureDomain;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IBoard Domain</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getIBoardDomain()
+ * @model
+ * @generated
+ */
+public interface IBoardDomain extends IArchitectureDomain {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * Returns the architecture domain's name.
+	 * <!-- end-model-doc -->
+	 * @model kind="operation" required="true"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"Board\";'"
+	 * @generated
+	 */
+	String getArchitectureDomainName();
+
+} // IBoardDomain
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/IProcessorDomain.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/IProcessorDomain.java
new file mode 100644
index 0000000000000000000000000000000000000000..10399d1694fc0592eee1387bbc71b078c0b2575a
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/IProcessorDomain.java
@@ -0,0 +1,30 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IArchitectureDomain;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IProcessor Domain</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getIProcessorDomain()
+ * @model
+ * @generated
+ */
+public interface IProcessorDomain extends IArchitectureDomain {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * Returns the architecture domain's name.
+	 * <!-- end-model-doc -->
+	 * @model kind="operation" required="true"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel body='return \"Processor\";'"
+	 * @generated
+	 */
+	String getArchitectureDomainName();
+
+} // IProcessorDomain
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ModelFactory.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ModelFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..9a3e115be17e98a96bd38361dd229b58fec27266
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ModelFactory.java
@@ -0,0 +1,177 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage
+ * @generated
+ */
+public interface ModelFactory extends EFactory {
+	/**
+	 * The singleton instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	ModelFactory eINSTANCE = org.fortiss.af3.platform.raspberry.model.impl.ModelFactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>CAN Bus</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CAN Bus</em>'.
+	 * @generated
+	 */
+	CANBus createCANBus();
+
+	/**
+	 * Returns a new object of class '<em>IProcessor Domain</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IProcessor Domain</em>'.
+	 * @generated
+	 */
+	IProcessorDomain createIProcessorDomain();
+
+	/**
+	 * Returns a new object of class '<em>IBoard Domain</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IBoard Domain</em>'.
+	 * @generated
+	 */
+	IBoardDomain createIBoardDomain();
+
+	/**
+	 * Returns a new object of class '<em>Raspberry Pi1</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Raspberry Pi1</em>'.
+	 * @generated
+	 */
+	RaspberryPi1 createRaspberryPi1();
+
+	/**
+	 * Returns a new object of class '<em>Raspberry Pi2</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Raspberry Pi2</em>'.
+	 * @generated
+	 */
+	RaspberryPi2 createRaspberryPi2();
+
+	/**
+	 * Returns a new object of class '<em>Raspberry Pi3</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Raspberry Pi3</em>'.
+	 * @generated
+	 */
+	RaspberryPi3 createRaspberryPi3();
+
+	/**
+	 * Returns a new object of class '<em>Core</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Core</em>'.
+	 * @generated
+	 */
+	Core createCore();
+
+	/**
+	 * Returns a new object of class '<em>Bus</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Bus</em>'.
+	 * @generated
+	 */
+	Bus createBus();
+
+	/**
+	 * Returns a new object of class '<em>Sensor</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Sensor</em>'.
+	 * @generated
+	 */
+	Sensor createSensor();
+
+	/**
+	 * Returns a new object of class '<em>Actuator</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Actuator</em>'.
+	 * @generated
+	 */
+	Actuator createActuator();
+
+	/**
+	 * Returns a new object of class '<em>Sensor In</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Sensor In</em>'.
+	 * @generated
+	 */
+	SensorIn createSensorIn();
+
+	/**
+	 * Returns a new object of class '<em>Actuator Out</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Actuator Out</em>'.
+	 * @generated
+	 */
+	ActuatorOut createActuatorOut();
+
+	/**
+	 * Returns a new object of class '<em>Bus Master Interface</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Bus Master Interface</em>'.
+	 * @generated
+	 */
+	BusMasterInterface createBusMasterInterface();
+
+	/**
+	 * Returns a new object of class '<em>Bus Master Port</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Bus Master Port</em>'.
+	 * @generated
+	 */
+	BusMasterPort createBusMasterPort();
+
+	/**
+	 * Returns a new object of class '<em>CAN Bus Master Port</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CAN Bus Master Port</em>'.
+	 * @generated
+	 */
+	CANBusMasterPort createCANBusMasterPort();
+
+	/**
+	 * Returns a new object of class '<em>CAN Bus Master Interface</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CAN Bus Master Interface</em>'.
+	 * @generated
+	 */
+	CANBusMasterInterface createCANBusMasterInterface();
+
+	/**
+	 * Returns the package supported by this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	ModelPackage getModelPackage();
+
+} //ModelFactory
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ModelPackage.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ModelPackage.java
new file mode 100644
index 0000000000000000000000000000000000000000..35d095ebbb5ac72c78a08c6876a438b56beeb603
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/ModelPackage.java
@@ -0,0 +1,1913 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.fortiss.af3.platform.model.AF3PlatformPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ *   <li>each class,</li>
+ *   <li>each feature of each class,</li>
+ *   <li>each enum,</li>
+ *   <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.fortiss.af3.platform.raspberry.model.ModelFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ModelPackage extends EPackage {
+	/**
+	 * The package name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNAME = "model";
+
+	/**
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_URI = "http://www.fortiss.org/af3/platform/raspberry";
+
+	/**
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_PREFIX = "org-fortiss-af3-platform-raspberry";
+
+	/**
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	ModelPackage eINSTANCE = org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CANBusImpl <em>CAN Bus</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.CANBusImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCANBus()
+	 * @generated
+	 */
+	int CAN_BUS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__ID = AF3PlatformPackage.TRANSMISSION_UNIT__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__NAME = AF3PlatformPackage.TRANSMISSION_UNIT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__COMMENT = AF3PlatformPackage.TRANSMISSION_UNIT__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Contained Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__CONTAINED_ELEMENTS = AF3PlatformPackage.TRANSMISSION_UNIT__CONTAINED_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__SPECIFICATIONS = AF3PlatformPackage.TRANSMISSION_UNIT__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__REFERENCED_BY = AF3PlatformPackage.TRANSMISSION_UNIT__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Connections</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__CONNECTIONS = AF3PlatformPackage.TRANSMISSION_UNIT__CONNECTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__CONNECTORS = AF3PlatformPackage.TRANSMISSION_UNIT__CONNECTORS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__CONTAINER = AF3PlatformPackage.TRANSMISSION_UNIT__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__LAYOUT_DATA = AF3PlatformPackage.TRANSMISSION_UNIT__LAYOUT_DATA;
+
+	/**
+	 * The feature id for the '<em><b>Capacity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS__CAPACITY = AF3PlatformPackage.TRANSMISSION_UNIT__CAPACITY;
+
+	/**
+	 * The number of structural features of the '<em>CAN Bus</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_FEATURE_COUNT = AF3PlatformPackage.TRANSMISSION_UNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.IProcessorDomainImpl <em>IProcessor Domain</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.IProcessorDomainImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getIProcessorDomain()
+	 * @generated
+	 */
+	int IPROCESSOR_DOMAIN = 1;
+
+	/**
+	 * The number of structural features of the '<em>IProcessor Domain</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROCESSOR_DOMAIN_FEATURE_COUNT = AF3PlatformPackage.IARCHITECTURE_DOMAIN_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.IBoardDomainImpl <em>IBoard Domain</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.IBoardDomainImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getIBoardDomain()
+	 * @generated
+	 */
+	int IBOARD_DOMAIN = 2;
+
+	/**
+	 * The number of structural features of the '<em>IBoard Domain</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBOARD_DOMAIN_FEATURE_COUNT = AF3PlatformPackage.IARCHITECTURE_DOMAIN_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi1Impl <em>Raspberry Pi1</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi1Impl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getRaspberryPi1()
+	 * @generated
+	 */
+	int RASPBERRY_PI1 = 3;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__ID = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__NAME = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__COMMENT = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Contained Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__CONTAINED_ELEMENTS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONTAINED_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__SPECIFICATIONS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__REFERENCED_BY = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Connections</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__CONNECTIONS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONNECTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__CONNECTORS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONNECTORS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__CONTAINER = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1__LAYOUT_DATA = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Raspberry Pi1</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI1_FEATURE_COUNT = AF3PlatformPackage.GENERIC_PLATFORM_UNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi2Impl <em>Raspberry Pi2</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi2Impl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getRaspberryPi2()
+	 * @generated
+	 */
+	int RASPBERRY_PI2 = 4;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__ID = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__NAME = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__COMMENT = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Contained Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__CONTAINED_ELEMENTS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONTAINED_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__SPECIFICATIONS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__REFERENCED_BY = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Connections</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__CONNECTIONS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONNECTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__CONNECTORS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONNECTORS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__CONTAINER = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2__LAYOUT_DATA = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Raspberry Pi2</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI2_FEATURE_COUNT = AF3PlatformPackage.GENERIC_PLATFORM_UNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi3Impl <em>Raspberry Pi3</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi3Impl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getRaspberryPi3()
+	 * @generated
+	 */
+	int RASPBERRY_PI3 = 5;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__ID = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__NAME = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__COMMENT = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Contained Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__CONTAINED_ELEMENTS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONTAINED_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__SPECIFICATIONS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__REFERENCED_BY = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Connections</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__CONNECTIONS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONNECTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__CONNECTORS = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONNECTORS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__CONTAINER = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3__LAYOUT_DATA = AF3PlatformPackage.GENERIC_PLATFORM_UNIT__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Raspberry Pi3</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RASPBERRY_PI3_FEATURE_COUNT = AF3PlatformPackage.GENERIC_PLATFORM_UNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CoreImpl <em>Core</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.CoreImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCore()
+	 * @generated
+	 */
+	int CORE = 6;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__ID = AF3PlatformPackage.EXECUTION_UNIT__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__NAME = AF3PlatformPackage.EXECUTION_UNIT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__COMMENT = AF3PlatformPackage.EXECUTION_UNIT__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Contained Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__CONTAINED_ELEMENTS = AF3PlatformPackage.EXECUTION_UNIT__CONTAINED_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__SPECIFICATIONS = AF3PlatformPackage.EXECUTION_UNIT__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__REFERENCED_BY = AF3PlatformPackage.EXECUTION_UNIT__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Connections</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__CONNECTIONS = AF3PlatformPackage.EXECUTION_UNIT__CONNECTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__CONNECTORS = AF3PlatformPackage.EXECUTION_UNIT__CONNECTORS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__CONTAINER = AF3PlatformPackage.EXECUTION_UNIT__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE__LAYOUT_DATA = AF3PlatformPackage.EXECUTION_UNIT__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Core</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CORE_FEATURE_COUNT = AF3PlatformPackage.EXECUTION_UNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.BusImpl <em>Bus</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.BusImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getBus()
+	 * @generated
+	 */
+	int BUS = 7;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__ID = AF3PlatformPackage.TRANSMISSION_UNIT__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__NAME = AF3PlatformPackage.TRANSMISSION_UNIT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__COMMENT = AF3PlatformPackage.TRANSMISSION_UNIT__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Contained Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__CONTAINED_ELEMENTS = AF3PlatformPackage.TRANSMISSION_UNIT__CONTAINED_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__SPECIFICATIONS = AF3PlatformPackage.TRANSMISSION_UNIT__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__REFERENCED_BY = AF3PlatformPackage.TRANSMISSION_UNIT__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Connections</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__CONNECTIONS = AF3PlatformPackage.TRANSMISSION_UNIT__CONNECTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__CONNECTORS = AF3PlatformPackage.TRANSMISSION_UNIT__CONNECTORS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__CONTAINER = AF3PlatformPackage.TRANSMISSION_UNIT__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__LAYOUT_DATA = AF3PlatformPackage.TRANSMISSION_UNIT__LAYOUT_DATA;
+
+	/**
+	 * The feature id for the '<em><b>Capacity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS__CAPACITY = AF3PlatformPackage.TRANSMISSION_UNIT__CAPACITY;
+
+	/**
+	 * The number of structural features of the '<em>Bus</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_FEATURE_COUNT = AF3PlatformPackage.TRANSMISSION_UNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.SensorImpl <em>Sensor</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.SensorImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getSensor()
+	 * @generated
+	 */
+	int SENSOR = 8;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__ID = AF3PlatformPackage.RECEIVER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__NAME = AF3PlatformPackage.RECEIVER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__COMMENT = AF3PlatformPackage.RECEIVER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__SPECIFICATIONS = AF3PlatformPackage.RECEIVER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__REFERENCED_BY = AF3PlatformPackage.RECEIVER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__INCOMING = AF3PlatformPackage.RECEIVER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__OUTGOING = AF3PlatformPackage.RECEIVER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__OWNER = AF3PlatformPackage.RECEIVER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR__LAYOUT_DATA = AF3PlatformPackage.RECEIVER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Sensor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_FEATURE_COUNT = AF3PlatformPackage.RECEIVER_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.ActuatorImpl <em>Actuator</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ActuatorImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getActuator()
+	 * @generated
+	 */
+	int ACTUATOR = 9;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__ID = AF3PlatformPackage.TRANSMITTER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__NAME = AF3PlatformPackage.TRANSMITTER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__COMMENT = AF3PlatformPackage.TRANSMITTER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__SPECIFICATIONS = AF3PlatformPackage.TRANSMITTER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__REFERENCED_BY = AF3PlatformPackage.TRANSMITTER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__INCOMING = AF3PlatformPackage.TRANSMITTER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__OUTGOING = AF3PlatformPackage.TRANSMITTER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__OWNER = AF3PlatformPackage.TRANSMITTER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR__LAYOUT_DATA = AF3PlatformPackage.TRANSMITTER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Actuator</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_FEATURE_COUNT = AF3PlatformPackage.TRANSMITTER_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.SensorInImpl <em>Sensor In</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.SensorInImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getSensorIn()
+	 * @generated
+	 */
+	int SENSOR_IN = 10;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__ID = AF3PlatformPackage.RECEIVER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__NAME = AF3PlatformPackage.RECEIVER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__COMMENT = AF3PlatformPackage.RECEIVER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__SPECIFICATIONS = AF3PlatformPackage.RECEIVER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__REFERENCED_BY = AF3PlatformPackage.RECEIVER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__INCOMING = AF3PlatformPackage.RECEIVER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__OUTGOING = AF3PlatformPackage.RECEIVER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__OWNER = AF3PlatformPackage.RECEIVER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN__LAYOUT_DATA = AF3PlatformPackage.RECEIVER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Sensor In</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SENSOR_IN_FEATURE_COUNT = AF3PlatformPackage.RECEIVER_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.ActuatorOutImpl <em>Actuator Out</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ActuatorOutImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getActuatorOut()
+	 * @generated
+	 */
+	int ACTUATOR_OUT = 11;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__ID = AF3PlatformPackage.TRANSMITTER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__NAME = AF3PlatformPackage.TRANSMITTER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__COMMENT = AF3PlatformPackage.TRANSMITTER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__SPECIFICATIONS = AF3PlatformPackage.TRANSMITTER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__REFERENCED_BY = AF3PlatformPackage.TRANSMITTER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__INCOMING = AF3PlatformPackage.TRANSMITTER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__OUTGOING = AF3PlatformPackage.TRANSMITTER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__OWNER = AF3PlatformPackage.TRANSMITTER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT__LAYOUT_DATA = AF3PlatformPackage.TRANSMITTER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Actuator Out</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ACTUATOR_OUT_FEATURE_COUNT = AF3PlatformPackage.TRANSMITTER_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.BusMasterInterfaceImpl <em>Bus Master Interface</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.BusMasterInterfaceImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getBusMasterInterface()
+	 * @generated
+	 */
+	int BUS_MASTER_INTERFACE = 12;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__ID = AF3PlatformPackage.TRANSCEIVER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__NAME = AF3PlatformPackage.TRANSCEIVER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__COMMENT = AF3PlatformPackage.TRANSCEIVER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__SPECIFICATIONS = AF3PlatformPackage.TRANSCEIVER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__REFERENCED_BY = AF3PlatformPackage.TRANSCEIVER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__INCOMING = AF3PlatformPackage.TRANSCEIVER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__OUTGOING = AF3PlatformPackage.TRANSCEIVER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__OWNER = AF3PlatformPackage.TRANSCEIVER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE__LAYOUT_DATA = AF3PlatformPackage.TRANSCEIVER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Bus Master Interface</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_INTERFACE_FEATURE_COUNT = AF3PlatformPackage.TRANSCEIVER_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.BusMasterPortImpl <em>Bus Master Port</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.BusMasterPortImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getBusMasterPort()
+	 * @generated
+	 */
+	int BUS_MASTER_PORT = 13;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__ID = AF3PlatformPackage.TRANSCEIVER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__NAME = AF3PlatformPackage.TRANSCEIVER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__COMMENT = AF3PlatformPackage.TRANSCEIVER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__SPECIFICATIONS = AF3PlatformPackage.TRANSCEIVER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__REFERENCED_BY = AF3PlatformPackage.TRANSCEIVER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__INCOMING = AF3PlatformPackage.TRANSCEIVER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__OUTGOING = AF3PlatformPackage.TRANSCEIVER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__OWNER = AF3PlatformPackage.TRANSCEIVER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT__LAYOUT_DATA = AF3PlatformPackage.TRANSCEIVER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>Bus Master Port</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BUS_MASTER_PORT_FEATURE_COUNT = AF3PlatformPackage.TRANSCEIVER_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterPortImpl <em>CAN Bus Master Port</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterPortImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCANBusMasterPort()
+	 * @generated
+	 */
+	int CAN_BUS_MASTER_PORT = 14;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__ID = AF3PlatformPackage.TRANSCEIVER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__NAME = AF3PlatformPackage.TRANSCEIVER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__COMMENT = AF3PlatformPackage.TRANSCEIVER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__SPECIFICATIONS = AF3PlatformPackage.TRANSCEIVER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__REFERENCED_BY = AF3PlatformPackage.TRANSCEIVER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__INCOMING = AF3PlatformPackage.TRANSCEIVER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__OUTGOING = AF3PlatformPackage.TRANSCEIVER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__OWNER = AF3PlatformPackage.TRANSCEIVER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT__LAYOUT_DATA = AF3PlatformPackage.TRANSCEIVER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>CAN Bus Master Port</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_PORT_FEATURE_COUNT = AF3PlatformPackage.TRANSCEIVER_FEATURE_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterInterfaceImpl <em>CAN Bus Master Interface</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterInterfaceImpl
+	 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCANBusMasterInterface()
+	 * @generated
+	 */
+	int CAN_BUS_MASTER_INTERFACE = 15;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__ID = AF3PlatformPackage.TRANSCEIVER__ID;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__NAME = AF3PlatformPackage.TRANSCEIVER__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Comment</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__COMMENT = AF3PlatformPackage.TRANSCEIVER__COMMENT;
+
+	/**
+	 * The feature id for the '<em><b>Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__SPECIFICATIONS = AF3PlatformPackage.TRANSCEIVER__SPECIFICATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Referenced By</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__REFERENCED_BY = AF3PlatformPackage.TRANSCEIVER__REFERENCED_BY;
+
+	/**
+	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__INCOMING = AF3PlatformPackage.TRANSCEIVER__INCOMING;
+
+	/**
+	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__OUTGOING = AF3PlatformPackage.TRANSCEIVER__OUTGOING;
+
+	/**
+	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__OWNER = AF3PlatformPackage.TRANSCEIVER__OWNER;
+
+	/**
+	 * The feature id for the '<em><b>Layout Data</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE__LAYOUT_DATA = AF3PlatformPackage.TRANSCEIVER__LAYOUT_DATA;
+
+	/**
+	 * The number of structural features of the '<em>CAN Bus Master Interface</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CAN_BUS_MASTER_INTERFACE_FEATURE_COUNT = AF3PlatformPackage.TRANSCEIVER_FEATURE_COUNT + 0;
+
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.CANBus <em>CAN Bus</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CAN Bus</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.CANBus
+	 * @generated
+	 */
+	EClass getCANBus();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.IProcessorDomain <em>IProcessor Domain</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IProcessor Domain</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.IProcessorDomain
+	 * @generated
+	 */
+	EClass getIProcessorDomain();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.IBoardDomain <em>IBoard Domain</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IBoard Domain</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.IBoardDomain
+	 * @generated
+	 */
+	EClass getIBoardDomain();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.RaspberryPi1 <em>Raspberry Pi1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Raspberry Pi1</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.RaspberryPi1
+	 * @generated
+	 */
+	EClass getRaspberryPi1();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.RaspberryPi2 <em>Raspberry Pi2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Raspberry Pi2</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.RaspberryPi2
+	 * @generated
+	 */
+	EClass getRaspberryPi2();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.RaspberryPi3 <em>Raspberry Pi3</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Raspberry Pi3</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.RaspberryPi3
+	 * @generated
+	 */
+	EClass getRaspberryPi3();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.Core <em>Core</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Core</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.Core
+	 * @generated
+	 */
+	EClass getCore();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.Bus <em>Bus</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Bus</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.Bus
+	 * @generated
+	 */
+	EClass getBus();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.Sensor <em>Sensor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Sensor</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.Sensor
+	 * @generated
+	 */
+	EClass getSensor();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.Actuator <em>Actuator</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Actuator</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.Actuator
+	 * @generated
+	 */
+	EClass getActuator();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.SensorIn <em>Sensor In</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Sensor In</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.SensorIn
+	 * @generated
+	 */
+	EClass getSensorIn();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.ActuatorOut <em>Actuator Out</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Actuator Out</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.ActuatorOut
+	 * @generated
+	 */
+	EClass getActuatorOut();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.BusMasterInterface <em>Bus Master Interface</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Bus Master Interface</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.BusMasterInterface
+	 * @generated
+	 */
+	EClass getBusMasterInterface();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.BusMasterPort <em>Bus Master Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Bus Master Port</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.BusMasterPort
+	 * @generated
+	 */
+	EClass getBusMasterPort();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.CANBusMasterPort <em>CAN Bus Master Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CAN Bus Master Port</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.CANBusMasterPort
+	 * @generated
+	 */
+	EClass getCANBusMasterPort();
+
+	/**
+	 * Returns the meta object for class '{@link org.fortiss.af3.platform.raspberry.model.CANBusMasterInterface <em>CAN Bus Master Interface</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CAN Bus Master Interface</em>'.
+	 * @see org.fortiss.af3.platform.raspberry.model.CANBusMasterInterface
+	 * @generated
+	 */
+	EClass getCANBusMasterInterface();
+
+	/**
+	 * Returns the factory that creates the instances of the model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	ModelFactory getModelFactory();
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * Defines literals for the meta objects that represent
+	 * <ul>
+	 *   <li>each class,</li>
+	 *   <li>each feature of each class,</li>
+	 *   <li>each enum,</li>
+	 *   <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	interface Literals {
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CANBusImpl <em>CAN Bus</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.CANBusImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCANBus()
+		 * @generated
+		 */
+		EClass CAN_BUS = eINSTANCE.getCANBus();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.IProcessorDomainImpl <em>IProcessor Domain</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.IProcessorDomainImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getIProcessorDomain()
+		 * @generated
+		 */
+		EClass IPROCESSOR_DOMAIN = eINSTANCE.getIProcessorDomain();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.IBoardDomainImpl <em>IBoard Domain</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.IBoardDomainImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getIBoardDomain()
+		 * @generated
+		 */
+		EClass IBOARD_DOMAIN = eINSTANCE.getIBoardDomain();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi1Impl <em>Raspberry Pi1</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi1Impl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getRaspberryPi1()
+		 * @generated
+		 */
+		EClass RASPBERRY_PI1 = eINSTANCE.getRaspberryPi1();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi2Impl <em>Raspberry Pi2</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi2Impl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getRaspberryPi2()
+		 * @generated
+		 */
+		EClass RASPBERRY_PI2 = eINSTANCE.getRaspberryPi2();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi3Impl <em>Raspberry Pi3</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.RaspberryPi3Impl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getRaspberryPi3()
+		 * @generated
+		 */
+		EClass RASPBERRY_PI3 = eINSTANCE.getRaspberryPi3();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CoreImpl <em>Core</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.CoreImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCore()
+		 * @generated
+		 */
+		EClass CORE = eINSTANCE.getCore();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.BusImpl <em>Bus</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.BusImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getBus()
+		 * @generated
+		 */
+		EClass BUS = eINSTANCE.getBus();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.SensorImpl <em>Sensor</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.SensorImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getSensor()
+		 * @generated
+		 */
+		EClass SENSOR = eINSTANCE.getSensor();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.ActuatorImpl <em>Actuator</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ActuatorImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getActuator()
+		 * @generated
+		 */
+		EClass ACTUATOR = eINSTANCE.getActuator();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.SensorInImpl <em>Sensor In</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.SensorInImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getSensorIn()
+		 * @generated
+		 */
+		EClass SENSOR_IN = eINSTANCE.getSensorIn();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.ActuatorOutImpl <em>Actuator Out</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ActuatorOutImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getActuatorOut()
+		 * @generated
+		 */
+		EClass ACTUATOR_OUT = eINSTANCE.getActuatorOut();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.BusMasterInterfaceImpl <em>Bus Master Interface</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.BusMasterInterfaceImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getBusMasterInterface()
+		 * @generated
+		 */
+		EClass BUS_MASTER_INTERFACE = eINSTANCE.getBusMasterInterface();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.BusMasterPortImpl <em>Bus Master Port</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.BusMasterPortImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getBusMasterPort()
+		 * @generated
+		 */
+		EClass BUS_MASTER_PORT = eINSTANCE.getBusMasterPort();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterPortImpl <em>CAN Bus Master Port</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterPortImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCANBusMasterPort()
+		 * @generated
+		 */
+		EClass CAN_BUS_MASTER_PORT = eINSTANCE.getCANBusMasterPort();
+
+		/**
+		 * The meta object literal for the '{@link org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterInterfaceImpl <em>CAN Bus Master Interface</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.CANBusMasterInterfaceImpl
+		 * @see org.fortiss.af3.platform.raspberry.model.impl.ModelPackageImpl#getCANBusMasterInterface()
+		 * @generated
+		 */
+		EClass CAN_BUS_MASTER_INTERFACE = eINSTANCE.getCANBusMasterInterface();
+
+	}
+
+} //ModelPackage
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi1.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi1.java
new file mode 100644
index 0000000000000000000000000000000000000000..9aba129541db793b4f152fdd7d79203c15e09166
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi1.java
@@ -0,0 +1,20 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.GenericPlatformUnit;
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Raspberry Pi1</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getRaspberryPi1()
+ * @model
+ * @generated
+ */
+public interface RaspberryPi1 extends GenericPlatformUnit, ICommunicationMaster, IBoardPlatformArchitectureElement, IBoardDomain {
+} // RaspberryPi1
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi2.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi2.java
new file mode 100644
index 0000000000000000000000000000000000000000..38676071f431ece52f979fd3343687d1e3acef3e
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi2.java
@@ -0,0 +1,20 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.GenericPlatformUnit;
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Raspberry Pi2</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getRaspberryPi2()
+ * @model
+ * @generated
+ */
+public interface RaspberryPi2 extends GenericPlatformUnit, ICommunicationMaster, IBoardPlatformArchitectureElement, IBoardDomain {
+} // RaspberryPi2
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi3.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi3.java
new file mode 100644
index 0000000000000000000000000000000000000000..667336ba8def52b2740cc2f338b20c02c26eb686
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/RaspberryPi3.java
@@ -0,0 +1,20 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.GenericPlatformUnit;
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Raspberry Pi3</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getRaspberryPi3()
+ * @model
+ * @generated
+ */
+public interface RaspberryPi3 extends GenericPlatformUnit, ICommunicationMaster, IBoardPlatformArchitectureElement, IBoardDomain {
+} // RaspberryPi3
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Sensor.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Sensor.java
new file mode 100644
index 0000000000000000000000000000000000000000..466f8df47bc9d12394ad7cfc22a8e1dfb986b7e7
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/Sensor.java
@@ -0,0 +1,22 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IPlatformIOResource;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.Receiver;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sensor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getSensor()
+ * @model
+ * @generated
+ */
+public interface Sensor extends Receiver, IBoardPlatformArchitectureElement, ICommunicationMaster, IBoardDomain, IPlatformPort, IPlatformIOResource {
+} // Sensor
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/SensorIn.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/SensorIn.java
new file mode 100644
index 0000000000000000000000000000000000000000..dd96a542569bd0bad6ac5c6466a5a84b551725af
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/SensorIn.java
@@ -0,0 +1,22 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model;
+
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformIOResource;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.Receiver;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sensor In</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#getSensorIn()
+ * @model
+ * @generated
+ */
+public interface SensorIn extends Receiver, IIpCorePlatformArchitectureElement, ICommunicationMaster, IProcessorDomain, IPlatformPort, IPlatformIOResource {
+} // SensorIn
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ActuatorImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ActuatorImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..007c6fb7673b5594328a7000ba6a87abb29faff9
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ActuatorImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransmitterImpl;
+
+import org.fortiss.af3.platform.raspberry.model.Actuator;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Actuator</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class ActuatorImpl extends TransmitterImpl implements Actuator {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ActuatorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.ACTUATOR;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //ActuatorImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ActuatorOutImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ActuatorOutImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..bd97c05a55970c81d06c4dd3229142fd6c6394f0
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ActuatorOutImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransmitterImpl;
+
+import org.fortiss.af3.platform.raspberry.model.ActuatorOut;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Actuator Out</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class ActuatorOutImpl extends TransmitterImpl implements ActuatorOut {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ActuatorOutImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.ACTUATOR_OUT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Processor";
+	}
+
+} //ActuatorOutImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..a9ac93c8c9446263a2d87f1f64078a384fe8eb0d
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransmissionUnitImpl;
+
+import org.fortiss.af3.platform.raspberry.model.Bus;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bus</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class BusImpl extends TransmissionUnitImpl implements Bus {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BusImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.BUS;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Processor";
+	}
+
+} //BusImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusMasterInterfaceImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusMasterInterfaceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..f0b76d0b39e6609ebd6226fbde22c92df3851080
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusMasterInterfaceImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransceiverImpl;
+
+import org.fortiss.af3.platform.raspberry.model.BusMasterInterface;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bus Master Interface</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class BusMasterInterfaceImpl extends TransceiverImpl implements BusMasterInterface {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BusMasterInterfaceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.BUS_MASTER_INTERFACE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Processor";
+	}
+
+} //BusMasterInterfaceImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusMasterPortImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusMasterPortImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..df0b56e4032f095da4aec32b6b8ef01708ff8e7f
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/BusMasterPortImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransceiverImpl;
+
+import org.fortiss.af3.platform.raspberry.model.BusMasterPort;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bus Master Port</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class BusMasterPortImpl extends TransceiverImpl implements BusMasterPort {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BusMasterPortImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.BUS_MASTER_PORT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Processor";
+	}
+
+} //BusMasterPortImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..d9c09259e610d59d11d526f4511144e53402027b
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransmissionUnitImpl;
+
+import org.fortiss.af3.platform.raspberry.model.CANBus;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CAN Bus</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class CANBusImpl extends TransmissionUnitImpl implements CANBus {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CANBusImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.CAN_BUS;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //CANBusImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusMasterInterfaceImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusMasterInterfaceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..3223255785a06065730f67619df585b1d42cbf2b
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusMasterInterfaceImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransceiverImpl;
+
+import org.fortiss.af3.platform.raspberry.model.CANBusMasterInterface;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CAN Bus Master Interface</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class CANBusMasterInterfaceImpl extends TransceiverImpl implements CANBusMasterInterface {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CANBusMasterInterfaceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.CAN_BUS_MASTER_INTERFACE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //CANBusMasterInterfaceImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusMasterPortImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusMasterPortImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..0e43f62fc75d4b9bb6589e37f9150b06a8b4c4a4
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CANBusMasterPortImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.TransceiverImpl;
+
+import org.fortiss.af3.platform.raspberry.model.CANBusMasterPort;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CAN Bus Master Port</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class CANBusMasterPortImpl extends TransceiverImpl implements CANBusMasterPort {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CANBusMasterPortImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.CAN_BUS_MASTER_PORT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //CANBusMasterPortImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CoreImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CoreImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..4e4528a17ec7525fa3f200df98e38d0b0fecb414
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/CoreImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.ExecutionUnitImpl;
+
+import org.fortiss.af3.platform.raspberry.model.Core;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Core</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class CoreImpl extends ExecutionUnitImpl implements Core {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CoreImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.CORE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Processor";
+	}
+
+} //CoreImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/IBoardDomainImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/IBoardDomainImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..ab7fc7dd01347fb3950d17a45a30c197cec70ec2
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/IBoardDomainImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.fortiss.af3.platform.raspberry.model.IBoardDomain;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IBoard Domain</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class IBoardDomainImpl extends EObjectImpl implements IBoardDomain {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IBoardDomainImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.IBOARD_DOMAIN;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //IBoardDomainImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/IProcessorDomainImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/IProcessorDomainImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..a9e198f6d7ac109d8f0e109775b77819a2234702
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/IProcessorDomainImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.fortiss.af3.platform.raspberry.model.IProcessorDomain;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IProcessor Domain</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class IProcessorDomainImpl extends EObjectImpl implements IProcessorDomain {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IProcessorDomainImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.IPROCESSOR_DOMAIN;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Processor";
+	}
+
+} //IProcessorDomainImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ModelFactoryImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ModelFactoryImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..22df3964f0f66b5b54df5238a1bd1bd3740a3118
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ModelFactoryImpl.java
@@ -0,0 +1,260 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.fortiss.af3.platform.raspberry.model.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ModelFactoryImpl extends EFactoryImpl implements ModelFactory {
+	/**
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static ModelFactory init() {
+		try {
+			ModelFactory theModelFactory = (ModelFactory)EPackage.Registry.INSTANCE.getEFactory(ModelPackage.eNS_URI);
+			if (theModelFactory != null) {
+				return theModelFactory;
+			}
+		}
+		catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new ModelFactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ModelFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+			case ModelPackage.CAN_BUS: return createCANBus();
+			case ModelPackage.IPROCESSOR_DOMAIN: return createIProcessorDomain();
+			case ModelPackage.IBOARD_DOMAIN: return createIBoardDomain();
+			case ModelPackage.RASPBERRY_PI1: return createRaspberryPi1();
+			case ModelPackage.RASPBERRY_PI2: return createRaspberryPi2();
+			case ModelPackage.RASPBERRY_PI3: return createRaspberryPi3();
+			case ModelPackage.CORE: return createCore();
+			case ModelPackage.BUS: return createBus();
+			case ModelPackage.SENSOR: return createSensor();
+			case ModelPackage.ACTUATOR: return createActuator();
+			case ModelPackage.SENSOR_IN: return createSensorIn();
+			case ModelPackage.ACTUATOR_OUT: return createActuatorOut();
+			case ModelPackage.BUS_MASTER_INTERFACE: return createBusMasterInterface();
+			case ModelPackage.BUS_MASTER_PORT: return createBusMasterPort();
+			case ModelPackage.CAN_BUS_MASTER_PORT: return createCANBusMasterPort();
+			case ModelPackage.CAN_BUS_MASTER_INTERFACE: return createCANBusMasterInterface();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CANBus createCANBus() {
+		CANBusImpl canBus = new CANBusImpl();
+		return canBus;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IProcessorDomain createIProcessorDomain() {
+		IProcessorDomainImpl iProcessorDomain = new IProcessorDomainImpl();
+		return iProcessorDomain;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBoardDomain createIBoardDomain() {
+		IBoardDomainImpl iBoardDomain = new IBoardDomainImpl();
+		return iBoardDomain;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public RaspberryPi1 createRaspberryPi1() {
+		RaspberryPi1Impl raspberryPi1 = new RaspberryPi1Impl();
+		return raspberryPi1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public RaspberryPi2 createRaspberryPi2() {
+		RaspberryPi2Impl raspberryPi2 = new RaspberryPi2Impl();
+		return raspberryPi2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public RaspberryPi3 createRaspberryPi3() {
+		RaspberryPi3Impl raspberryPi3 = new RaspberryPi3Impl();
+		return raspberryPi3;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Core createCore() {
+		CoreImpl core = new CoreImpl();
+		return core;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Bus createBus() {
+		BusImpl bus = new BusImpl();
+		return bus;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Sensor createSensor() {
+		SensorImpl sensor = new SensorImpl();
+		return sensor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Actuator createActuator() {
+		ActuatorImpl actuator = new ActuatorImpl();
+		return actuator;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SensorIn createSensorIn() {
+		SensorInImpl sensorIn = new SensorInImpl();
+		return sensorIn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ActuatorOut createActuatorOut() {
+		ActuatorOutImpl actuatorOut = new ActuatorOutImpl();
+		return actuatorOut;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BusMasterInterface createBusMasterInterface() {
+		BusMasterInterfaceImpl busMasterInterface = new BusMasterInterfaceImpl();
+		return busMasterInterface;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BusMasterPort createBusMasterPort() {
+		BusMasterPortImpl busMasterPort = new BusMasterPortImpl();
+		return busMasterPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CANBusMasterPort createCANBusMasterPort() {
+		CANBusMasterPortImpl canBusMasterPort = new CANBusMasterPortImpl();
+		return canBusMasterPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CANBusMasterInterface createCANBusMasterInterface() {
+		CANBusMasterInterfaceImpl canBusMasterInterface = new CANBusMasterInterfaceImpl();
+		return canBusMasterInterface;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ModelPackage getModelPackage() {
+		return (ModelPackage)getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static ModelPackage getPackage() {
+		return ModelPackage.eINSTANCE;
+	}
+
+} //ModelFactoryImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ModelPackageImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ModelPackageImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..4cae8c90ee298448de84bf0d5a7c1919fc0ed09b
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/ModelPackageImpl.java
@@ -0,0 +1,560 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.fortiss.af3.platform.model.AF3PlatformPackage;
+
+import org.fortiss.af3.platform.raspberry.model.Actuator;
+import org.fortiss.af3.platform.raspberry.model.ActuatorOut;
+import org.fortiss.af3.platform.raspberry.model.Bus;
+import org.fortiss.af3.platform.raspberry.model.BusMasterInterface;
+import org.fortiss.af3.platform.raspberry.model.BusMasterPort;
+import org.fortiss.af3.platform.raspberry.model.CANBus;
+import org.fortiss.af3.platform.raspberry.model.CANBusMasterInterface;
+import org.fortiss.af3.platform.raspberry.model.CANBusMasterPort;
+import org.fortiss.af3.platform.raspberry.model.Core;
+import org.fortiss.af3.platform.raspberry.model.IBoardDomain;
+import org.fortiss.af3.platform.raspberry.model.IProcessorDomain;
+import org.fortiss.af3.platform.raspberry.model.ModelFactory;
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+import org.fortiss.af3.platform.raspberry.model.RaspberryPi1;
+import org.fortiss.af3.platform.raspberry.model.RaspberryPi2;
+import org.fortiss.af3.platform.raspberry.model.RaspberryPi3;
+import org.fortiss.af3.platform.raspberry.model.Sensor;
+import org.fortiss.af3.platform.raspberry.model.SensorIn;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ModelPackageImpl extends EPackageImpl implements ModelPackage {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass canBusEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iProcessorDomainEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iBoardDomainEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass raspberryPi1EClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass raspberryPi2EClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass raspberryPi3EClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass coreEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass busEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass sensorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass actuatorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass sensorInEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass actuatorOutEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass busMasterInterfaceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass busMasterPortEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass canBusMasterPortEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass canBusMasterInterfaceEClass = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+	 * package URI value.
+	 * <p>Note: the correct way to create the package is via the static
+	 * factory method {@link #init init()}, which also performs
+	 * initialization of the package, or returns the registered package,
+	 * if one already exists.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.fortiss.af3.platform.raspberry.model.ModelPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private ModelPackageImpl() {
+		super(eNS_URI, ModelFactory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+	 * 
+	 * <p>This method is used to initialize {@link ModelPackage#eINSTANCE} when that field is accessed.
+	 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
+	public static ModelPackage init() {
+		if (isInited) return (ModelPackage)EPackage.Registry.INSTANCE.getEPackage(ModelPackage.eNS_URI);
+
+		// Obtain or create and register package
+		ModelPackageImpl theModelPackage = (ModelPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ModelPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ModelPackageImpl());
+
+		isInited = true;
+
+		// Initialize simple dependencies
+		AF3PlatformPackage.eINSTANCE.eClass();
+
+		// Create package meta-data objects
+		theModelPackage.createPackageContents();
+
+		// Initialize created meta-data
+		theModelPackage.initializePackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		theModelPackage.freeze();
+
+  
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(ModelPackage.eNS_URI, theModelPackage);
+		return theModelPackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCANBus() {
+		return canBusEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIProcessorDomain() {
+		return iProcessorDomainEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIBoardDomain() {
+		return iBoardDomainEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getRaspberryPi1() {
+		return raspberryPi1EClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getRaspberryPi2() {
+		return raspberryPi2EClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getRaspberryPi3() {
+		return raspberryPi3EClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCore() {
+		return coreEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getBus() {
+		return busEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSensor() {
+		return sensorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getActuator() {
+		return actuatorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSensorIn() {
+		return sensorInEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getActuatorOut() {
+		return actuatorOutEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getBusMasterInterface() {
+		return busMasterInterfaceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getBusMasterPort() {
+		return busMasterPortEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCANBusMasterPort() {
+		return canBusMasterPortEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCANBusMasterInterface() {
+		return canBusMasterInterfaceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ModelFactory getModelFactory() {
+		return (ModelFactory)getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isCreated = false;
+
+	/**
+	 * Creates the meta-model objects for the package.  This method is
+	 * guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void createPackageContents() {
+		if (isCreated) return;
+		isCreated = true;
+
+		// Create classes and their features
+		canBusEClass = createEClass(CAN_BUS);
+
+		iProcessorDomainEClass = createEClass(IPROCESSOR_DOMAIN);
+
+		iBoardDomainEClass = createEClass(IBOARD_DOMAIN);
+
+		raspberryPi1EClass = createEClass(RASPBERRY_PI1);
+
+		raspberryPi2EClass = createEClass(RASPBERRY_PI2);
+
+		raspberryPi3EClass = createEClass(RASPBERRY_PI3);
+
+		coreEClass = createEClass(CORE);
+
+		busEClass = createEClass(BUS);
+
+		sensorEClass = createEClass(SENSOR);
+
+		actuatorEClass = createEClass(ACTUATOR);
+
+		sensorInEClass = createEClass(SENSOR_IN);
+
+		actuatorOutEClass = createEClass(ACTUATOR_OUT);
+
+		busMasterInterfaceEClass = createEClass(BUS_MASTER_INTERFACE);
+
+		busMasterPortEClass = createEClass(BUS_MASTER_PORT);
+
+		canBusMasterPortEClass = createEClass(CAN_BUS_MASTER_PORT);
+
+		canBusMasterInterfaceEClass = createEClass(CAN_BUS_MASTER_INTERFACE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isInitialized = false;
+
+	/**
+	 * Complete the initialization of the package and its meta-model.  This
+	 * method is guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void initializePackageContents() {
+		if (isInitialized) return;
+		isInitialized = true;
+
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
+
+		// Obtain other dependent packages
+		AF3PlatformPackage theAF3PlatformPackage = (AF3PlatformPackage)EPackage.Registry.INSTANCE.getEPackage(AF3PlatformPackage.eNS_URI);
+
+		// Create type parameters
+
+		// Set bounds for type parameters
+
+		// Add supertypes to classes
+		canBusEClass.getESuperTypes().add(theAF3PlatformPackage.getTransmissionUnit());
+		canBusEClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		canBusEClass.getESuperTypes().add(this.getIBoardDomain());
+		iProcessorDomainEClass.getESuperTypes().add(theAF3PlatformPackage.getIArchitectureDomain());
+		iBoardDomainEClass.getESuperTypes().add(theAF3PlatformPackage.getIArchitectureDomain());
+		raspberryPi1EClass.getESuperTypes().add(theAF3PlatformPackage.getGenericPlatformUnit());
+		raspberryPi1EClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		raspberryPi1EClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		raspberryPi1EClass.getESuperTypes().add(this.getIBoardDomain());
+		raspberryPi2EClass.getESuperTypes().add(theAF3PlatformPackage.getGenericPlatformUnit());
+		raspberryPi2EClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		raspberryPi2EClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		raspberryPi2EClass.getESuperTypes().add(this.getIBoardDomain());
+		raspberryPi3EClass.getESuperTypes().add(theAF3PlatformPackage.getGenericPlatformUnit());
+		raspberryPi3EClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		raspberryPi3EClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		raspberryPi3EClass.getESuperTypes().add(this.getIBoardDomain());
+		coreEClass.getESuperTypes().add(theAF3PlatformPackage.getExecutionUnit());
+		coreEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		coreEClass.getESuperTypes().add(theAF3PlatformPackage.getIIpCorePlatformArchitectureElement());
+		coreEClass.getESuperTypes().add(this.getIProcessorDomain());
+		busEClass.getESuperTypes().add(theAF3PlatformPackage.getTransmissionUnit());
+		busEClass.getESuperTypes().add(theAF3PlatformPackage.getIIpCorePlatformArchitectureElement());
+		busEClass.getESuperTypes().add(this.getIProcessorDomain());
+		sensorEClass.getESuperTypes().add(theAF3PlatformPackage.getReceiver());
+		sensorEClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		sensorEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		sensorEClass.getESuperTypes().add(this.getIBoardDomain());
+		sensorEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformPort());
+		sensorEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformIOResource());
+		actuatorEClass.getESuperTypes().add(theAF3PlatformPackage.getTransmitter());
+		actuatorEClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		actuatorEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		actuatorEClass.getESuperTypes().add(this.getIBoardDomain());
+		actuatorEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformPort());
+		actuatorEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformIOResource());
+		sensorInEClass.getESuperTypes().add(theAF3PlatformPackage.getReceiver());
+		sensorInEClass.getESuperTypes().add(theAF3PlatformPackage.getIIpCorePlatformArchitectureElement());
+		sensorInEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		sensorInEClass.getESuperTypes().add(this.getIProcessorDomain());
+		sensorInEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformPort());
+		sensorInEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformIOResource());
+		actuatorOutEClass.getESuperTypes().add(theAF3PlatformPackage.getTransmitter());
+		actuatorOutEClass.getESuperTypes().add(theAF3PlatformPackage.getIIpCorePlatformArchitectureElement());
+		actuatorOutEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		actuatorOutEClass.getESuperTypes().add(this.getIProcessorDomain());
+		actuatorOutEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformPort());
+		actuatorOutEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformIOResource());
+		busMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getTransceiver());
+		busMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getIIpCorePlatformArchitectureElement());
+		busMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformInterface());
+		busMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		busMasterInterfaceEClass.getESuperTypes().add(this.getIProcessorDomain());
+		busMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getTransceiver());
+		busMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getIIpCorePlatformArchitectureElement());
+		busMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformPort());
+		busMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		busMasterPortEClass.getESuperTypes().add(this.getIProcessorDomain());
+		canBusMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getTransceiver());
+		canBusMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		canBusMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformPort());
+		canBusMasterPortEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		canBusMasterPortEClass.getESuperTypes().add(this.getIBoardDomain());
+		canBusMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getTransceiver());
+		canBusMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getIBoardPlatformArchitectureElement());
+		canBusMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getIPlatformInterface());
+		canBusMasterInterfaceEClass.getESuperTypes().add(theAF3PlatformPackage.getICommunicationMaster());
+		canBusMasterInterfaceEClass.getESuperTypes().add(this.getIBoardDomain());
+
+		// Initialize classes and features; add operations and parameters
+		initEClass(canBusEClass, CANBus.class, "CANBus", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(iProcessorDomainEClass, IProcessorDomain.class, "IProcessorDomain", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		addEOperation(iProcessorDomainEClass, ecorePackage.getEString(), "getArchitectureDomainName", 1, 1, IS_UNIQUE, IS_ORDERED);
+
+		initEClass(iBoardDomainEClass, IBoardDomain.class, "IBoardDomain", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		addEOperation(iBoardDomainEClass, ecorePackage.getEString(), "getArchitectureDomainName", 1, 1, IS_UNIQUE, IS_ORDERED);
+
+		initEClass(raspberryPi1EClass, RaspberryPi1.class, "RaspberryPi1", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(raspberryPi2EClass, RaspberryPi2.class, "RaspberryPi2", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(raspberryPi3EClass, RaspberryPi3.class, "RaspberryPi3", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(coreEClass, Core.class, "Core", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(busEClass, Bus.class, "Bus", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(sensorEClass, Sensor.class, "Sensor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(actuatorEClass, Actuator.class, "Actuator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(sensorInEClass, SensorIn.class, "SensorIn", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(actuatorOutEClass, ActuatorOut.class, "ActuatorOut", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(busMasterInterfaceEClass, BusMasterInterface.class, "BusMasterInterface", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(busMasterPortEClass, BusMasterPort.class, "BusMasterPort", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(canBusMasterPortEClass, CANBusMasterPort.class, "CANBusMasterPort", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(canBusMasterInterfaceEClass, CANBusMasterInterface.class, "CANBusMasterInterface", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		// Create resource
+		createResource(eNS_URI);
+	}
+
+} //ModelPackageImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi1Impl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi1Impl.java
new file mode 100644
index 0000000000000000000000000000000000000000..ae117aa2848d07c964a8e24d295081da87a59399
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi1Impl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.GenericPlatformUnitImpl;
+
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+import org.fortiss.af3.platform.raspberry.model.RaspberryPi1;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Raspberry Pi1</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class RaspberryPi1Impl extends GenericPlatformUnitImpl implements RaspberryPi1 {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected RaspberryPi1Impl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.RASPBERRY_PI1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //RaspberryPi1Impl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi2Impl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi2Impl.java
new file mode 100644
index 0000000000000000000000000000000000000000..bc6fc7dfdb39c42a14e22ef167f68e78604455cd
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi2Impl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.GenericPlatformUnitImpl;
+
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+import org.fortiss.af3.platform.raspberry.model.RaspberryPi2;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Raspberry Pi2</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class RaspberryPi2Impl extends GenericPlatformUnitImpl implements RaspberryPi2 {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected RaspberryPi2Impl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.RASPBERRY_PI2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //RaspberryPi2Impl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi3Impl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi3Impl.java
new file mode 100644
index 0000000000000000000000000000000000000000..5ad967ee71de81afb08520a47441bea252a25d25
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/RaspberryPi3Impl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.GenericPlatformUnitImpl;
+
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+import org.fortiss.af3.platform.raspberry.model.RaspberryPi3;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Raspberry Pi3</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class RaspberryPi3Impl extends GenericPlatformUnitImpl implements RaspberryPi3 {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected RaspberryPi3Impl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.RASPBERRY_PI3;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //RaspberryPi3Impl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/SensorImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/SensorImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..ccc3936955d5673ff906fba644071a91e0db825d
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/SensorImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.ReceiverImpl;
+
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+import org.fortiss.af3.platform.raspberry.model.Sensor;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Sensor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class SensorImpl extends ReceiverImpl implements Sensor {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SensorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.SENSOR;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Board";
+	}
+
+} //SensorImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/SensorInImpl.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/SensorInImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..4821ff7c44880b2e1f4b87ebf16c69bb42458d5f
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/impl/SensorInImpl.java
@@ -0,0 +1,50 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.fortiss.af3.platform.model.impl.ReceiverImpl;
+
+import org.fortiss.af3.platform.raspberry.model.ModelPackage;
+import org.fortiss.af3.platform.raspberry.model.SensorIn;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Sensor In</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class SensorInImpl extends ReceiverImpl implements SensorIn {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SensorInImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ModelPackage.Literals.SENSOR_IN;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArchitectureDomainName() {
+		return "Processor";
+	}
+
+} //SensorInImpl
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/util/ModelAdapterFactory.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/util/ModelAdapterFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..d3d21cf3e1107acbd239cb513d069f083e00a268
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/util/ModelAdapterFactory.java
@@ -0,0 +1,1060 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.fortiss.af3.platform.model.ExecutionUnit;
+import org.fortiss.af3.platform.model.GenericPlatformUnit;
+import org.fortiss.af3.platform.model.IArchitectureDomain;
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.ICommunicationRole;
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPhysicalPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformArchitectureElementType;
+import org.fortiss.af3.platform.model.IPlatformCommunicationResource;
+import org.fortiss.af3.platform.model.IPlatformConnectorType;
+import org.fortiss.af3.platform.model.IPlatformIOResource;
+import org.fortiss.af3.platform.model.IPlatformInterface;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.IPlatformProcessingResource;
+import org.fortiss.af3.platform.model.IPlatformResource;
+import org.fortiss.af3.platform.model.PlatformConnectorUnit;
+import org.fortiss.af3.platform.model.Receiver;
+import org.fortiss.af3.platform.model.Transceiver;
+import org.fortiss.af3.platform.model.TransmissionUnit;
+import org.fortiss.af3.platform.model.Transmitter;
+
+import org.fortiss.af3.platform.raspberry.model.*;
+
+import org.fortiss.tooling.base.model.base.ConnectorBase;
+import org.fortiss.tooling.base.model.base.EntryConnectorBase;
+import org.fortiss.tooling.base.model.base.ExitConnectorBase;
+import org.fortiss.tooling.base.model.base.HierarchicElementBase;
+
+import org.fortiss.tooling.base.model.element.IConnector;
+import org.fortiss.tooling.base.model.element.IHierarchicElement;
+import org.fortiss.tooling.base.model.element.IHierarchicElementContainer;
+import org.fortiss.tooling.base.model.element.IModelElement;
+
+import org.fortiss.tooling.base.model.layout.ILayoutedModelElement;
+
+import org.fortiss.tooling.kernel.model.IIdLabeled;
+import org.fortiss.tooling.kernel.model.INamedCommentedElement;
+import org.fortiss.tooling.kernel.model.INamedElement;
+import org.fortiss.tooling.kernel.model.ISpeciallyCopyiable;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage
+ * @generated
+ */
+public class ModelAdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static ModelPackage modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ModelAdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = ModelPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+	 * <!-- end-user-doc -->
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ModelSwitch<Adapter> modelSwitch =
+		new ModelSwitch<Adapter>() {
+			@Override
+			public Adapter caseCANBus(CANBus object) {
+				return createCANBusAdapter();
+			}
+			@Override
+			public Adapter caseIProcessorDomain(IProcessorDomain object) {
+				return createIProcessorDomainAdapter();
+			}
+			@Override
+			public Adapter caseIBoardDomain(IBoardDomain object) {
+				return createIBoardDomainAdapter();
+			}
+			@Override
+			public Adapter caseRaspberryPi1(RaspberryPi1 object) {
+				return createRaspberryPi1Adapter();
+			}
+			@Override
+			public Adapter caseRaspberryPi2(RaspberryPi2 object) {
+				return createRaspberryPi2Adapter();
+			}
+			@Override
+			public Adapter caseRaspberryPi3(RaspberryPi3 object) {
+				return createRaspberryPi3Adapter();
+			}
+			@Override
+			public Adapter caseCore(Core object) {
+				return createCoreAdapter();
+			}
+			@Override
+			public Adapter caseBus(Bus object) {
+				return createBusAdapter();
+			}
+			@Override
+			public Adapter caseSensor(Sensor object) {
+				return createSensorAdapter();
+			}
+			@Override
+			public Adapter caseActuator(Actuator object) {
+				return createActuatorAdapter();
+			}
+			@Override
+			public Adapter caseSensorIn(SensorIn object) {
+				return createSensorInAdapter();
+			}
+			@Override
+			public Adapter caseActuatorOut(ActuatorOut object) {
+				return createActuatorOutAdapter();
+			}
+			@Override
+			public Adapter caseBusMasterInterface(BusMasterInterface object) {
+				return createBusMasterInterfaceAdapter();
+			}
+			@Override
+			public Adapter caseBusMasterPort(BusMasterPort object) {
+				return createBusMasterPortAdapter();
+			}
+			@Override
+			public Adapter caseCANBusMasterPort(CANBusMasterPort object) {
+				return createCANBusMasterPortAdapter();
+			}
+			@Override
+			public Adapter caseCANBusMasterInterface(CANBusMasterInterface object) {
+				return createCANBusMasterInterfaceAdapter();
+			}
+			@Override
+			public Adapter caseIIdLabeled(IIdLabeled object) {
+				return createIIdLabeledAdapter();
+			}
+			@Override
+			public Adapter caseINamedElement(INamedElement object) {
+				return createINamedElementAdapter();
+			}
+			@Override
+			public Adapter caseINamedCommentedElement(INamedCommentedElement object) {
+				return createINamedCommentedElementAdapter();
+			}
+			@Override
+			public Adapter caseIHierarchicElementContainer(IHierarchicElementContainer object) {
+				return createIHierarchicElementContainerAdapter();
+			}
+			@Override
+			public Adapter caseIModelElement(IModelElement object) {
+				return createIModelElementAdapter();
+			}
+			@Override
+			public Adapter caseIHierarchicElement(IHierarchicElement object) {
+				return createIHierarchicElementAdapter();
+			}
+			@Override
+			public Adapter caseILayoutedModelElement(ILayoutedModelElement object) {
+				return createILayoutedModelElementAdapter();
+			}
+			@Override
+			public Adapter caseHierarchicElementBase(HierarchicElementBase object) {
+				return createHierarchicElementBaseAdapter();
+			}
+			@Override
+			public Adapter caseISpeciallyCopyiable(ISpeciallyCopyiable object) {
+				return createISpeciallyCopyiableAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformArchitectureElement(IPlatformArchitectureElement object) {
+				return createIPlatformArchitectureElementAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformResource(IPlatformResource object) {
+				return createIPlatformResourceAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformCommunicationResource(IPlatformCommunicationResource object) {
+				return createIPlatformCommunicationResourceAdapter();
+			}
+			@Override
+			public Adapter caseTransmissionUnit(TransmissionUnit object) {
+				return createTransmissionUnitAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformArchitectureElementType(IPlatformArchitectureElementType object) {
+				return createIPlatformArchitectureElementTypeAdapter();
+			}
+			@Override
+			public Adapter caseIPhysicalPlatformArchitectureElement(IPhysicalPlatformArchitectureElement object) {
+				return createIPhysicalPlatformArchitectureElementAdapter();
+			}
+			@Override
+			public Adapter caseIBoardPlatformArchitectureElement(IBoardPlatformArchitectureElement object) {
+				return createIBoardPlatformArchitectureElementAdapter();
+			}
+			@Override
+			public Adapter caseIArchitectureDomain(IArchitectureDomain object) {
+				return createIArchitectureDomainAdapter();
+			}
+			@Override
+			public Adapter caseGenericPlatformUnit(GenericPlatformUnit object) {
+				return createGenericPlatformUnitAdapter();
+			}
+			@Override
+			public Adapter caseICommunicationRole(ICommunicationRole object) {
+				return createICommunicationRoleAdapter();
+			}
+			@Override
+			public Adapter caseICommunicationMaster(ICommunicationMaster object) {
+				return createICommunicationMasterAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformProcessingResource(IPlatformProcessingResource object) {
+				return createIPlatformProcessingResourceAdapter();
+			}
+			@Override
+			public Adapter caseExecutionUnit(ExecutionUnit object) {
+				return createExecutionUnitAdapter();
+			}
+			@Override
+			public Adapter caseIIpCorePlatformArchitectureElement(IIpCorePlatformArchitectureElement object) {
+				return createIIpCorePlatformArchitectureElementAdapter();
+			}
+			@Override
+			public Adapter caseIConnector(IConnector object) {
+				return createIConnectorAdapter();
+			}
+			@Override
+			public Adapter caseConnectorBase(ConnectorBase object) {
+				return createConnectorBaseAdapter();
+			}
+			@Override
+			public Adapter casePlatformConnectorUnit(PlatformConnectorUnit object) {
+				return createPlatformConnectorUnitAdapter();
+			}
+			@Override
+			public Adapter caseReceiver(Receiver object) {
+				return createReceiverAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformConnectorType(IPlatformConnectorType object) {
+				return createIPlatformConnectorTypeAdapter();
+			}
+			@Override
+			public Adapter caseExitConnectorBase(ExitConnectorBase object) {
+				return createExitConnectorBaseAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformPort(IPlatformPort object) {
+				return createIPlatformPortAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformIOResource(IPlatformIOResource object) {
+				return createIPlatformIOResourceAdapter();
+			}
+			@Override
+			public Adapter caseTransmitter(Transmitter object) {
+				return createTransmitterAdapter();
+			}
+			@Override
+			public Adapter caseTransceiver(Transceiver object) {
+				return createTransceiverAdapter();
+			}
+			@Override
+			public Adapter caseEntryConnectorBase(EntryConnectorBase object) {
+				return createEntryConnectorBaseAdapter();
+			}
+			@Override
+			public Adapter caseIPlatformInterface(IPlatformInterface object) {
+				return createIPlatformInterfaceAdapter();
+			}
+			@Override
+			public Adapter defaultCase(EObject object) {
+				return createEObjectAdapter();
+			}
+		};
+
+	/**
+	 * Creates an adapter for the <code>target</code>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param target the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject)target);
+	}
+
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.CANBus <em>CAN Bus</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.CANBus
+	 * @generated
+	 */
+	public Adapter createCANBusAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.IProcessorDomain <em>IProcessor Domain</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.IProcessorDomain
+	 * @generated
+	 */
+	public Adapter createIProcessorDomainAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.IBoardDomain <em>IBoard Domain</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.IBoardDomain
+	 * @generated
+	 */
+	public Adapter createIBoardDomainAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.RaspberryPi1 <em>Raspberry Pi1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.RaspberryPi1
+	 * @generated
+	 */
+	public Adapter createRaspberryPi1Adapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.RaspberryPi2 <em>Raspberry Pi2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.RaspberryPi2
+	 * @generated
+	 */
+	public Adapter createRaspberryPi2Adapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.RaspberryPi3 <em>Raspberry Pi3</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.RaspberryPi3
+	 * @generated
+	 */
+	public Adapter createRaspberryPi3Adapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.Core <em>Core</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.Core
+	 * @generated
+	 */
+	public Adapter createCoreAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.Bus <em>Bus</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.Bus
+	 * @generated
+	 */
+	public Adapter createBusAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.Sensor <em>Sensor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.Sensor
+	 * @generated
+	 */
+	public Adapter createSensorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.Actuator <em>Actuator</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.Actuator
+	 * @generated
+	 */
+	public Adapter createActuatorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.SensorIn <em>Sensor In</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.SensorIn
+	 * @generated
+	 */
+	public Adapter createSensorInAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.ActuatorOut <em>Actuator Out</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.ActuatorOut
+	 * @generated
+	 */
+	public Adapter createActuatorOutAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.BusMasterInterface <em>Bus Master Interface</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.BusMasterInterface
+	 * @generated
+	 */
+	public Adapter createBusMasterInterfaceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.BusMasterPort <em>Bus Master Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.BusMasterPort
+	 * @generated
+	 */
+	public Adapter createBusMasterPortAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.CANBusMasterPort <em>CAN Bus Master Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.CANBusMasterPort
+	 * @generated
+	 */
+	public Adapter createCANBusMasterPortAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.raspberry.model.CANBusMasterInterface <em>CAN Bus Master Interface</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.raspberry.model.CANBusMasterInterface
+	 * @generated
+	 */
+	public Adapter createCANBusMasterInterfaceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.kernel.model.IIdLabeled <em>IId Labeled</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.kernel.model.IIdLabeled
+	 * @generated
+	 */
+	public Adapter createIIdLabeledAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.kernel.model.INamedElement <em>INamed Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.kernel.model.INamedElement
+	 * @generated
+	 */
+	public Adapter createINamedElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.kernel.model.INamedCommentedElement <em>INamed Commented Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.kernel.model.INamedCommentedElement
+	 * @generated
+	 */
+	public Adapter createINamedCommentedElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.element.IHierarchicElementContainer <em>IHierarchic Element Container</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.element.IHierarchicElementContainer
+	 * @generated
+	 */
+	public Adapter createIHierarchicElementContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.element.IModelElement <em>IModel Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.element.IModelElement
+	 * @generated
+	 */
+	public Adapter createIModelElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.element.IHierarchicElement <em>IHierarchic Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.element.IHierarchicElement
+	 * @generated
+	 */
+	public Adapter createIHierarchicElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.layout.ILayoutedModelElement <em>ILayouted Model Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.layout.ILayoutedModelElement
+	 * @generated
+	 */
+	public Adapter createILayoutedModelElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.base.HierarchicElementBase <em>Hierarchic Element Base</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.base.HierarchicElementBase
+	 * @generated
+	 */
+	public Adapter createHierarchicElementBaseAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.kernel.model.ISpeciallyCopyiable <em>ISpecially Copyiable</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.kernel.model.ISpeciallyCopyiable
+	 * @generated
+	 */
+	public Adapter createISpeciallyCopyiableAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformArchitectureElement <em>IPlatform Architecture Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformArchitectureElement
+	 * @generated
+	 */
+	public Adapter createIPlatformArchitectureElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformResource <em>IPlatform Resource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformResource
+	 * @generated
+	 */
+	public Adapter createIPlatformResourceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformCommunicationResource <em>IPlatform Communication Resource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformCommunicationResource
+	 * @generated
+	 */
+	public Adapter createIPlatformCommunicationResourceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.TransmissionUnit <em>Transmission Unit</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.TransmissionUnit
+	 * @generated
+	 */
+	public Adapter createTransmissionUnitAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformArchitectureElementType <em>IPlatform Architecture Element Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformArchitectureElementType
+	 * @generated
+	 */
+	public Adapter createIPlatformArchitectureElementTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPhysicalPlatformArchitectureElement <em>IPhysical Platform Architecture Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPhysicalPlatformArchitectureElement
+	 * @generated
+	 */
+	public Adapter createIPhysicalPlatformArchitectureElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement <em>IBoard Platform Architecture Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement
+	 * @generated
+	 */
+	public Adapter createIBoardPlatformArchitectureElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IArchitectureDomain <em>IArchitecture Domain</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IArchitectureDomain
+	 * @generated
+	 */
+	public Adapter createIArchitectureDomainAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.GenericPlatformUnit <em>Generic Platform Unit</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.GenericPlatformUnit
+	 * @generated
+	 */
+	public Adapter createGenericPlatformUnitAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.ICommunicationRole <em>ICommunication Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.ICommunicationRole
+	 * @generated
+	 */
+	public Adapter createICommunicationRoleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.ICommunicationMaster <em>ICommunication Master</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.ICommunicationMaster
+	 * @generated
+	 */
+	public Adapter createICommunicationMasterAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformProcessingResource <em>IPlatform Processing Resource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformProcessingResource
+	 * @generated
+	 */
+	public Adapter createIPlatformProcessingResourceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.ExecutionUnit <em>Execution Unit</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.ExecutionUnit
+	 * @generated
+	 */
+	public Adapter createExecutionUnitAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement <em>IIp Core Platform Architecture Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement
+	 * @generated
+	 */
+	public Adapter createIIpCorePlatformArchitectureElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.element.IConnector <em>IConnector</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.element.IConnector
+	 * @generated
+	 */
+	public Adapter createIConnectorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.base.ConnectorBase <em>Connector Base</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.base.ConnectorBase
+	 * @generated
+	 */
+	public Adapter createConnectorBaseAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.PlatformConnectorUnit <em>Platform Connector Unit</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.PlatformConnectorUnit
+	 * @generated
+	 */
+	public Adapter createPlatformConnectorUnitAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.Receiver <em>Receiver</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.Receiver
+	 * @generated
+	 */
+	public Adapter createReceiverAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformConnectorType <em>IPlatform Connector Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformConnectorType
+	 * @generated
+	 */
+	public Adapter createIPlatformConnectorTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.base.ExitConnectorBase <em>Exit Connector Base</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.base.ExitConnectorBase
+	 * @generated
+	 */
+	public Adapter createExitConnectorBaseAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformPort <em>IPlatform Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformPort
+	 * @generated
+	 */
+	public Adapter createIPlatformPortAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformIOResource <em>IPlatform IO Resource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformIOResource
+	 * @generated
+	 */
+	public Adapter createIPlatformIOResourceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.Transmitter <em>Transmitter</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.Transmitter
+	 * @generated
+	 */
+	public Adapter createTransmitterAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.Transceiver <em>Transceiver</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.Transceiver
+	 * @generated
+	 */
+	public Adapter createTransceiverAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.tooling.base.model.base.EntryConnectorBase <em>Entry Connector Base</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.tooling.base.model.base.EntryConnectorBase
+	 * @generated
+	 */
+	public Adapter createEntryConnectorBaseAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.fortiss.af3.platform.model.IPlatformInterface <em>IPlatform Interface</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.fortiss.af3.platform.model.IPlatformInterface
+	 * @generated
+	 */
+	public Adapter createIPlatformInterfaceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} //ModelAdapterFactory
diff --git a/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/util/ModelSwitch.java b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/util/ModelSwitch.java
new file mode 100644
index 0000000000000000000000000000000000000000..f6bf4b21f5542b96099f720decfb475e67e19b48
--- /dev/null
+++ b/org.fortiss.af3.platform.raspberry/trunk/generated-src/org/fortiss/af3/platform/raspberry/model/util/ModelSwitch.java
@@ -0,0 +1,1270 @@
+/**
+ */
+package org.fortiss.af3.platform.raspberry.model.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.fortiss.af3.platform.model.ExecutionUnit;
+import org.fortiss.af3.platform.model.GenericPlatformUnit;
+import org.fortiss.af3.platform.model.IArchitectureDomain;
+import org.fortiss.af3.platform.model.IBoardPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.ICommunicationMaster;
+import org.fortiss.af3.platform.model.ICommunicationRole;
+import org.fortiss.af3.platform.model.IIpCorePlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPhysicalPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformArchitectureElement;
+import org.fortiss.af3.platform.model.IPlatformArchitectureElementType;
+import org.fortiss.af3.platform.model.IPlatformCommunicationResource;
+import org.fortiss.af3.platform.model.IPlatformConnectorType;
+import org.fortiss.af3.platform.model.IPlatformIOResource;
+import org.fortiss.af3.platform.model.IPlatformInterface;
+import org.fortiss.af3.platform.model.IPlatformPort;
+import org.fortiss.af3.platform.model.IPlatformProcessingResource;
+import org.fortiss.af3.platform.model.IPlatformResource;
+import org.fortiss.af3.platform.model.PlatformConnectorUnit;
+import org.fortiss.af3.platform.model.Receiver;
+import org.fortiss.af3.platform.model.Transceiver;
+import org.fortiss.af3.platform.model.TransmissionUnit;
+import org.fortiss.af3.platform.model.Transmitter;
+
+import org.fortiss.af3.platform.raspberry.model.*;
+
+import org.fortiss.tooling.base.model.base.ConnectorBase;
+import org.fortiss.tooling.base.model.base.EntryConnectorBase;
+import org.fortiss.tooling.base.model.base.ExitConnectorBase;
+import org.fortiss.tooling.base.model.base.HierarchicElementBase;
+
+import org.fortiss.tooling.base.model.element.IConnector;
+import org.fortiss.tooling.base.model.element.IHierarchicElement;
+import org.fortiss.tooling.base.model.element.IHierarchicElementContainer;
+import org.fortiss.tooling.base.model.element.IModelElement;
+
+import org.fortiss.tooling.base.model.layout.ILayoutedModelElement;
+
+import org.fortiss.tooling.kernel.model.IIdLabeled;
+import org.fortiss.tooling.kernel.model.INamedCommentedElement;
+import org.fortiss.tooling.kernel.model.INamedElement;
+import org.fortiss.tooling.kernel.model.ISpeciallyCopyiable;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.fortiss.af3.platform.raspberry.model.ModelPackage
+ * @generated
+ */
+public class ModelSwitch<T> extends Switch<T> {
+	/**
+	 * The cached model package
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static ModelPackage modelPackage;
+
+	/**
+	 * Creates an instance of the switch.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ModelSwitch() {
+		if (modelPackage == null) {
+			modelPackage = ModelPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @parameter ePackage the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+			case ModelPackage.CAN_BUS: {
+				CANBus canBus = (CANBus)theEObject;
+				T result = caseCANBus(canBus);
+				if (result == null) result = caseTransmissionUnit(canBus);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(canBus);
+				if (result == null) result = caseIBoardDomain(canBus);
+				if (result == null) result = caseIPlatformArchitectureElement(canBus);
+				if (result == null) result = caseIPlatformCommunicationResource(canBus);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(canBus);
+				if (result == null) result = caseIArchitectureDomain(canBus);
+				if (result == null) result = caseHierarchicElementBase(canBus);
+				if (result == null) result = caseISpeciallyCopyiable(canBus);
+				if (result == null) result = caseIPlatformResource(canBus);
+				if (result == null) result = caseIPlatformArchitectureElementType(canBus);
+				if (result == null) result = caseINamedCommentedElement(canBus);
+				if (result == null) result = caseIHierarchicElement(canBus);
+				if (result == null) result = caseILayoutedModelElement(canBus);
+				if (result == null) result = caseINamedElement(canBus);
+				if (result == null) result = caseIHierarchicElementContainer(canBus);
+				if (result == null) result = caseIModelElement(canBus);
+				if (result == null) result = caseIIdLabeled(canBus);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.IPROCESSOR_DOMAIN: {
+				IProcessorDomain iProcessorDomain = (IProcessorDomain)theEObject;
+				T result = caseIProcessorDomain(iProcessorDomain);
+				if (result == null) result = caseIArchitectureDomain(iProcessorDomain);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.IBOARD_DOMAIN: {
+				IBoardDomain iBoardDomain = (IBoardDomain)theEObject;
+				T result = caseIBoardDomain(iBoardDomain);
+				if (result == null) result = caseIArchitectureDomain(iBoardDomain);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.RASPBERRY_PI1: {
+				RaspberryPi1 raspberryPi1 = (RaspberryPi1)theEObject;
+				T result = caseRaspberryPi1(raspberryPi1);
+				if (result == null) result = caseGenericPlatformUnit(raspberryPi1);
+				if (result == null) result = caseICommunicationMaster(raspberryPi1);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(raspberryPi1);
+				if (result == null) result = caseIBoardDomain(raspberryPi1);
+				if (result == null) result = caseIPlatformArchitectureElement(raspberryPi1);
+				if (result == null) result = caseICommunicationRole(raspberryPi1);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(raspberryPi1);
+				if (result == null) result = caseIArchitectureDomain(raspberryPi1);
+				if (result == null) result = caseHierarchicElementBase(raspberryPi1);
+				if (result == null) result = caseISpeciallyCopyiable(raspberryPi1);
+				if (result == null) result = caseIPlatformArchitectureElementType(raspberryPi1);
+				if (result == null) result = caseINamedCommentedElement(raspberryPi1);
+				if (result == null) result = caseIHierarchicElement(raspberryPi1);
+				if (result == null) result = caseILayoutedModelElement(raspberryPi1);
+				if (result == null) result = caseINamedElement(raspberryPi1);
+				if (result == null) result = caseIHierarchicElementContainer(raspberryPi1);
+				if (result == null) result = caseIModelElement(raspberryPi1);
+				if (result == null) result = caseIIdLabeled(raspberryPi1);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.RASPBERRY_PI2: {
+				RaspberryPi2 raspberryPi2 = (RaspberryPi2)theEObject;
+				T result = caseRaspberryPi2(raspberryPi2);
+				if (result == null) result = caseGenericPlatformUnit(raspberryPi2);
+				if (result == null) result = caseICommunicationMaster(raspberryPi2);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(raspberryPi2);
+				if (result == null) result = caseIBoardDomain(raspberryPi2);
+				if (result == null) result = caseIPlatformArchitectureElement(raspberryPi2);
+				if (result == null) result = caseICommunicationRole(raspberryPi2);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(raspberryPi2);
+				if (result == null) result = caseIArchitectureDomain(raspberryPi2);
+				if (result == null) result = caseHierarchicElementBase(raspberryPi2);
+				if (result == null) result = caseISpeciallyCopyiable(raspberryPi2);
+				if (result == null) result = caseIPlatformArchitectureElementType(raspberryPi2);
+				if (result == null) result = caseINamedCommentedElement(raspberryPi2);
+				if (result == null) result = caseIHierarchicElement(raspberryPi2);
+				if (result == null) result = caseILayoutedModelElement(raspberryPi2);
+				if (result == null) result = caseINamedElement(raspberryPi2);
+				if (result == null) result = caseIHierarchicElementContainer(raspberryPi2);
+				if (result == null) result = caseIModelElement(raspberryPi2);
+				if (result == null) result = caseIIdLabeled(raspberryPi2);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.RASPBERRY_PI3: {
+				RaspberryPi3 raspberryPi3 = (RaspberryPi3)theEObject;
+				T result = caseRaspberryPi3(raspberryPi3);
+				if (result == null) result = caseGenericPlatformUnit(raspberryPi3);
+				if (result == null) result = caseICommunicationMaster(raspberryPi3);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(raspberryPi3);
+				if (result == null) result = caseIBoardDomain(raspberryPi3);
+				if (result == null) result = caseIPlatformArchitectureElement(raspberryPi3);
+				if (result == null) result = caseICommunicationRole(raspberryPi3);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(raspberryPi3);
+				if (result == null) result = caseIArchitectureDomain(raspberryPi3);
+				if (result == null) result = caseHierarchicElementBase(raspberryPi3);
+				if (result == null) result = caseISpeciallyCopyiable(raspberryPi3);
+				if (result == null) result = caseIPlatformArchitectureElementType(raspberryPi3);
+				if (result == null) result = caseINamedCommentedElement(raspberryPi3);
+				if (result == null) result = caseIHierarchicElement(raspberryPi3);
+				if (result == null) result = caseILayoutedModelElement(raspberryPi3);
+				if (result == null) result = caseINamedElement(raspberryPi3);
+				if (result == null) result = caseIHierarchicElementContainer(raspberryPi3);
+				if (result == null) result = caseIModelElement(raspberryPi3);
+				if (result == null) result = caseIIdLabeled(raspberryPi3);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.CORE: {
+				Core core = (Core)theEObject;
+				T result = caseCore(core);
+				if (result == null) result = caseExecutionUnit(core);
+				if (result == null) result = caseICommunicationMaster(core);
+				if (result == null) result = caseIIpCorePlatformArchitectureElement(core);
+				if (result == null) result = caseIProcessorDomain(core);
+				if (result == null) result = caseIPlatformArchitectureElement(core);
+				if (result == null) result = caseIPlatformProcessingResource(core);
+				if (result == null) result = caseICommunicationRole(core);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(core);
+				if (result == null) result = caseIArchitectureDomain(core);
+				if (result == null) result = caseHierarchicElementBase(core);
+				if (result == null) result = caseISpeciallyCopyiable(core);
+				if (result == null) result = caseIPlatformResource(core);
+				if (result == null) result = caseIPlatformArchitectureElementType(core);
+				if (result == null) result = caseINamedCommentedElement(core);
+				if (result == null) result = caseIHierarchicElement(core);
+				if (result == null) result = caseILayoutedModelElement(core);
+				if (result == null) result = caseINamedElement(core);
+				if (result == null) result = caseIHierarchicElementContainer(core);
+				if (result == null) result = caseIModelElement(core);
+				if (result == null) result = caseIIdLabeled(core);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.BUS: {
+				Bus bus = (Bus)theEObject;
+				T result = caseBus(bus);
+				if (result == null) result = caseTransmissionUnit(bus);
+				if (result == null) result = caseIIpCorePlatformArchitectureElement(bus);
+				if (result == null) result = caseIProcessorDomain(bus);
+				if (result == null) result = caseIPlatformArchitectureElement(bus);
+				if (result == null) result = caseIPlatformCommunicationResource(bus);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(bus);
+				if (result == null) result = caseIArchitectureDomain(bus);
+				if (result == null) result = caseHierarchicElementBase(bus);
+				if (result == null) result = caseISpeciallyCopyiable(bus);
+				if (result == null) result = caseIPlatformResource(bus);
+				if (result == null) result = caseIPlatformArchitectureElementType(bus);
+				if (result == null) result = caseINamedCommentedElement(bus);
+				if (result == null) result = caseIHierarchicElement(bus);
+				if (result == null) result = caseILayoutedModelElement(bus);
+				if (result == null) result = caseINamedElement(bus);
+				if (result == null) result = caseIHierarchicElementContainer(bus);
+				if (result == null) result = caseIModelElement(bus);
+				if (result == null) result = caseIIdLabeled(bus);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.SENSOR: {
+				Sensor sensor = (Sensor)theEObject;
+				T result = caseSensor(sensor);
+				if (result == null) result = caseReceiver(sensor);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(sensor);
+				if (result == null) result = caseICommunicationMaster(sensor);
+				if (result == null) result = caseIBoardDomain(sensor);
+				if (result == null) result = caseIPlatformPort(sensor);
+				if (result == null) result = caseIPlatformIOResource(sensor);
+				if (result == null) result = casePlatformConnectorUnit(sensor);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(sensor);
+				if (result == null) result = caseICommunicationRole(sensor);
+				if (result == null) result = caseIArchitectureDomain(sensor);
+				if (result == null) result = caseIPlatformConnectorType(sensor);
+				if (result == null) result = caseExitConnectorBase(sensor);
+				if (result == null) result = caseIPlatformResource(sensor);
+				if (result == null) result = caseConnectorBase(sensor);
+				if (result == null) result = caseISpeciallyCopyiable(sensor);
+				if (result == null) result = caseIPlatformArchitectureElementType(sensor);
+				if (result == null) result = caseINamedCommentedElement(sensor);
+				if (result == null) result = caseIConnector(sensor);
+				if (result == null) result = caseILayoutedModelElement(sensor);
+				if (result == null) result = caseINamedElement(sensor);
+				if (result == null) result = caseIModelElement(sensor);
+				if (result == null) result = caseIIdLabeled(sensor);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.ACTUATOR: {
+				Actuator actuator = (Actuator)theEObject;
+				T result = caseActuator(actuator);
+				if (result == null) result = caseTransmitter(actuator);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(actuator);
+				if (result == null) result = caseICommunicationMaster(actuator);
+				if (result == null) result = caseIBoardDomain(actuator);
+				if (result == null) result = caseIPlatformPort(actuator);
+				if (result == null) result = caseIPlatformIOResource(actuator);
+				if (result == null) result = casePlatformConnectorUnit(actuator);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(actuator);
+				if (result == null) result = caseICommunicationRole(actuator);
+				if (result == null) result = caseIArchitectureDomain(actuator);
+				if (result == null) result = caseIPlatformConnectorType(actuator);
+				if (result == null) result = caseExitConnectorBase(actuator);
+				if (result == null) result = caseIPlatformResource(actuator);
+				if (result == null) result = caseConnectorBase(actuator);
+				if (result == null) result = caseISpeciallyCopyiable(actuator);
+				if (result == null) result = caseIPlatformArchitectureElementType(actuator);
+				if (result == null) result = caseINamedCommentedElement(actuator);
+				if (result == null) result = caseIConnector(actuator);
+				if (result == null) result = caseILayoutedModelElement(actuator);
+				if (result == null) result = caseINamedElement(actuator);
+				if (result == null) result = caseIModelElement(actuator);
+				if (result == null) result = caseIIdLabeled(actuator);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.SENSOR_IN: {
+				SensorIn sensorIn = (SensorIn)theEObject;
+				T result = caseSensorIn(sensorIn);
+				if (result == null) result = caseReceiver(sensorIn);
+				if (result == null) result = caseIIpCorePlatformArchitectureElement(sensorIn);
+				if (result == null) result = caseICommunicationMaster(sensorIn);
+				if (result == null) result = caseIProcessorDomain(sensorIn);
+				if (result == null) result = caseIPlatformPort(sensorIn);
+				if (result == null) result = caseIPlatformIOResource(sensorIn);
+				if (result == null) result = casePlatformConnectorUnit(sensorIn);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(sensorIn);
+				if (result == null) result = caseICommunicationRole(sensorIn);
+				if (result == null) result = caseIArchitectureDomain(sensorIn);
+				if (result == null) result = caseIPlatformConnectorType(sensorIn);
+				if (result == null) result = caseExitConnectorBase(sensorIn);
+				if (result == null) result = caseIPlatformResource(sensorIn);
+				if (result == null) result = caseConnectorBase(sensorIn);
+				if (result == null) result = caseISpeciallyCopyiable(sensorIn);
+				if (result == null) result = caseIPlatformArchitectureElementType(sensorIn);
+				if (result == null) result = caseINamedCommentedElement(sensorIn);
+				if (result == null) result = caseIConnector(sensorIn);
+				if (result == null) result = caseILayoutedModelElement(sensorIn);
+				if (result == null) result = caseINamedElement(sensorIn);
+				if (result == null) result = caseIModelElement(sensorIn);
+				if (result == null) result = caseIIdLabeled(sensorIn);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.ACTUATOR_OUT: {
+				ActuatorOut actuatorOut = (ActuatorOut)theEObject;
+				T result = caseActuatorOut(actuatorOut);
+				if (result == null) result = caseTransmitter(actuatorOut);
+				if (result == null) result = caseIIpCorePlatformArchitectureElement(actuatorOut);
+				if (result == null) result = caseICommunicationMaster(actuatorOut);
+				if (result == null) result = caseIProcessorDomain(actuatorOut);
+				if (result == null) result = caseIPlatformPort(actuatorOut);
+				if (result == null) result = caseIPlatformIOResource(actuatorOut);
+				if (result == null) result = casePlatformConnectorUnit(actuatorOut);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(actuatorOut);
+				if (result == null) result = caseICommunicationRole(actuatorOut);
+				if (result == null) result = caseIArchitectureDomain(actuatorOut);
+				if (result == null) result = caseIPlatformConnectorType(actuatorOut);
+				if (result == null) result = caseExitConnectorBase(actuatorOut);
+				if (result == null) result = caseIPlatformResource(actuatorOut);
+				if (result == null) result = caseConnectorBase(actuatorOut);
+				if (result == null) result = caseISpeciallyCopyiable(actuatorOut);
+				if (result == null) result = caseIPlatformArchitectureElementType(actuatorOut);
+				if (result == null) result = caseINamedCommentedElement(actuatorOut);
+				if (result == null) result = caseIConnector(actuatorOut);
+				if (result == null) result = caseILayoutedModelElement(actuatorOut);
+				if (result == null) result = caseINamedElement(actuatorOut);
+				if (result == null) result = caseIModelElement(actuatorOut);
+				if (result == null) result = caseIIdLabeled(actuatorOut);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.BUS_MASTER_INTERFACE: {
+				BusMasterInterface busMasterInterface = (BusMasterInterface)theEObject;
+				T result = caseBusMasterInterface(busMasterInterface);
+				if (result == null) result = caseTransceiver(busMasterInterface);
+				if (result == null) result = caseIIpCorePlatformArchitectureElement(busMasterInterface);
+				if (result == null) result = caseIPlatformInterface(busMasterInterface);
+				if (result == null) result = caseICommunicationMaster(busMasterInterface);
+				if (result == null) result = caseIProcessorDomain(busMasterInterface);
+				if (result == null) result = casePlatformConnectorUnit(busMasterInterface);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(busMasterInterface);
+				if (result == null) result = caseIPlatformConnectorType(busMasterInterface);
+				if (result == null) result = caseEntryConnectorBase(busMasterInterface);
+				if (result == null) result = caseICommunicationRole(busMasterInterface);
+				if (result == null) result = caseIArchitectureDomain(busMasterInterface);
+				if (result == null) result = caseConnectorBase(busMasterInterface);
+				if (result == null) result = caseISpeciallyCopyiable(busMasterInterface);
+				if (result == null) result = caseIPlatformArchitectureElementType(busMasterInterface);
+				if (result == null) result = caseINamedCommentedElement(busMasterInterface);
+				if (result == null) result = caseIConnector(busMasterInterface);
+				if (result == null) result = caseILayoutedModelElement(busMasterInterface);
+				if (result == null) result = caseINamedElement(busMasterInterface);
+				if (result == null) result = caseIModelElement(busMasterInterface);
+				if (result == null) result = caseIIdLabeled(busMasterInterface);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.BUS_MASTER_PORT: {
+				BusMasterPort busMasterPort = (BusMasterPort)theEObject;
+				T result = caseBusMasterPort(busMasterPort);
+				if (result == null) result = caseTransceiver(busMasterPort);
+				if (result == null) result = caseIIpCorePlatformArchitectureElement(busMasterPort);
+				if (result == null) result = caseIPlatformPort(busMasterPort);
+				if (result == null) result = caseICommunicationMaster(busMasterPort);
+				if (result == null) result = caseIProcessorDomain(busMasterPort);
+				if (result == null) result = casePlatformConnectorUnit(busMasterPort);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(busMasterPort);
+				if (result == null) result = caseIPlatformConnectorType(busMasterPort);
+				if (result == null) result = caseExitConnectorBase(busMasterPort);
+				if (result == null) result = caseICommunicationRole(busMasterPort);
+				if (result == null) result = caseIArchitectureDomain(busMasterPort);
+				if (result == null) result = caseConnectorBase(busMasterPort);
+				if (result == null) result = caseISpeciallyCopyiable(busMasterPort);
+				if (result == null) result = caseIPlatformArchitectureElementType(busMasterPort);
+				if (result == null) result = caseINamedCommentedElement(busMasterPort);
+				if (result == null) result = caseIConnector(busMasterPort);
+				if (result == null) result = caseILayoutedModelElement(busMasterPort);
+				if (result == null) result = caseINamedElement(busMasterPort);
+				if (result == null) result = caseIModelElement(busMasterPort);
+				if (result == null) result = caseIIdLabeled(busMasterPort);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.CAN_BUS_MASTER_PORT: {
+				CANBusMasterPort canBusMasterPort = (CANBusMasterPort)theEObject;
+				T result = caseCANBusMasterPort(canBusMasterPort);
+				if (result == null) result = caseTransceiver(canBusMasterPort);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(canBusMasterPort);
+				if (result == null) result = caseIPlatformPort(canBusMasterPort);
+				if (result == null) result = caseICommunicationMaster(canBusMasterPort);
+				if (result == null) result = caseIBoardDomain(canBusMasterPort);
+				if (result == null) result = casePlatformConnectorUnit(canBusMasterPort);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(canBusMasterPort);
+				if (result == null) result = caseIPlatformConnectorType(canBusMasterPort);
+				if (result == null) result = caseExitConnectorBase(canBusMasterPort);
+				if (result == null) result = caseICommunicationRole(canBusMasterPort);
+				if (result == null) result = caseIArchitectureDomain(canBusMasterPort);
+				if (result == null) result = caseConnectorBase(canBusMasterPort);
+				if (result == null) result = caseISpeciallyCopyiable(canBusMasterPort);
+				if (result == null) result = caseIPlatformArchitectureElementType(canBusMasterPort);
+				if (result == null) result = caseINamedCommentedElement(canBusMasterPort);
+				if (result == null) result = caseIConnector(canBusMasterPort);
+				if (result == null) result = caseILayoutedModelElement(canBusMasterPort);
+				if (result == null) result = caseINamedElement(canBusMasterPort);
+				if (result == null) result = caseIModelElement(canBusMasterPort);
+				if (result == null) result = caseIIdLabeled(canBusMasterPort);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case ModelPackage.CAN_BUS_MASTER_INTERFACE: {
+				CANBusMasterInterface canBusMasterInterface = (CANBusMasterInterface)theEObject;
+				T result = caseCANBusMasterInterface(canBusMasterInterface);
+				if (result == null) result = caseTransceiver(canBusMasterInterface);
+				if (result == null) result = caseIBoardPlatformArchitectureElement(canBusMasterInterface);
+				if (result == null) result = caseIPlatformInterface(canBusMasterInterface);
+				if (result == null) result = caseICommunicationMaster(canBusMasterInterface);
+				if (result == null) result = caseIBoardDomain(canBusMasterInterface);
+				if (result == null) result = casePlatformConnectorUnit(canBusMasterInterface);
+				if (result == null) result = caseIPhysicalPlatformArchitectureElement(canBusMasterInterface);
+				if (result == null) result = caseIPlatformConnectorType(canBusMasterInterface);
+				if (result == null) result = caseEntryConnectorBase(canBusMasterInterface);
+				if (result == null) result = caseICommunicationRole(canBusMasterInterface);
+				if (result == null) result = caseIArchitectureDomain(canBusMasterInterface);
+				if (result == null) result = caseConnectorBase(canBusMasterInterface);
+				if (result == null) result = caseISpeciallyCopyiable(canBusMasterInterface);
+				if (result == null) result = caseIPlatformArchitectureElementType(canBusMasterInterface);
+				if (result == null) result = caseINamedCommentedElement(canBusMasterInterface);
+				if (result == null) result = caseIConnector(canBusMasterInterface);
+				if (result == null) result = caseILayoutedModelElement(canBusMasterInterface);
+				if (result == null) result = caseINamedElement(canBusMasterInterface);
+				if (result == null) result = caseIModelElement(canBusMasterInterface);
+				if (result == null) result = caseIIdLabeled(canBusMasterInterface);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			default: return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CAN Bus</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CAN Bus</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCANBus(CANBus object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IProcessor Domain</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IProcessor Domain</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIProcessorDomain(IProcessorDomain object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IBoard Domain</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IBoard Domain</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIBoardDomain(IBoardDomain object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Raspberry Pi1</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Raspberry Pi1</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRaspberryPi1(RaspberryPi1 object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Raspberry Pi2</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Raspberry Pi2</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRaspberryPi2(RaspberryPi2 object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Raspberry Pi3</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Raspberry Pi3</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRaspberryPi3(RaspberryPi3 object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Core</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Core</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCore(Core object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Bus</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Bus</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseBus(Bus object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Sensor</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Sensor</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSensor(Sensor object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Actuator</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Actuator</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseActuator(Actuator object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Sensor In</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Sensor In</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSensorIn(SensorIn object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Actuator Out</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Actuator Out</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseActuatorOut(ActuatorOut object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Bus Master Interface</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Bus Master Interface</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseBusMasterInterface(BusMasterInterface object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Bus Master Port</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Bus Master Port</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseBusMasterPort(BusMasterPort object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CAN Bus Master Port</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CAN Bus Master Port</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCANBusMasterPort(CANBusMasterPort object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CAN Bus Master Interface</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CAN Bus Master Interface</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCANBusMasterInterface(CANBusMasterInterface object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IId Labeled</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IId Labeled</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIIdLabeled(IIdLabeled object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>INamed Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>INamed Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseINamedElement(INamedElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>INamed Commented Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>INamed Commented Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseINamedCommentedElement(INamedCommentedElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IHierarchic Element Container</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IHierarchic Element Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIHierarchicElementContainer(IHierarchicElementContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IModel Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IModel Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIModelElement(IModelElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IHierarchic Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IHierarchic Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIHierarchicElement(IHierarchicElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ILayouted Model Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>ILayouted Model Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseILayoutedModelElement(ILayoutedModelElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Hierarchic Element Base</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Hierarchic Element Base</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseHierarchicElementBase(HierarchicElementBase object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ISpecially Copyiable</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>ISpecially Copyiable</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseISpeciallyCopyiable(ISpeciallyCopyiable object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Architecture Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Architecture Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformArchitectureElement(IPlatformArchitectureElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Resource</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Resource</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformResource(IPlatformResource object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Communication Resource</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Communication Resource</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformCommunicationResource(IPlatformCommunicationResource object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Transmission Unit</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Transmission Unit</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTransmissionUnit(TransmissionUnit object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Architecture Element Type</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Architecture Element Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformArchitectureElementType(IPlatformArchitectureElementType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPhysical Platform Architecture Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPhysical Platform Architecture Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPhysicalPlatformArchitectureElement(IPhysicalPlatformArchitectureElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IBoard Platform Architecture Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IBoard Platform Architecture Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIBoardPlatformArchitectureElement(IBoardPlatformArchitectureElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IArchitecture Domain</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IArchitecture Domain</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIArchitectureDomain(IArchitectureDomain object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Generic Platform Unit</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Generic Platform Unit</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseGenericPlatformUnit(GenericPlatformUnit object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICommunication Role</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>ICommunication Role</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICommunicationRole(ICommunicationRole object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICommunication Master</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>ICommunication Master</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICommunicationMaster(ICommunicationMaster object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Processing Resource</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Processing Resource</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformProcessingResource(IPlatformProcessingResource object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Execution Unit</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Execution Unit</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseExecutionUnit(ExecutionUnit object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IIp Core Platform Architecture Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IIp Core Platform Architecture Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIIpCorePlatformArchitectureElement(IIpCorePlatformArchitectureElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IConnector</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IConnector</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIConnector(IConnector object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Connector Base</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Connector Base</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConnectorBase(ConnectorBase object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Platform Connector Unit</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Platform Connector Unit</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T casePlatformConnectorUnit(PlatformConnectorUnit object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Receiver</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Receiver</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseReceiver(Receiver object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Connector Type</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Connector Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformConnectorType(IPlatformConnectorType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Exit Connector Base</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Exit Connector Base</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseExitConnectorBase(ExitConnectorBase object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Port</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Port</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformPort(IPlatformPort object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform IO Resource</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform IO Resource</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformIOResource(IPlatformIOResource object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Transmitter</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Transmitter</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTransmitter(Transmitter object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Transceiver</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Transceiver</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTransceiver(Transceiver object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Entry Connector Base</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Entry Connector Base</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEntryConnectorBase(EntryConnectorBase object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPlatform Interface</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IPlatform Interface</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPlatformInterface(IPlatformInterface object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch, but this is the last case anyway.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} //ModelSwitch