blob: 0203b5ccc8862787ac060fe0b4fe3ffcef388ea6 [file]
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:include href="identity.xsl" />
<!--
Strip pack_pattern's from input/output tags on pb_types.
-->
<xsl:template match="pb_type/input/pack_pattern"/>
<xsl:template match="pb_type/output/pack_pattern"/>
<!--
Convert
<pack_pattern name="xxx" type="yyy"
to
<pack_pattern name="yyy-xxx"
-->
<xsl:template match="pack_pattern/@type"/>
<xsl:template match="pack_pattern[@type]/@name">
<xsl:attribute name="name">
<xsl:value-of select="../@type"/>-<xsl:value-of select="../@name"/>
</xsl:attribute>
</xsl:template>
<xsl:template match="pack_pattern[not(@type)]/@name">
<xsl:copy />
</xsl:template>
<xsl:template match="pack_pattern/*">
<xsl:copy />
</xsl:template>
<!--
Convert
<interconnect><direct input="IN" output="OUT"><pack_pattern name="PACK"/></direct></interconnect>
to
<interconnect><direct input="IN" output="OUT"><pack_pattern name="PACK" in_port="IN" out_port="OUT"/></direct></interconnect>
-->
<xsl:template match="direct[@input and @output]/pack_pattern">
<xsl:copy>
<xsl:attribute name="in_port"><xsl:value-of select="../@input" /></xsl:attribute>
<xsl:attribute name="out_port"><xsl:value-of select="../@output" /></xsl:attribute>
<xsl:apply-templates select="@*"></xsl:apply-templates>
</xsl:copy>
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>