Changeset 4097 in vbox for trunk/src/VBox/Main/idl
- Timestamp:
- Aug 9, 2007 3:16:21 PM (17 years ago)
- Location:
- trunk/src/VBox/Main/idl
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/idl/VirtualBox.xidl
r4071 r4097 9 9 * 10 10 * From this document, the build system generates several files 11 * via XSLT that are then used during the build process :11 * via XSLT that are then used during the build process. 12 12 * 13 * - out/<platform>/bin/sdk/idl/VirtualBox[_XPCOM].idl, a 14 * COM/XPCOM interface definition file (IDL) 13 * Below is the list of XSL templates that operate on this file and 14 * output files they generate. These XSL templates must be updated 15 * whenever the schema of this file changes: 15 16 * 16 * - out/<platform>/bin/sdk/include/VirtualBox[_XPCOM].h, which 17 * gets included from the include/VBox/com/VirtualBox.h 18 * wrapper, to allow clients to access the COM/XPCOM API; 17 * 1. src/VBox/Main/idl/midl.xsl => 18 * out/<platform>/bin/sdk/idl/VirtualBox.idl 19 * (MS COM interface definition file for Main API) 20 * 21 * 2. src/VBox/Main/idl/xpidl.xsl => 22 * out/<platform>/bin/sdk/idl/VirtualBox_XPCOM.idl 23 * (XPCOM interface definition file for Main API) 19 24 * 20 * - also, another intermediate file that is then used to 21 * produce the official Doxygen documentation of the API. 25 * 3. src/VBox/Main/idl/doxygen.xsl => 26 * out/<platform>/obj/src/VBox/Main/VirtualBox.idl 27 * (pseudo-IDL for Doxygen to generate the official Main API 28 * documentation) 22 29 * 23 * - a lot of files for the web service by XSLT stylesheets 24 * in the ../webservice directory; the targets include a 25 * WSDL file that describes the web service and C++ method 26 * mappers that map SOAP messages to COM calls. 30 * 4. src/VBox/Main/idl/webservice/*.xsl => 31 * a bunch of WSDL and C++ files 32 * (VirtualBox web service sources and SOAP mappers) 33 * 34 * 5. src/VBox/Frontends/VirtualBox/include/COMWrappers.xsl => 35 * out/<platform>/obj/src/VBox/Frontends/VirtualBox/VirtualBox/include/COMWrappers.h 36 * (smart Qt-based C++ wrapper classes for COM interfaces 37 * of the Main API) 38 * 39 * 6. src/VBox/Installer/win32/VirtualBox_TypeLib.xsl => 40 * out/<platform>/obj/src/VBox/Installer/win32/VirtualBox_TypeLib.wxi 41 * (Main API TypeLib block for the WiX installer) 27 42 * 28 43 Copyright (C) 2006-2007 innotek GmbH … … 67 82 </if> 68 83 69 < module84 <library 70 85 name="VirtualBox" 71 86 uuid="46137EEC-703B-4fe5-AFD4-7C9BBBBA0259" 72 87 version="1.3" 73 88 desc="innotek VirtualBox Type Library" 89 appUuid="819B4D85-9CEE-493C-B6FC-64FFE759B3C9" 74 90 supportsErrorInfo="yes" 75 91 > … … 1608 1624 1609 1625 </interface> 1610 1611 <class name="VirtualBox" uuid="B1A7A4F2-47B9-4A1E-82B2-07CCD5323C3F"1612 namespace="virtualbox.org">1613 <interface name="IVirtualBox" default="yes"/>1614 </class>1615 1626 1616 1627 <!-- … … 8084 8095 </interface> 8085 8096 8086 <class name="Session" uuid="3C02F46D-C9D2-4f11-A384-53F0CF917214"8087 namespace="virtualbox.org">8088 <interface name="ISession" default="yes"/>8089 </class>8090 8091 8097 <if target="wsdl"> 8092 8098 … … 8121 8127 </if> 8122 8128 8123 </module> 8129 <module name="VBoxSVC" context="LocalServer"> 8130 <class name="VirtualBox" uuid="B1A7A4F2-47B9-4A1E-82B2-07CCD5323C3F" 8131 namespace="virtualbox.org"> 8132 <interface name="IVirtualBox" default="yes"/> 8133 </class> 8134 </module> 8135 8136 <module name="VBoxC" context="InprocServer" threadingModel="Free"> 8137 <class name="Session" uuid="3C02F46D-C9D2-4f11-A384-53F0CF917214" 8138 namespace="virtualbox.org"> 8139 <interface name="ISession" default="yes"/> 8140 </class> 8141 </module> 8142 8143 </library> 8124 8144 8125 8145 </idl> -
trunk/src/VBox/Main/idl/doxygen.xsl
r4071 r4097 269 269 <xsl:template match="/idl"> 270 270 /* 271 * DO NOT EDIT. 272 * 273 * This IDL is automatically generated from the generic interface definition 274 * using some generic OMG IDL-like syntax SOLELY for the purpose of generating 275 * the documentation using Doxygen and is not syntactically valid. 271 * DO NOT EDIT! This is a generated file. 272 * 273 * Doxygen IDL definition for VirualBox Main API (COM interfaces) 274 * generated from XIDL (XML interface definition). 275 * 276 * Source : src/VBox/Main/idl/VirtualBox.xidl 277 * Generator : src/VBox/Main/idl/doxygen.xsl 278 * 279 * This IDL is generated using some generic OMG IDL-like syntax SOLELY 280 * for the purpose of generating the documentation using Doxygen and 281 * is not syntactically valid. 276 282 * 277 283 * DO NOT USE THIS HEADER IN ANY OTHER WAY! … … 340 346 * libraries 341 347 --> 342 <xsl:template match=" module">348 <xsl:template match="library"> 343 349 <!-- all enums go first --> 344 350 <xsl:apply-templates select="enum | if/enum"/> … … 420 426 * co-classes 421 427 --> 422 <xsl:template match=" class">428 <xsl:template match="module/class"> 423 429 <!-- class and contract id: later --> 424 430 <!-- CLSID_xxx declarations for XPCOM, for compatibility with Win32: later --> … … 633 639 <!-- enum types --> 634 640 <xsl:when test=" 635 (ancestor:: module/enum[@name=current()]) or636 (ancestor:: module/if[@target=$self_target]/enum[@name=current()])641 (ancestor::library/enum[@name=current()]) or 642 (ancestor::library/if[@target=$self_target]/enum[@name=current()]) 637 643 "> 638 644 <xsl:value-of select="."/> … … 641 647 <xsl:when test=" 642 648 (name(current())='enumerator' and 643 ((ancestor:: module/enumerator[@name=current()]) or644 (ancestor:: module/if[@target=$self_target]/enumerator[@name=current()]))649 ((ancestor::library/enumerator[@name=current()]) or 650 (ancestor::library/if[@target=$self_target]/enumerator[@name=current()])) 645 651 ) or 646 ((ancestor:: module/interface[@name=current()]) or647 (ancestor:: module/if[@target=$self_target]/interface[@name=current()])652 ((ancestor::library/interface[@name=current()]) or 653 (ancestor::library/if[@target=$self_target]/interface[@name=current()]) 648 654 ) or 649 ((ancestor:: module/collection[@name=current()]) or650 (ancestor:: module/if[@target=$self_target]/collection[@name=current()])655 ((ancestor::library/collection[@name=current()]) or 656 (ancestor::library/if[@target=$self_target]/collection[@name=current()]) 651 657 ) 652 658 "> -
trunk/src/VBox/Main/idl/midl.xsl
r4071 r4097 74 74 <xsl:text> 75 75 /* 76 * DO NOT EDIT .76 * DO NOT EDIT! This is a generated file. 77 77 * 78 * This IDL is automatically generated from the generic interface definition 79 * using MS IDL (MIDL) syntax. 78 * MS IDL (MIDL) definition for VirualBox Main API (COM interfaces) 79 * generated from XIDL (XML interface definition). 80 * 81 * Source : src/VBox/Main/idl/VirtualBox.xidl 82 * Generator : src/VBox/Main/idl/midl.xsl 80 83 */ 81 84 </xsl:text> … … 127 130 * libraries 128 131 --> 129 <xsl:template match=" module">[132 <xsl:template match="library">[ 130 133 uuid(<xsl:value-of select="@uuid"/>), 131 134 version(<xsl:value-of select="@version"/>), … … 256 259 * co-classes 257 260 --> 258 <xsl:template match=" class">[261 <xsl:template match="module/class">[ 259 262 uuid(<xsl:value-of select="@uuid"/>) 260 263 ] … … 525 528 <!-- enum types --> 526 529 <xsl:when test=" 527 (ancestor:: module/enum[@name=current()]) or528 (ancestor:: module/if[@target=$self_target]/enum[@name=current()])530 (ancestor::library/enum[@name=current()]) or 531 (ancestor::library/if[@target=$self_target]/enum[@name=current()]) 529 532 "> 530 533 <xsl:value-of select="."/> … … 533 536 <xsl:when test=" 534 537 (name(current())='enumerator' and 535 ((ancestor:: module/enumerator[@name=current()]) or536 (ancestor:: module/if[@target=$self_target]/enumerator[@name=current()]))538 ((ancestor::library/enumerator[@name=current()]) or 539 (ancestor::library/if[@target=$self_target]/enumerator[@name=current()])) 537 540 ) or 538 ((ancestor:: module/interface[@name=current()]) or539 (ancestor:: module/if[@target=$self_target]/interface[@name=current()])541 ((ancestor::library/interface[@name=current()]) or 542 (ancestor::library/if[@target=$self_target]/interface[@name=current()]) 540 543 ) or 541 ((ancestor:: module/collection[@name=current()]) or542 (ancestor:: module/if[@target=$self_target]/collection[@name=current()])544 ((ancestor::library/collection[@name=current()]) or 545 (ancestor::library/if[@target=$self_target]/collection[@name=current()]) 543 546 ) 544 547 "> -
trunk/src/VBox/Main/idl/xpidl.xsl
r4071 r4097 71 71 <xsl:text> 72 72 /* 73 # DO NOT EDIT! This is a generated file. 74 # Generated from: src/VBox/Main/idl/VirtualBox.xidl (VirtualBox's interface definitions in XML) 75 # Generator: src/VBox/Main/idl/xpidl.xsl 73 * DO NOT EDIT! This is a generated file. 74 * 75 * XPCOM IDL (XPIDL) definition for VirualBox Main API (COM interfaces) 76 * generated from XIDL (XML interface definition). 77 * 78 * Source : src/VBox/Main/idl/VirtualBox.xidl 79 * Generator : src/VBox/Main/idl/xpidl.xsl 76 80 */ 77 81 … … 156 160 * libraries 157 161 --> 158 <xsl:template match=" module">162 <xsl:template match="library"> 159 163 <!-- forward declarations --> 160 164 <xsl:apply-templates select="if | interface | collection | enumerator" mode="forward"/> … … 261 265 * co-classes 262 266 --> 263 <xsl:template match=" class">267 <xsl:template match="module/class"> 264 268 <!-- class and contract id --> 265 269 <xsl:text>%{C++
</xsl:text> … … 559 563 <!-- enum types --> 560 564 <xsl:when test=" 561 (ancestor:: module/enum[@name=current()]) or562 (ancestor:: module/if[@target=$self_target]/enum[@name=current()])565 (ancestor::library/enum[@name=current()]) or 566 (ancestor::library/if[@target=$self_target]/enum[@name=current()]) 563 567 "> 564 568 <xsl:text>PRUint32</xsl:text> … … 567 571 <xsl:when test=" 568 572 (name(current())='enumerator' and 569 ((ancestor:: module/enumerator[@name=current()]) or570 (ancestor:: module/if[@target=$self_target]/enumerator[@name=current()]))573 ((ancestor::library/enumerator[@name=current()]) or 574 (ancestor::library/if[@target=$self_target]/enumerator[@name=current()])) 571 575 ) or 572 ((ancestor:: module/interface[@name=current()]) or573 (ancestor:: module/if[@target=$self_target]/interface[@name=current()])576 ((ancestor::library/interface[@name=current()]) or 577 (ancestor::library/if[@target=$self_target]/interface[@name=current()]) 574 578 ) or 575 ((ancestor:: module/collection[@name=current()]) or576 (ancestor:: module/if[@target=$self_target]/collection[@name=current()])579 ((ancestor::library/collection[@name=current()]) or 580 (ancestor::library/if[@target=$self_target]/collection[@name=current()]) 577 581 ) 578 582 ">
Note:
See TracChangeset
for help on using the changeset viewer.