Changeset 66274 in vbox for trunk/src/VBox/Main/idl
- Timestamp:
- Mar 28, 2017 12:19:45 AM (8 years ago)
- Location:
- trunk/src/VBox/Main/idl
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/idl/VirtualBox.dtd
r56523 r66274 17 17 --> 18 18 <!ELEMENT idl (desc|if|library)*> <!-- done --> 19 <!ELEMENT if ANY> 20 <!ATTLIST if target (midl|xpidl|wsdl) #REQUIRED> <!-- done -->21 <!ELEMENT cpp ANY> 22 <!ATTLIST cpp line CDATA #IMPLIED> <!-- done -->23 <!ELEMENT library ( descGroup|if|result|enum|interface|module)*>19 <!ELEMENT if ANY> <!-- done --> 20 <!ATTLIST if target (midl|xpidl|wsdl) #REQUIRED> 21 <!ELEMENT cpp ANY> <!-- done --> 22 <!ATTLIST cpp line CDATA #IMPLIED> 23 <!ELEMENT library (application)*> <!-- done --> 24 24 <!ATTLIST library name CDATA #REQUIRED> 25 25 <!ATTLIST library uuid CDATA #REQUIRED> 26 26 <!ATTLIST library version CDATA #REQUIRED> 27 <!ATTLIST library desc CDATA #REQUIRED> 28 <!ATTLIST library appUuid CDATA #REQUIRED> 29 <!ATTLIST library supportsErrorInfo CDATA #REQUIRED> 27 <!ELEMENT application (descGroup|if|result|enum|interface|module)*> <!-- done --> 28 <!ATTLIST application name CDATA #REQUIRED> 29 <!ATTLIST application uuid CDATA #REQUIRED> 30 <!ATTLIST application supportsErrorInfo CDATA #REQUIRED> 30 31 <!ELEMENT result (#PCDATA|desc|link)*> <!-- done --> 31 32 <!ATTLIST result name CDATA #REQUIRED> -
trunk/src/VBox/Main/idl/VirtualBox.xidl
r66067 r66274 280 280 UUID or version!! 281 281 --> 282 <library 283 name="VirtualBox" 284 uuid="d7569351-1750-46f0-936e-bd127d5bc264" 285 version="1.3" 286 desc="VirtualBox Type Library" 287 appUuid="819B4D85-9CEE-493C-B6FC-64FFE759B3C9" 288 supportsErrorInfo="yes" 282 <library 283 name="VirtualBox" 284 uuid="d7569351-1750-46f0-936e-bd127d5bc264" 285 version="1.3" 289 286 > 290 287 291 292 <!-- 288 <application 289 name="VirtualBox" 290 uuid="819B4D85-9CEE-493C-B6FC-64FFE759B3C9" 291 supportsErrorInfo="yes" 292 > 293 294 295 296 <!-- 293 297 // COM result codes for VirtualBox 294 298 ///////////////////////////////////////////////////////////////////////// … … 23880 23884 </module> 23881 23885 23886 </application> 23887 23888 <!-- Pay attention! Application uuid of this application is used in midl.xsl 23889 So if you change it then change filter in "interface" and "class" template in midl.xsl too 23890 --> 23891 <application 23892 name="VirtualBox System Service" 23893 uuid="ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa" 23894 supportsErrorInfo="yes" 23895 > 23896 23897 <if target="midl"> 23898 <!-- 23899 // IVirtualBoxSDS 23900 ////////////////////////////////////////////////////////////////////////// 23901 --> 23902 23903 <interface 23904 name="IVirtualBoxSDS" extends="$unknown" 23905 uuid="28932695-fb72-4708-8904-e1077dac7f9a" 23906 wsmap="suppress" 23907 reservedMethods="4" reservedAttributes="8" 23908 > 23909 <desc> 23910 The IVirtualBoxSDS interface represents the system-wide directory service 23911 helper. 23912 23913 It exists only on Windows host, and its purpose is to work around design 23914 flaws in Microsoft's (D)COM, in particular the local server instantiation 23915 behavior. 23916 </desc> 23917 23918 <attribute name="virtualBox" type="IVirtualBox" readonly="yes"> 23919 <desc> 23920 Reference to the server-side API root object. 23921 </desc> 23922 </attribute> 23923 23924 <method name="releaseVirtualBox"> 23925 <desc> 23926 Client informs that it releases it's VirtualBox reference 23927 </desc> 23928 </method> 23929 23930 </interface> 23931 </if> 23932 23933 <module name="VBoxSDS" context="LocalService"> 23934 <class name="VirtualBoxSDS" uuid="74ab5ffe-8726-4435-aa7e-876d705bcba5" 23935 namespace="virtualbox.org"> 23936 <interface name="IVirtualBoxSDS" default="yes"/> 23937 </class> 23938 </module> 23939 23940 </application> 23941 23882 23942 </library> 23883 23943 -
trunk/src/VBox/Main/idl/apiwrap-server-filelist.xsl
r62486 r66274 28 28 29 29 <xsl:strip-space elements="*"/> 30 31 <!-- - - - - - - - - - - - - - - - - - - - - - - 32 XSLT parameters 33 - - - - - - - - - - - - - - - - - - - - - - --> 34 35 <!-- Whether to generate wrappers for VBoxSDS--> 36 <xsl:param name="g_fVBoxWithSDS" select="'no'"/> 30 37 31 38 <!-- - - - - - - - - - - - - - - - - - - - - - - … … 98 105 99 106 <!-- - - - - - - - - - - - - - - - - - - - - - - 107 application match 108 - - - - - - - - - - - - - - - - - - - - - - --> 109 110 <xsl:template match="application" mode="filelist-even-sources" name="template_app_filelist_even_sources"> 111 <xsl:apply-templates mode="filelist-even-sources"/> 112 </xsl:template> 113 114 <xsl:template match="application" mode="filelist-odd-sources" name="template_app_filelist_odd_sources"> 115 <xsl:apply-templates mode="filelist-odd-sources"/> 116 </xsl:template> 117 118 <xsl:template match="application" mode="filelist-headers" name="template_app_filelist_headers"> 119 <xsl:apply-templates mode="filelist-headers"/> 120 </xsl:template> 121 122 <!-- - - - - - - - - - - - - - - - - - - - - - - 100 123 library match 101 124 - - - - - - - - - - - - - - - - - - - - - - --> … … 134 157 </xsl:template> 135 158 159 160 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']" mode="filelist-even-sources" > 161 <xsl:if test="$g_fVBoxWithSDS='yes'" > 162 <xsl:call-template name="template_app_filelist_even_sources" /> 163 </xsl:if> 164 </xsl:template> 165 166 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']" mode="filelist-headers" > 167 <xsl:if test="$g_fVBoxWithSDS='yes'" > 168 <xsl:call-template name="template_app_filelist_headers" /> 169 </xsl:if> 170 </xsl:template> 171 172 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']" mode="filelist-odd-sources" > 173 <xsl:if test="$g_fVBoxWithSDS='yes'" > 174 <xsl:call-template name="template_app_filelist_odd_sources" /> 175 </xsl:if> 176 </xsl:template> 177 178 136 179 </xsl:stylesheet> 137 180 <!-- vi: set tabstop=4 shiftwidth=4 expandtab: --> -
trunk/src/VBox/Main/idl/apiwrap-server.xsl
r63147 r66274 2490 2490 2491 2491 <!-- - - - - - - - - - - - - - - - - - - - - - - 2492 application match 2493 - - - - - - - - - - - - - - - - - - - - - - --> 2494 2495 <xsl:template match="application"> 2496 <xsl:apply-templates/> 2497 </xsl:template> 2498 2499 <!-- - - - - - - - - - - - - - - - - - - - - - - 2492 2500 library match 2493 2501 - - - - - - - - - - - - - - - - - - - - - - --> -
trunk/src/VBox/Main/idl/midl.xsl
r63387 r66274 25 25 <xsl:param name="g_fGenProxy" select="'no'"/> 26 26 27 <!-- Whether to generate coclass and interfaces for VBoxSDS--> 28 <xsl:param name="g_fVBoxWithSDS" select="'no'"/> 29 27 30 <xsl:include href="typemap-shared.inc.xsl"/> 28 31 … … 42 45 * header 43 46 --> 44 <xsl:template match="/idl">45 <xsl:text>47 <xsl:template match="/idl"> 48 <xsl:text> 46 49 /* 47 50 * DO NOT EDIT! This is a generated file. … … 66 69 <xsl:apply-templates/> 67 70 </xsl:template> 68 71 69 72 70 73 <!-- … … 124 127 <xsl:text>
</xsl:text> 125 128 <!-- forward declarations --> 126 <xsl:apply-templates select=" if |interface" mode="forward"/>129 <xsl:apply-templates select="application/if | application/interface" mode="forward"/> 127 130 <xsl:text>
</xsl:text> 128 131 <!-- all enums go first --> 129 <xsl:apply-templates select=" enum | if/enum"/>132 <xsl:apply-templates select="application/enum | application/if[enum]"/> 130 133 <!-- declare the interfaces --> 131 <xsl:apply-templates select=" if |interface"/>134 <xsl:apply-templates select="application/if | application/interface"/> 132 135 </xsl:if> 133 136 … … 135 138 uuid(<xsl:value-of select="@uuid"/>), 136 139 version(<xsl:value-of select="@version"/>), 137 helpstring("<xsl:value-of select="@ desc"/>")140 helpstring("<xsl:value-of select="@name"/> Type Library") 138 141 ] 139 142 <xsl:text>library </xsl:text> … … 142 145 <xsl:text>
importlib("stdole2.tlb");

</xsl:text> 143 146 <!-- result codes --> 144 <xsl:for-each select=" result">147 <xsl:for-each select="application/result"> 145 148 <xsl:apply-templates select="."/> 146 149 </xsl:for-each> … … 150 153 <xsl:when test="$g_fGenProxy = 'yes'"> 151 154 <!-- reference enums and interfaces --> 152 <xsl:apply-templates select=" if |interface" mode="forward"/>153 <xsl:apply-templates select=" enum | if/enum" mode="forward"/>155 <xsl:apply-templates select="application/if | application/interface" mode="forward"/> 156 <xsl:apply-templates select="application/enum | application/if[enum]" mode="forward"/> 154 157 <!-- the modules (i.e. everything else) --> 155 <xsl:apply-templates select=" module | if/module"/>158 <xsl:apply-templates select="application/module | application/if[module]"/> 156 159 </xsl:when> 157 160 <xsl:otherwise> 158 161 <!-- forward declarations --> 159 <xsl:apply-templates select=" if |interface" mode="forward"/>162 <xsl:apply-templates select="application/if | application/interface" mode="forward"/> 160 163 <!-- all enums go first --> 161 <xsl:apply-templates select=" enum | if/enum"/>164 <xsl:apply-templates select="application/enum | application/if[enum]"/> 162 165 <!-- everything else but result codes and enums --> 163 <xsl:apply-templates select=" *[not(self::result or self::enum) and164 not(self::if[result] or self::if[enum])]"/>166 <xsl:apply-templates select=" application/interface | application/if[interface] 167 | application/module | application/if[module]"/> 165 168 </xsl:otherwise> 166 169 </xsl:choose> … … 173 176 174 177 <!-- 178 * applications 179 --> 180 <xsl:template match="application"> 181 <xsl:apply-templates/> 182 </xsl:template> 183 <xsl:template match="application" mode="forward"> 184 <xsl:apply-templates mode="forward"/> 185 </xsl:template> 186 187 188 <!-- 175 189 * result codes 176 190 --> … … 185 199 * forward declarations 186 200 --> 187 <xsl:template match="interface" mode="forward" >201 <xsl:template match="interface" mode="forward" name="template_interface_forward"> 188 202 <xsl:text>interface </xsl:text> 189 203 <xsl:value-of select="@name"/> … … 202 216 * interfaces 203 217 --> 204 <xsl:template match="interface" >[218 <xsl:template match="interface" name="template_interface">[ 205 219 uuid(<xsl:value-of select="@uuid"/>), 206 220 object, … … 646 660 * co-classes 647 661 --> 648 <xsl:template match="module/class" >[662 <xsl:template match="module/class" name="template_class">[ 649 663 uuid(<xsl:value-of select="@uuid"/>) 650 664 ] … … 842 856 <!-- enum types --> 843 857 <xsl:when test=" 844 (ancestor::library/ enum[@name=current()]) or845 (ancestor::library/ if[@target=$self_target]/enum[@name=current()])858 (ancestor::library/application/enum[@name=current()]) or 859 (ancestor::library/application/if[@target=$self_target]/enum[@name=current()]) 846 860 "> 847 861 <xsl:value-of select="."/> … … 849 863 <!-- custom interface types --> 850 864 <xsl:when test=" 851 ((ancestor::library/ interface[@name=current()]) or852 (ancestor::library/ if[@target=$self_target]/interface[@name=current()])865 ((ancestor::library/application/interface[@name=current()]) or 866 (ancestor::library/application/if[@target=$self_target]/interface[@name=current()]) 853 867 ) 854 868 "> … … 868 882 </xsl:choose> 869 883 </xsl:template> 884 885 886 <!-- Filters for switch on/off VBoxSDS definitions --> 887 888 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//module/class" > 889 <xsl:if test="$g_fVBoxWithSDS='yes'" > 890 <xsl:call-template name="template_class" /> 891 </xsl:if> 892 </xsl:template> 893 894 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']/if//interface 895 | application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//interface" > 896 <xsl:if test="$g_fVBoxWithSDS='yes'" > 897 <xsl:call-template name="template_interface" /> 898 </xsl:if> 899 </xsl:template> 900 901 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//interface" mode="forward" > 902 <xsl:if test="$g_fVBoxWithSDS='yes'" > 903 <xsl:call-template name="template_interface_forward" /> 904 </xsl:if> 905 </xsl:template> 906 870 907 871 908 </xsl:stylesheet> -
trunk/src/VBox/Main/idl/xpidl.xsl
r62486 r66274 148 148 <!-- result codes --> 149 149 <xsl:text>// result codes declared in API spec
</xsl:text> 150 <xsl:for-each select=" result">150 <xsl:for-each select="application/result"> 151 151 <xsl:apply-templates select="."/> 152 152 </xsl:for-each> 153 153 <xsl:text>%}

</xsl:text> 154 154 <!-- forward declarations --> 155 <xsl:apply-templates select=" if |interface" mode="forward"/>155 <xsl:apply-templates select="application/if | application/interface" mode="forward"/> 156 156 <xsl:text>
</xsl:text> 157 157 <!-- all enums go first --> 158 <xsl:apply-templates select="enum | if/enum"/> 159 <!-- everything else but result codes and enums --> 160 <xsl:apply-templates select="*[not(self::result or self::enum) and 161 not(self::if[result] or self::if[enum])]"/> 158 <xsl:apply-templates select="application/enum | application/if/enum"/> 159 <!-- everything else but result codes and enums 160 <xsl:apply-templates select="*[not(self::application/result or self::application/enum) and 161 not(self::application[result] or self::application/if[enum])]"/> --> 162 <!-- the modules (i.e. everything else) --> 163 <xsl:apply-templates select="application/interface | application/if[interface] 164 | application/module | application/if[module]"/> 162 165 <!-- --> 163 166 </xsl:template> 164 167 168 169 <!-- 170 * applications 171 --> 172 <xsl:template match="application"> 173 <xsl:apply-templates/> 174 </xsl:template> 175 <xsl:template match="application" mode="forward"> 176 <xsl:apply-templates mode="forward"/> 177 </xsl:template> 165 178 166 179 <!-- … … 886 899 <!-- enum types --> 887 900 <xsl:when test=" 888 (ancestor::library/ enum[@name=current()]) or889 (ancestor::library/ if[@target=$self_target]/enum[@name=current()])901 (ancestor::library/application/enum[@name=current()]) or 902 (ancestor::library/application/if[@target=$self_target]/enum[@name=current()]) 890 903 "> 891 904 <xsl:text>PRUint32</xsl:text> … … 893 906 <!-- custom interface types --> 894 907 <xsl:when test=" 895 (ancestor::library/ interface[@name=current()]) or896 (ancestor::library/ if[@target=$self_target]/interface[@name=current()])908 (ancestor::library/application/interface[@name=current()]) or 909 (ancestor::library/application/if[@target=$self_target]/interface[@name=current()]) 897 910 "> 898 911 <xsl:value-of select="."/> … … 1008 1021 <!-- enum types --> 1009 1022 <xsl:when test=" 1010 (ancestor::library/ enum[@name=current()]) or1011 (ancestor::library/ if[@target=$self_target]/enum[@name=current()])1023 (ancestor::library/application/enum[@name=current()]) or 1024 (ancestor::library/application/if[@target=$self_target]/enum[@name=current()]) 1012 1025 "> 1013 1026 <xsl:text>PRUint32</xsl:text> … … 1015 1028 <!-- custom interface types --> 1016 1029 <xsl:when test=" 1017 (ancestor::library/ interface[@name=current()]) or1018 (ancestor::library/ if[@target=$self_target]/interface[@name=current()])1030 (ancestor::library/application/interface[@name=current()]) or 1031 (ancestor::library/application/if[@target=$self_target]/interface[@name=current()]) 1019 1032 "> 1020 1033 <xsl:value-of select="."/> … … 1029 1042 </xsl:template> 1030 1043 1044 <!-- Filters for switch off VBoxSDS definitions --> 1045 1046 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//module/class" /> 1047 1048 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']/if//interface 1049 | application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//interface" /> 1050 1051 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//interface" mode="forward" /> 1052 1053 1031 1054 </xsl:stylesheet> 1032 1055 -
trunk/src/VBox/Main/idl/xpidl_iid.xsl
r62486 r66274 93 93 --> 94 94 <xsl:template match="library"> 95 <xsl:apply-templates select=" if |interface"/>96 <xsl:apply-templates select=" module"/>95 <xsl:apply-templates select="application/if | application/interface"/> 96 <xsl:apply-templates select="application/module"/> 97 97 </xsl:template> 98 98 … … 151 151 </xsl:template> 152 152 153 154 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//module/class" /> 155 156 <xsl:template match="application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']/if//interface 157 | application[@uuid='ec0e78e8-fa43-43e8-ac0a-02c784c4a4fa']//interface" /> 158 153 159 </xsl:stylesheet> 154 160
Note:
See TracChangeset
for help on using the changeset viewer.