/**
 */
package org.eclipse.papyrus.RobotML.impl;

import org.eclipse.emf.ecore.EClass;
import org.eclipse.papyrus.RobotML.RobotMLPackage;
import org.eclipse.papyrus.RobotML.RoboticSimulator;

/**
 * <!-- begin-user-doc -->
 * An implementation of the model object '<em><b>Robotic Simulator</b></em>'.
 * <!-- end-user-doc -->
 *
 * @generated
 */
public class RoboticSimulatorImpl extends PlatformImpl implements RoboticSimulator {
	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected RoboticSimulatorImpl() {
		super();
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	protected EClass eStaticClass() {
		return RobotMLPackage.Literals.ROBOTIC_SIMULATOR;
	}

} // RoboticSimulatorImpl
