<!--
/********************************************************************************
 * Copyright (c) 2009 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="BugzillaModel-Understanding" default="understand">

	<target name="understand">

		<!-- Generate the Excel visualizations from the Metrics model -->
		<ant dir="${basedir}/../org.eclipse.gmt.modisco.tool.metricsvisualizationbuilder"
			 antfile="build-Excel.xml">
			<property name="metricsName" value="Bugs_GMT-Metrics"/>
			<property name="metricsModelPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs/Metrics/Bugs_GMT-Metrics.xmi"/>
			<property name="outputFilesDirectoryPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs"/>
		</ant>

		<!-- Generate the HTML visualizations from the Metrics model -->
		<ant dir="${basedir}/../org.eclipse.gmt.modisco.tool.metricsvisualizationbuilder"
			 antfile="build-HTML.xml">
			<property name="metricsName" value="Bugs_GMT-Metrics"/>
			<property name="metricsModelPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs/Metrics/Bugs_GMT-Metrics.xmi"/>
			<property name="outputFilesDirectoryPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs"/>
		</ant>

		<!-- Generate the SVG Bar Chart visualizations from the Metrics model -->
		<ant dir="${basedir}/../org.eclipse.gmt.modisco.tool.metricsvisualizationbuilder"
			 antfile="build-SVGBarChart.xml">
			<property name="metricsName" value="Bugs_GMT-Metrics"/>
			<property name="metricsModelPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs/Metrics/Bugs_GMT-Metrics.xmi"/>
			<property name="outputFilesDirectoryPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs"/>
		</ant>

		<!-- Generate the SVG Pie Chart visualizations from the Metrics model -->
		<ant dir="${basedir}/../org.eclipse.gmt.modisco.tool.metricsvisualizationbuilder"
			 antfile="build-SVGPieChart.xml">
			<property name="metricsName" value="Bugs_GMT-Metrics"/>
			<property name="metricsModelPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs/Metrics/Bugs_GMT-Metrics.xmi"/>
			<property name="outputFilesDirectoryPath" value="/org.eclipse.gmt.modisco.usecase.bugzillametrics/Outputs"/>
		</ant>

	</target>

</project>