constants-python.xsl revision 20606357beeba9ef9025b662f5e3d178dd37d559
de4157257515400c2c25373591135f110227b68cvboxsync<xsl:stylesheet version = '1.0'
de4157257515400c2c25373591135f110227b68cvboxsync xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
de4157257515400c2c25373591135f110227b68cvboxsync xmlns:vbox="http://www.virtualbox.org/">
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync<!--
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync constants-python.xsl:
de4157257515400c2c25373591135f110227b68cvboxsync XSLT stylesheet that generates VirtualBox_constants.py from
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync VirtualBox.xidl.
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync Copyright (C) 2009-2013 Oracle Corporation
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync This file is part of VirtualBox Open Source Edition (OSE), as
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync available from http://www.virtualbox.org. This file is free software;
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync you can redistribute it and/or modify it under the terms of the GNU
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync General Public License (GPL) as published by the Free Software
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync Foundation, in version 2 as it comes in the "COPYING" file of the
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync VirtualBox OSE distribution. VirtualBox OSE is distributed in the
b263fac6f6e7fa933c7bfb2a45d598fe8e458c09vboxsync hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
de4157257515400c2c25373591135f110227b68cvboxsync-->
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync<xsl:output
de4157257515400c2c25373591135f110227b68cvboxsync method="text"
de4157257515400c2c25373591135f110227b68cvboxsync version="1.0"
de4157257515400c2c25373591135f110227b68cvboxsync encoding="utf-8"
de4157257515400c2c25373591135f110227b68cvboxsync indent="no"/>
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync<xsl:template match="/">
de4157257515400c2c25373591135f110227b68cvboxsync<xsl:text># -*- coding: utf-8 -*-
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync"""
de4157257515400c2c25373591135f110227b68cvboxsyncVirtualBox COM/XPCOM constants.
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsyncThis file is autogenerated from VirtualBox.xidl, DO NOT EDIT!
de4157257515400c2c25373591135f110227b68cvboxsync"""
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync__copyright__ = \
de4157257515400c2c25373591135f110227b68cvboxsync"""
de4157257515400c2c25373591135f110227b68cvboxsyncCopyright (C) 2009-2013 Oracle Corporation
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsyncThis file is part of VirtualBox Open Source Edition (OSE), as
de4157257515400c2c25373591135f110227b68cvboxsyncavailable from http://www.virtualbox.org. This file is free software;
de4157257515400c2c25373591135f110227b68cvboxsyncyou can redistribute it and/or modify it under the terms of the GNU
de4157257515400c2c25373591135f110227b68cvboxsyncGeneral Public License (GPL) as published by the Free Software
de4157257515400c2c25373591135f110227b68cvboxsyncFoundation, in version 2 as it comes in the "COPYING" file of the
de4157257515400c2c25373591135f110227b68cvboxsyncVirtualBox OSE distribution. VirtualBox OSE is distributed in the
de4157257515400c2c25373591135f110227b68cvboxsynchope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
de4157257515400c2c25373591135f110227b68cvboxsync"""
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync__version__ = "$Revision$";
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsyncclass VirtualBoxReflectionInfo:
de4157257515400c2c25373591135f110227b68cvboxsync """
de4157257515400c2c25373591135f110227b68cvboxsync Enum constants for the various python styles.
de4157257515400c2c25373591135f110227b68cvboxsync """
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync def __init__(self, fIsSym):
de4157257515400c2c25373591135f110227b68cvboxsync self.__fIsSym = fIsSym
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync __dValues = {</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="//enum">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text> <xsl:value-of select="@name"/><xsl:text>': {</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="const">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@name"/><xsl:text>': </xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@value"/><xsl:text>,</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync },</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync }
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync __dValuesSym = {</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="//enum">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text> <xsl:value-of select="@name"/> <xsl:text>': { </xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="const">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text> <xsl:value-of select="@name"/> <xsl:text>': '</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@name"/>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>',</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync },</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync<xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync }
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync __dValuesFlat = {</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="//enum">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:variable name="ename">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@name"/>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:variable>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="const">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text> <xsl:value-of select="$ename"/> <xsl:text>_</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@name"/> <xsl:text>': </xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@value"/><xsl:text>,</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync # Result constants:</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="//result[@value]">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text> <xsl:value-of select="@name"/> <xsl:text>': </xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@value"/><xsl:text>,</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync<xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync }
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync __dValuesFlatSym = {</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="//enum">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:variable name="ename">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="@name"/>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:variable>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="const">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:variable name="eval">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:value-of select="concat($ename, '_', @name)"/>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:variable>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text> <xsl:value-of select="$eval"/> <xsl:text>': </xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>'</xsl:text> <xsl:value-of select="@name"/> <xsl:text>',</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync # Result constants:</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:for-each select="//result[@value]">
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync '</xsl:text> <xsl:value-of select="@name"/> <xsl:text>': </xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>'</xsl:text><xsl:value-of select="@name"/><xsl:text>',</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync </xsl:for-each>
de4157257515400c2c25373591135f110227b68cvboxsync <xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync }
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync def __getattr__(self, sAttrName):
de4157257515400c2c25373591135f110227b68cvboxsync if self.__fIsSym:
de4157257515400c2c25373591135f110227b68cvboxsync oValue = self.__dValuesFlatSym.get(sAttrName)
de4157257515400c2c25373591135f110227b68cvboxsync else:
de4157257515400c2c25373591135f110227b68cvboxsync oValue = self.__dValuesFlat.get(sAttrName)
de4157257515400c2c25373591135f110227b68cvboxsync if oValue is None:
de4157257515400c2c25373591135f110227b68cvboxsync raise AttributeError
de4157257515400c2c25373591135f110227b68cvboxsync return oValue
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync def all_values(self, sEnumName):
de4157257515400c2c25373591135f110227b68cvboxsync """ Returns a dictionary with all the value names for a given enum type. """
de4157257515400c2c25373591135f110227b68cvboxsync if self.__fIsSym:
de4157257515400c2c25373591135f110227b68cvboxsync dValues = self.__dValuesSym.get(sEnumName)
de4157257515400c2c25373591135f110227b68cvboxsync else:
de4157257515400c2c25373591135f110227b68cvboxsync dValues = self.__dValues.get(sEnumName)
de4157257515400c2c25373591135f110227b68cvboxsync if dValues is None:
de4157257515400c2c25373591135f110227b68cvboxsync dValues = {}
de4157257515400c2c25373591135f110227b68cvboxsync return dValues
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync</xsl:text>
de4157257515400c2c25373591135f110227b68cvboxsync</xsl:template>
de4157257515400c2c25373591135f110227b68cvboxsync</xsl:stylesheet>
de4157257515400c2c25373591135f110227b68cvboxsync
de4157257515400c2c25373591135f110227b68cvboxsync