Fixed configuration of SLG commons
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/.gitignore b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/.gitignore
deleted file mode 100644
index 49f394f..0000000
--- a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-src-gen
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/CodeHooks.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/CodeHooks.java
new file mode 100644
index 0000000..377c4e8
--- /dev/null
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/CodeHooks.java
@@ -0,0 +1,80 @@
+/**
+ * *******************************************************************************
+ *  Copyright (c) 2020 Robert Bosch GmbH and others.
+ * 
+ *  This program and the accompanying materials are made
+ *  available under the terms of the Eclipse Public License 2.0
+ *  which is available at https://www.eclipse.org/legal/epl-2.0/
+ * 
+ *  SPDX-License-Identifier: EPL-2.0
+ * 
+ *     Generated using Eclipse EMF
+ * 
+ * *******************************************************************************
+ */
+package org.eclipse.app4mc.slg.config;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Code Hooks</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.app4mc.slg.config.CodeHooks#getLibLocations <em>Lib Locations</em>}</li>
+ *   <li>{@link org.eclipse.app4mc.slg.config.CodeHooks#getHeaderFiles <em>Header Files</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getCodeHooks()
+ * @model
+ * @generated
+ */
+public interface CodeHooks extends EObject {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String copyright = "*******************************************************************************\n Copyright (c) 2020 Robert Bosch GmbH and others.\n\n This program and the accompanying materials are made\n available under the terms of the Eclipse Public License 2.0\n which is available at https://www.eclipse.org/legal/epl-2.0/\n\n SPDX-License-Identifier: EPL-2.0\n\n    Generated using Eclipse EMF\n\n*******************************************************************************";
+
+	/**
+	 * Returns the value of the '<em><b>Lib Locations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Lib Locations</em>' containment reference.
+	 * @see #setLibLocations(LibLocations)
+	 * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getCodeHooks_LibLocations()
+	 * @model containment="true"
+	 * @generated
+	 */
+	LibLocations getLibLocations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.app4mc.slg.config.CodeHooks#getLibLocations <em>Lib Locations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Lib Locations</em>' containment reference.
+	 * @see #getLibLocations()
+	 * @generated
+	 */
+	void setLibLocations(LibLocations value);
+
+	/**
+	 * Returns the value of the '<em><b>Header Files</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.app4mc.slg.config.HeaderFiles}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Header Files</em>' containment reference list.
+	 * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getCodeHooks_HeaderFiles()
+	 * @model containment="true"
+	 * @generated
+	 */
+	EList<HeaderFiles> getHeaderFiles();
+
+} // CodeHooks
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/CodehookType.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/CodehookType.java
new file mode 100644
index 0000000..2abf9ce
--- /dev/null
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/CodehookType.java
@@ -0,0 +1,227 @@
+/**
+ * *******************************************************************************
+ *  Copyright (c) 2020 Robert Bosch GmbH and others.
+ * 
+ *  This program and the accompanying materials are made
+ *  available under the terms of the Eclipse Public License 2.0
+ *  which is available at https://www.eclipse.org/legal/epl-2.0/
+ * 
+ *  SPDX-License-Identifier: EPL-2.0
+ * 
+ *     Generated using Eclipse EMF
+ * 
+ * *******************************************************************************
+ */
+package org.eclipse.app4mc.slg.config;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Codehook Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getCodehookType()
+ * @model
+ * @generated
+ */
+public enum CodehookType implements Enumerator {
+	/**
+	 * The '<em><b>Runnable</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #RUNNABLE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	RUNNABLE(0, "Runnable", "Runnable"),
+
+	/**
+	 * The '<em><b>Task</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #TASK_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	TASK(0, "Task", "Task");
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final String copyright = "*******************************************************************************\n Copyright (c) 2020 Robert Bosch GmbH and others.\n\n This program and the accompanying materials are made\n available under the terms of the Eclipse Public License 2.0\n which is available at https://www.eclipse.org/legal/epl-2.0/\n\n SPDX-License-Identifier: EPL-2.0\n\n    Generated using Eclipse EMF\n\n*******************************************************************************";
+
+	/**
+	 * The '<em><b>Runnable</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #RUNNABLE
+	 * @model name="Runnable"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int RUNNABLE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Task</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #TASK
+	 * @model name="Task"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int TASK_VALUE = 0;
+
+	/**
+	 * An array of all the '<em><b>Codehook Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static final CodehookType[] VALUES_ARRAY =
+		new CodehookType[] {
+			RUNNABLE,
+			TASK,
+		};
+
+	/**
+	 * A public read-only list of all the '<em><b>Codehook Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final List<CodehookType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Codehook Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param literal the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static CodehookType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			CodehookType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Codehook Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param name the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static CodehookType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			CodehookType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Codehook Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static CodehookType get(int value) {
+		switch (value) {
+			case RUNNABLE_VALUE: return RUNNABLE;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private CodehookType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int getValue() {
+	  return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getName() {
+	  return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getLiteral() {
+	  return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+	
+} //CodehookType
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/HeaderFiles.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/HeaderFiles.java
new file mode 100644
index 0000000..8eb4d1e
--- /dev/null
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/HeaderFiles.java
@@ -0,0 +1,83 @@
+/**
+ * *******************************************************************************
+ *  Copyright (c) 2020 Robert Bosch GmbH and others.
+ * 
+ *  This program and the accompanying materials are made
+ *  available under the terms of the Eclipse Public License 2.0
+ *  which is available at https://www.eclipse.org/legal/epl-2.0/
+ * 
+ *  SPDX-License-Identifier: EPL-2.0
+ * 
+ *     Generated using Eclipse EMF
+ * 
+ * *******************************************************************************
+ */
+package org.eclipse.app4mc.slg.config;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Header Files</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.app4mc.slg.config.HeaderFiles#getCodehookType <em>Codehook Type</em>}</li>
+ *   <li>{@link org.eclipse.app4mc.slg.config.HeaderFiles#getHeaderFilesDirectories <em>Header Files Directories</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getHeaderFiles()
+ * @model
+ * @generated
+ */
+public interface HeaderFiles extends EObject {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String copyright = "*******************************************************************************\n Copyright (c) 2020 Robert Bosch GmbH and others.\n\n This program and the accompanying materials are made\n available under the terms of the Eclipse Public License 2.0\n which is available at https://www.eclipse.org/legal/epl-2.0/\n\n SPDX-License-Identifier: EPL-2.0\n\n    Generated using Eclipse EMF\n\n*******************************************************************************";
+
+	/**
+	 * Returns the value of the '<em><b>Codehook Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.app4mc.slg.config.CodehookType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Codehook Type</em>' attribute.
+	 * @see org.eclipse.app4mc.slg.config.CodehookType
+	 * @see #setCodehookType(CodehookType)
+	 * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getHeaderFiles_CodehookType()
+	 * @model
+	 * @generated
+	 */
+	CodehookType getCodehookType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.app4mc.slg.config.HeaderFiles#getCodehookType <em>Codehook Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Codehook Type</em>' attribute.
+	 * @see org.eclipse.app4mc.slg.config.CodehookType
+	 * @see #getCodehookType()
+	 * @generated
+	 */
+	void setCodehookType(CodehookType value);
+
+	/**
+	 * Returns the value of the '<em><b>Header Files Directories</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Header Files Directories</em>' attribute list.
+	 * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getHeaderFiles_HeaderFilesDirectories()
+	 * @model
+	 * @generated
+	 */
+	EList<String> getHeaderFilesDirectories();
+
+} // HeaderFiles
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/LibLocations.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/LibLocations.java
new file mode 100644
index 0000000..8ec8f60
--- /dev/null
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/LibLocations.java
@@ -0,0 +1,57 @@
+/**
+ * *******************************************************************************
+ *  Copyright (c) 2020 Robert Bosch GmbH and others.
+ * 
+ *  This program and the accompanying materials are made
+ *  available under the terms of the Eclipse Public License 2.0
+ *  which is available at https://www.eclipse.org/legal/epl-2.0/
+ * 
+ *  SPDX-License-Identifier: EPL-2.0
+ * 
+ *     Generated using Eclipse EMF
+ * 
+ * *******************************************************************************
+ */
+package org.eclipse.app4mc.slg.config;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Lib Locations</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.app4mc.slg.config.LibLocations#getLinkedLibraries <em>Linked Libraries</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getLibLocations()
+ * @model
+ * @generated
+ */
+public interface LibLocations extends EObject {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String copyright = "*******************************************************************************\n Copyright (c) 2020 Robert Bosch GmbH and others.\n\n This program and the accompanying materials are made\n available under the terms of the Eclipse Public License 2.0\n which is available at https://www.eclipse.org/legal/epl-2.0/\n\n SPDX-License-Identifier: EPL-2.0\n\n    Generated using Eclipse EMF\n\n*******************************************************************************";
+
+	/**
+	 * Returns the value of the '<em><b>Linked Libraries</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Linked Libraries</em>' attribute list.
+	 * @see org.eclipse.app4mc.slg.config.ConfigurationPackage#getLibLocations_LinkedLibraries()
+	 * @model
+	 * @generated
+	 */
+	EList<String> getLinkedLibraries();
+
+} // LibLocations
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/CodeHooksImpl.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/CodeHooksImpl.java
new file mode 100644
index 0000000..ee93e8f
--- /dev/null
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/CodeHooksImpl.java
@@ -0,0 +1,243 @@
+/**
+ * *******************************************************************************
+ *  Copyright (c) 2020 Robert Bosch GmbH and others.
+ * 
+ *  This program and the accompanying materials are made
+ *  available under the terms of the Eclipse Public License 2.0
+ *  which is available at https://www.eclipse.org/legal/epl-2.0/
+ * 
+ *  SPDX-License-Identifier: EPL-2.0
+ * 
+ *     Generated using Eclipse EMF
+ * 
+ * *******************************************************************************
+ */
+package org.eclipse.app4mc.slg.config.impl;
+
+import java.util.Collection;
+
+import org.eclipse.app4mc.slg.config.CodeHooks;
+import org.eclipse.app4mc.slg.config.ConfigurationPackage;
+import org.eclipse.app4mc.slg.config.HeaderFiles;
+import org.eclipse.app4mc.slg.config.LibLocations;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Code Hooks</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.app4mc.slg.config.impl.CodeHooksImpl#getLibLocations <em>Lib Locations</em>}</li>
+ *   <li>{@link org.eclipse.app4mc.slg.config.impl.CodeHooksImpl#getHeaderFiles <em>Header Files</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CodeHooksImpl extends MinimalEObjectImpl.Container implements CodeHooks {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final String copyright = "*******************************************************************************\n Copyright (c) 2020 Robert Bosch GmbH and others.\n\n This program and the accompanying materials are made\n available under the terms of the Eclipse Public License 2.0\n which is available at https://www.eclipse.org/legal/epl-2.0/\n\n SPDX-License-Identifier: EPL-2.0\n\n    Generated using Eclipse EMF\n\n*******************************************************************************";
+
+	/**
+	 * The cached value of the '{@link #getLibLocations() <em>Lib Locations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLibLocations()
+	 * @generated
+	 * @ordered
+	 */
+	protected LibLocations libLocations;
+
+	/**
+	 * The cached value of the '{@link #getHeaderFiles() <em>Header Files</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHeaderFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<HeaderFiles> headerFiles;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CodeHooksImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ConfigurationPackage.Literals.CODE_HOOKS;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public LibLocations getLibLocations() {
+		return libLocations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetLibLocations(LibLocations newLibLocations, NotificationChain msgs) {
+		LibLocations oldLibLocations = libLocations;
+		libLocations = newLibLocations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS, oldLibLocations, newLibLocations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setLibLocations(LibLocations newLibLocations) {
+		if (newLibLocations != libLocations) {
+			NotificationChain msgs = null;
+			if (libLocations != null)
+				msgs = ((InternalEObject)libLocations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS, null, msgs);
+			if (newLibLocations != null)
+				msgs = ((InternalEObject)newLibLocations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS, null, msgs);
+			msgs = basicSetLibLocations(newLibLocations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS, newLibLocations, newLibLocations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public EList<HeaderFiles> getHeaderFiles() {
+		if (headerFiles == null) {
+			headerFiles = new EObjectContainmentEList<HeaderFiles>(HeaderFiles.class, this, ConfigurationPackage.CODE_HOOKS__HEADER_FILES);
+		}
+		return headerFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS:
+				return basicSetLibLocations(null, msgs);
+			case ConfigurationPackage.CODE_HOOKS__HEADER_FILES:
+				return ((InternalEList<?>)getHeaderFiles()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS:
+				return getLibLocations();
+			case ConfigurationPackage.CODE_HOOKS__HEADER_FILES:
+				return getHeaderFiles();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS:
+				setLibLocations((LibLocations)newValue);
+				return;
+			case ConfigurationPackage.CODE_HOOKS__HEADER_FILES:
+				getHeaderFiles().clear();
+				getHeaderFiles().addAll((Collection<? extends HeaderFiles>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS:
+				setLibLocations((LibLocations)null);
+				return;
+			case ConfigurationPackage.CODE_HOOKS__HEADER_FILES:
+				getHeaderFiles().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case ConfigurationPackage.CODE_HOOKS__LIB_LOCATIONS:
+				return libLocations != null;
+			case ConfigurationPackage.CODE_HOOKS__HEADER_FILES:
+				return headerFiles != null && !headerFiles.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //CodeHooksImpl
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/HeaderFilesImpl.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/HeaderFilesImpl.java
new file mode 100644
index 0000000..002787a
--- /dev/null
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/HeaderFilesImpl.java
@@ -0,0 +1,229 @@
+/**
+ * *******************************************************************************
+ *  Copyright (c) 2020 Robert Bosch GmbH and others.
+ * 
+ *  This program and the accompanying materials are made
+ *  available under the terms of the Eclipse Public License 2.0
+ *  which is available at https://www.eclipse.org/legal/epl-2.0/
+ * 
+ *  SPDX-License-Identifier: EPL-2.0
+ * 
+ *     Generated using Eclipse EMF
+ * 
+ * *******************************************************************************
+ */
+package org.eclipse.app4mc.slg.config.impl;
+
+import java.util.Collection;
+
+import org.eclipse.app4mc.slg.config.CodehookType;
+import org.eclipse.app4mc.slg.config.ConfigurationPackage;
+import org.eclipse.app4mc.slg.config.HeaderFiles;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Header Files</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.app4mc.slg.config.impl.HeaderFilesImpl#getCodehookType <em>Codehook Type</em>}</li>
+ *   <li>{@link org.eclipse.app4mc.slg.config.impl.HeaderFilesImpl#getHeaderFilesDirectories <em>Header Files Directories</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class HeaderFilesImpl extends MinimalEObjectImpl.Container implements HeaderFiles {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final String copyright = "*******************************************************************************\n Copyright (c) 2020 Robert Bosch GmbH and others.\n\n This program and the accompanying materials are made\n available under the terms of the Eclipse Public License 2.0\n which is available at https://www.eclipse.org/legal/epl-2.0/\n\n SPDX-License-Identifier: EPL-2.0\n\n    Generated using Eclipse EMF\n\n*******************************************************************************";
+
+	/**
+	 * The default value of the '{@link #getCodehookType() <em>Codehook Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodehookType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final CodehookType CODEHOOK_TYPE_EDEFAULT = CodehookType.RUNNABLE;
+
+	/**
+	 * The cached value of the '{@link #getCodehookType() <em>Codehook Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodehookType()
+	 * @generated
+	 * @ordered
+	 */
+	protected CodehookType codehookType = CODEHOOK_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getHeaderFilesDirectories() <em>Header Files Directories</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHeaderFilesDirectories()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> headerFilesDirectories;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected HeaderFilesImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ConfigurationPackage.Literals.HEADER_FILES;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public CodehookType getCodehookType() {
+		return codehookType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setCodehookType(CodehookType newCodehookType) {
+		CodehookType oldCodehookType = codehookType;
+		codehookType = newCodehookType == null ? CODEHOOK_TYPE_EDEFAULT : newCodehookType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, ConfigurationPackage.HEADER_FILES__CODEHOOK_TYPE, oldCodehookType, codehookType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public EList<String> getHeaderFilesDirectories() {
+		if (headerFilesDirectories == null) {
+			headerFilesDirectories = new EDataTypeUniqueEList<String>(String.class, this, ConfigurationPackage.HEADER_FILES__HEADER_FILES_DIRECTORIES);
+		}
+		return headerFilesDirectories;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case ConfigurationPackage.HEADER_FILES__CODEHOOK_TYPE:
+				return getCodehookType();
+			case ConfigurationPackage.HEADER_FILES__HEADER_FILES_DIRECTORIES:
+				return getHeaderFilesDirectories();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case ConfigurationPackage.HEADER_FILES__CODEHOOK_TYPE:
+				setCodehookType((CodehookType)newValue);
+				return;
+			case ConfigurationPackage.HEADER_FILES__HEADER_FILES_DIRECTORIES:
+				getHeaderFilesDirectories().clear();
+				getHeaderFilesDirectories().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case ConfigurationPackage.HEADER_FILES__CODEHOOK_TYPE:
+				setCodehookType(CODEHOOK_TYPE_EDEFAULT);
+				return;
+			case ConfigurationPackage.HEADER_FILES__HEADER_FILES_DIRECTORIES:
+				getHeaderFilesDirectories().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case ConfigurationPackage.HEADER_FILES__CODEHOOK_TYPE:
+				return codehookType != CODEHOOK_TYPE_EDEFAULT;
+			case ConfigurationPackage.HEADER_FILES__HEADER_FILES_DIRECTORIES:
+				return headerFilesDirectories != null && !headerFilesDirectories.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (codehookType: ");
+		result.append(codehookType);
+		result.append(", headerFilesDirectories: ");
+		result.append(headerFilesDirectories);
+		result.append(')');
+		return result.toString();
+	}
+
+} //HeaderFilesImpl
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/LibLocationsImpl.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/LibLocationsImpl.java
new file mode 100644
index 0000000..ad495c4
--- /dev/null
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.config/src-gen/org/eclipse/app4mc/slg/config/impl/LibLocationsImpl.java
@@ -0,0 +1,169 @@
+/**
+ * *******************************************************************************
+ *  Copyright (c) 2020 Robert Bosch GmbH and others.
+ * 
+ *  This program and the accompanying materials are made
+ *  available under the terms of the Eclipse Public License 2.0
+ *  which is available at https://www.eclipse.org/legal/epl-2.0/
+ * 
+ *  SPDX-License-Identifier: EPL-2.0
+ * 
+ *     Generated using Eclipse EMF
+ * 
+ * *******************************************************************************
+ */
+package org.eclipse.app4mc.slg.config.impl;
+
+import java.util.Collection;
+
+import org.eclipse.app4mc.slg.config.ConfigurationPackage;
+import org.eclipse.app4mc.slg.config.LibLocations;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Lib Locations</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.app4mc.slg.config.impl.LibLocationsImpl#getLinkedLibraries <em>Linked Libraries</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LibLocationsImpl extends MinimalEObjectImpl.Container implements LibLocations {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final String copyright = "*******************************************************************************\n Copyright (c) 2020 Robert Bosch GmbH and others.\n\n This program and the accompanying materials are made\n available under the terms of the Eclipse Public License 2.0\n which is available at https://www.eclipse.org/legal/epl-2.0/\n\n SPDX-License-Identifier: EPL-2.0\n\n    Generated using Eclipse EMF\n\n*******************************************************************************";
+
+	/**
+	 * The cached value of the '{@link #getLinkedLibraries() <em>Linked Libraries</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkedLibraries()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> linkedLibraries;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected LibLocationsImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return ConfigurationPackage.Literals.LIB_LOCATIONS;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public EList<String> getLinkedLibraries() {
+		if (linkedLibraries == null) {
+			linkedLibraries = new EDataTypeUniqueEList<String>(String.class, this, ConfigurationPackage.LIB_LOCATIONS__LINKED_LIBRARIES);
+		}
+		return linkedLibraries;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case ConfigurationPackage.LIB_LOCATIONS__LINKED_LIBRARIES:
+				return getLinkedLibraries();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case ConfigurationPackage.LIB_LOCATIONS__LINKED_LIBRARIES:
+				getLinkedLibraries().clear();
+				getLinkedLibraries().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case ConfigurationPackage.LIB_LOCATIONS__LINKED_LIBRARIES:
+				getLinkedLibraries().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case ConfigurationPackage.LIB_LOCATIONS__LINKED_LIBRARIES:
+				return linkedLibraries != null && !linkedLibraries.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (linkedLibraries: ");
+		result.append(linkedLibraries);
+		result.append(')');
+		return result.toString();
+	}
+
+} //LibLocationsImpl