<?xml version="1.0" encoding="UTF-8"?>
<!--
    <copyright>
   
    Copyright (c) 2010 - 2011 Protos Software GmbH.
    All rights reserved. This program and the accompanying materials
    are made available under the terms of the Eclipse Public License v1.0
    which accompanies this distribution, and is available at
    http://www.eclipse.org/legal/epl-v10.html
   
    Contributors:
       Henrik Rentz-Reichert
   
    </copyright>
   
 -->
<feature
      id="org.eclipse.etrice.feature"
      label="%featureName"
      version="1.1.0.qualifier"
      provider-name="%providerName"
      plugin="org.eclipse.etrice.core.room.ui"
      license-feature="org.eclipse.license"
      license-feature-version="1.0.1.v20140414-1359">

   <description url="http://www.eclipse.org/etrice">
      %description
   </description>

   <copyright url="http://www.eclipse.org/legal/epl-v10.html">
      (c) 2010 - 2011 Protos Software GmbH.
All rights reserved.   This program and the accompanying materials
are made available under the terms of the Eclipse Public License
v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
   </copyright>

   <license url="http://www.eclipse.org/legal/epl-v10.html">
      %license
   </license>

   <url>
      <discovery label="Eclipse Orbit" url="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository/"/>
   </url>

      <requires>
      <import plugin="org.eclipse.etrice.core.common" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.fsm" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.antlr.runtime" version="3.0.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.resources" version="3.7.100" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.runtime" version="3.7.0" match="greaterOrEqual"/>
      <import plugin="org.apache.log4j"/>
      <import plugin="org.eclipse.etrice.core.fsm.ui" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.common.ui" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.room" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.genmodel" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.ui.common.base" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui" version="3.6.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.editors" version="3.5.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.ide" version="3.5.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.codegen" version="2.6.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.compare"/>
      <import plugin="org.eclipse.core.filesystem" version="1.3.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.fsm" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.ide" version="3.9.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.runtime" version="3.6.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.ecore" version="2.6.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.ecore.xmi" version="2.5.0" match="greaterOrEqual"/>
      <import plugin="org.apache.commons.io" version="2.0.1" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.genmodel.fsm" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.etmap" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.etphys" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.resources" version="3.6.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui" version="3.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.ide" version="3.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.config" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.doc" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.room.ui" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.ui.common" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.ui.behavior.fsm" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.graphiti" version="0.8.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.graphiti.ui" version="0.8.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.views.properties.tabbed" version="3.5.100" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.databinding" version="1.3.100" match="greaterOrEqual"/>
      <import plugin="org.eclipse.gef" version="3.6.1" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.transaction" version="1.4.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.abstractexec.behavior" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.ui.structure" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.ui.behavior" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.gef" version="3.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.ide" version="3.6.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.graphiti.ui" version="0.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.databinding"/>
      <import plugin="org.eclipse.jface.databinding" version="1.4.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.databinding.property" version="1.4.200" match="greaterOrEqual"/>
      <import plugin="org.eclipse.jdt.core" version="3.9.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.workspace" version="1.5.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.databinding.beans" version="1.2.200" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.ui" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.console" version="3.5.100" match="greaterOrEqual"/>
      <import plugin="org.eclipse.debug.core"/>
      <import plugin="org.eclipse.debug.ui"/>
      <import plugin="org.eclipse.core.variables" version="3.2.500" match="greaterOrEqual"/>
      <import plugin="org.eclipse.jdt.launching" version="3.5.200" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.java" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.launch" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.jdt.ui" version="3.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.jdt.core" version="3.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.common.ui" version="2.7.0" match="greaterOrEqual"/>
      <import plugin="org.apache.log4j" version="1.2.15" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.c" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.apache.commons.logging"/>
      <import plugin="org.eclipse.etrice.core.config" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.config.ui" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.junit"/>
      <import plugin="org.hamcrest.core"/>
      <import plugin="com.google.guava"/>
      <import plugin="org.eclipse.emf.ecore" version="2.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.generator.cpp" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.etmap.ui" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.etrice.core.etphys.ui" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.resources" version="3.8.100" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.ecore" version="2.9.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.jdt.launching" version="3.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.forms" version="3.6.1" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.ide" version="3.9.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf" version="2.6.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.resources" version="3.8.101" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.runtime" version="3.9.100" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.ecore" version="2.6.0" match="compatible"/>
      <import plugin="org.eclipse.emf.common" version="2.6.0" match="compatible"/>
      <import plugin="org.eclipse.jface.text"/>
      <import feature="org.eclipse.xtext.sdk" version="2.6.0" match="greaterOrEqual"/>
   </requires>

   <plugin
         id="org.eclipse.etrice.core.room"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.room.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.doc"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.doc"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.java"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.behavior"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.commands"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.common"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.structure"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.launch"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.launch.java"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.runtime"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.logging"
         download-size="0"
         install-size="0"
         version="0.0.0"
         fragment="true"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.c"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.launch.c"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.etunit.converter"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.genmodel"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.config"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.config.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.etphys"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.etphys.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.etmap"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.etmap.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.config"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.abstractexec.behavior"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.cpp"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.launch.cpp"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.common"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.common.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.fsm"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.fsm.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.core.genmodel.fsm"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.common.base"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.behavior.fsm"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.fsm"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.ui.behavior.actioneditor"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.eclipse.etrice.generator.gnuplot"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

</feature>
