<!--
/********************************************************************************
 * Copyright (c) 2007 INRIA. 
 * 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: 
 *     INRIA - Initial implementation
 *     
 ******************************************************************************/
-->

<!-- author: Hugo Bruneliere -->
	
<project name="PerformanceAnnotatedUmlStateCharts_MoDisco-UseCase" default="generateModel">

	<target name="generateModel" depends="loadMetamodels">

		<am3.loadModel modelHandler="EMF" name="TraceSamples-Trace" metamodel="Trace" path="Outputs/TraceSamples-Trace.xmi"/>

		<!-- Generate the Metrics model from the Trace model -->
		<am3.atl path="Transformations/Trace2PerformanceMetrics.atl">
			<inModel name="IN" model="TraceSamples-Trace"/>
			<inModel name="Trace" model="Trace"/>
			<inModel name="Metrics" model="Metrics"/>
			<outModel name="OUT" model="TraceSamplesPerformanceMetrics-Metrics" metamodel="Metrics"/>
		</am3.atl>
		<am3.saveModel model="TraceSamplesPerformanceMetrics-Metrics" path="Outputs/TraceSamplesPerformanceMetrics-Metrics.xmi"/>

	</target>
	
	
	<target name="loadMetamodels">

		<!-- Load Trace metamodel -->
		<am3.loadModel modelHandler="EMF" name="Trace" metamodel="MOF" path="Metamodels/Trace.ecore" />
		
		<!-- Load Metrics metamodel -->
		<am3.loadModel modelHandler="EMF" name="Metrics" metamodel="MOF" path="Metamodels/Metrics.ecore" />
		
	</target>
	
</project>