VirtualBox

Changeset 6597 in vbox


Ignore:
Timestamp:
Jan 30, 2008 12:55:54 PM (17 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
27654
Message:

SB16 taken from qemu

Location:
trunk/src/VBox
Files:
17 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Builtins.cpp

    r6313 r6597  
    105105    if (VBOX_FAILURE(rc))
    106106        return rc;
     107    rc = pCallbacks->pfnRegister(pCallbacks, &g_DeviceSB16);
     108    if (VBOX_FAILURE(rc))
     109        return rc;
    107110    rc = pCallbacks->pfnRegister(pCallbacks, &g_DeviceAudioSniffer);
    108111    if (VBOX_FAILURE(rc))
  • trunk/src/VBox/Devices/Builtins.h

    r6313 r6597  
    4848extern const PDMDEVREG g_DeviceNE2000;
    4949extern const PDMDEVREG g_DeviceICHAC97;
     50extern const PDMDEVREG g_DeviceSB16;
    5051extern const PDMDEVREG g_DeviceAudioSniffer;
    5152extern const PDMDEVREG g_DeviceOHCI;
  • trunk/src/VBox/Devices/Makefile.kmk

    r6468 r6597  
    219219        Network/DevPCNet.cpp \
    220220        Audio/DevIchAc97.cpp \
     221        Audio/DevSB16.cpp \
    221222        PC/DevDMA.cpp \
    222223        Storage/fdc.c \
  • trunk/src/VBox/Frontends/VBoxManage/Makefile.kmk

    r6468 r6597  
    3131        VBoxInternalManageVmdk.cpp
    3232endif
    33 ifdef VBOX_WITH_VRDP
    34  VBoxManage_DEFS     += VBOX_VRDP
    35 endif
    36 ifdef VBOX_WITH_ALSA
    37  VBoxManage_DEFS     += VBOX_WITH_ALSA
    38 endif
     33VBoxManage_DEFS      += $(if $(VBOX_WITH_VRDP),VBOX_VRDP,) \
     34                        $(if $(VBOX_WITH_ALSA),VBOX_WITH_ALSA,) \
     35                        $(if $(VBOX_WITH_PULSE),VBOX_WITH_PULSE,)
    3936VBoxManage_LIBS      += $(LIB_DDU)
    4037
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManage.cpp

    r6526 r6597  
    369369                                             "|alsa"
    370370#endif
     371#ifdef VBOX_WITH_PULSE
     372                                             "|pulse"
     373#endif
    371374                                             );
    372375        }
     
    376379        }
    377380        RTPrintf(                            "]\n");
    378         RTPrintf("                            [-clipboard disabled|hosttoguest|guesttohost|\n"
     381        RTPrintf("                            [-audiocontroller ac97|sb16]\n"
     382                 "                            [-clipboard disabled|hosttoguest|guesttohost|\n"
    379383                 "                                        bidirectional]\n");
    380384        if (fVRDP)
     
    13671371    if (SUCCEEDED(rc))
    13681372    {
    1369         const char *psz = "Unknown";
     1373        const char *pszDrv  = "Unknown";
     1374        const char *pszCtrl = "Unknown";
    13701375        BOOL fEnabled;
    13711376        rc = AudioAdapter->COMGETTER(Enabled)(&fEnabled);
    13721377        if (SUCCEEDED(rc) && fEnabled)
    13731378        {
    1374             AudioDriverType_T enmType;
    1375             rc = AudioAdapter->COMGETTER(AudioDriver)(&enmType);
    1376             switch (enmType)
     1379            AudioDriverType_T enmDrvType;
     1380            rc = AudioAdapter->COMGETTER(AudioDriver)(&enmDrvType);
     1381            switch (enmDrvType)
    13771382            {
    13781383                case AudioDriverType_NullAudioDriver:
    13791384                    if (details == VMINFO_MACHINEREADABLE)
    1380                         psz = "null";
     1385                        pszDrv = "null";
    13811386                    else
    1382                         psz = "Null";
     1387                        pszDrv = "Null";
    13831388                    break;
    13841389                case AudioDriverType_WINMMAudioDriver:
    13851390                    if (details == VMINFO_MACHINEREADABLE)
    1386                         psz = "winmm";
     1391                        pszDrv = "winmm";
    13871392                    else
    1388                         psz = "WINMM";
     1393                        pszDrv = "WINMM";
    13891394                    break;
    13901395                case AudioDriverType_DSOUNDAudioDriver:
    13911396                    if (details == VMINFO_MACHINEREADABLE)
    1392                         psz = "dsound";
     1397                        pszDrv = "dsound";
    13931398                    else
    1394                         psz = "DSOUND";
     1399                        pszDrv = "DSOUND";
    13951400                    break;
    13961401                case AudioDriverType_OSSAudioDriver:
    13971402                    if (details == VMINFO_MACHINEREADABLE)
    1398                         psz = "oss";
     1403                        pszDrv = "oss";
    13991404                    else
    1400                         psz = "OSS";
     1405                        pszDrv = "OSS";
    14011406                    break;
    14021407                case AudioDriverType_ALSAAudioDriver:
    14031408                    if (details == VMINFO_MACHINEREADABLE)
    1404                         psz = "alsa";
     1409                        pszDrv = "alsa";
    14051410                    else
    1406                         psz = "ALSA";
     1411                        pszDrv = "ALSA";
     1412                    break;
     1413                case AudioDriverType_PulseAudioDriver:
     1414                    if (details == VMINFO_MACHINEREADABLE)
     1415                        pszDrv = "pulse";
     1416                    else
     1417                        pszDrv = "PulseAudio";
    14071418                    break;
    14081419                case AudioDriverType_CoreAudioDriver:
    14091420                    if (details == VMINFO_MACHINEREADABLE)
    1410                         psz = "coreaudio";
     1421                        pszDrv = "coreaudio";
    14111422                    else
    1412                         psz = "CoreAudio";
     1423                        pszDrv = "CoreAudio";
    14131424                    break;
    14141425                default:
    14151426                    if (details == VMINFO_MACHINEREADABLE)
    1416                         psz = "unknown";
     1427                        pszDrv = "unknown";
     1428                    break;
     1429            }
     1430            AudioControllerType_T enmCtrlType;
     1431            rc = AudioAdapter->COMGETTER(AudioController)(&enmCtrlType);
     1432            switch (enmCtrlType)
     1433            {
     1434                case AudioControllerType_AC97:
     1435                    if (details == VMINFO_MACHINEREADABLE)
     1436                        pszCtrl = "ac97";
     1437                    else
     1438                        pszCtrl = "AC97";
     1439                    break;
     1440                case AudioControllerType_SB16:
     1441                    if (details == VMINFO_MACHINEREADABLE)
     1442                        pszCtrl = "sb16";
     1443                    else
     1444                        pszCtrl = "SB16";
    14171445                    break;
    14181446            }
     
    14231451        {
    14241452            if (fEnabled)
    1425                 RTPrintf("audio=\"%s\"\n", psz);
     1453                RTPrintf("audio=\"%s\"\n", pszDrv);
    14261454            else
    14271455                RTPrintf("audio=\"none\"\n");
    14281456        }
    14291457        else
    1430             RTPrintf("Audio:           %s (Driver: %s)\n", fEnabled ? "enabled" : "disabled", psz);
     1458            RTPrintf("Audio:           %s (Driver: %s, Controller: %s)\n",
     1459                    fEnabled ? "enabled" : "disabled", pszDrv, pszCtrl);
    14311460    }
    14321461
     
    36483677    char *floppy = NULL;
    36493678    char *audio = NULL;
     3679    char *audiocontroller = NULL;
    36503680    char *clipboard = NULL;
    36513681#ifdef VBOX_VRDP
     
    39403970            i++;
    39413971            audio = argv[i];
     3972        }
     3973        else if (strcmp(argv[i], "-audiocontroller") == 0)
     3974        {
     3975            if (argc <= i + 1)
     3976            {
     3977                return errorArgument("Missing argument to '%s'", argv[i]);
     3978            }
     3979            i++;
     3980            audiocontroller = argv[i];
    39423981        }
    39433982        else if (strcmp(argv[i], "-clipboard") == 0)
     
    47444783            }
    47454784        }
    4746         if (audio)
     4785        if (audio || audiocontroller)
    47474786        {
    47484787            ComPtr<IAudioAdapter> audioAdapter;
     
    47504789            ASSERT(audioAdapter);
    47514790
    4752             /* disable? */
    4753             if (strcmp(audio, "none") == 0)
    4754             {
    4755                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(false));
    4756             }
    4757             else if (strcmp(audio, "null") == 0)
    4758             {
    4759                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_NullAudioDriver));
    4760                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    4761             }
     4791            if (audio)
     4792            {
     4793                /* disable? */
     4794                if (strcmp(audio, "none") == 0)
     4795                {
     4796                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(false));
     4797                }
     4798                else if (strcmp(audio, "null") == 0)
     4799                {
     4800                    CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_NullAudioDriver));
     4801                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     4802                }
    47624803#ifdef RT_OS_WINDOWS
    47634804#ifdef VBOX_WITH_WINMM
    4764             else if (strcmp(audio, "winmm") == 0)
    4765             {
    4766                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_WINMMAudioDriver));
    4767                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    4768             }
     4805                else if (strcmp(audio, "winmm") == 0)
     4806                {
     4807                    CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_WINMMAudioDriver));
     4808                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     4809                }
    47694810#endif
    4770             else if (strcmp(audio, "dsound") == 0)
    4771             {
    4772                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_DSOUNDAudioDriver));
    4773                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    4774             }
     4811                else if (strcmp(audio, "dsound") == 0)
     4812                {
     4813                    CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_DSOUNDAudioDriver));
     4814                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     4815                }
    47754816#endif /* RT_OS_WINDOWS */
    47764817#ifdef RT_OS_LINUX
    4777             else if (strcmp(audio, "oss") == 0)
    4778             {
    4779                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_OSSAudioDriver));
    4780                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    4781             }
     4818                else if (strcmp(audio, "oss") == 0)
     4819                {
     4820                    CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_OSSAudioDriver));
     4821                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     4822                }
    47824823# ifdef VBOX_WITH_ALSA
    4783             else if (strcmp(audio, "alsa") == 0)
    4784             {
    4785                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_ALSAAudioDriver));
    4786                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    4787             }
     4824                else if (strcmp(audio, "alsa") == 0)
     4825                {
     4826                    CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_ALSAAudioDriver));
     4827                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     4828                }
     4829# endif
     4830# ifdef VBOX_WITH_PULSE
     4831                else if (strcmp(audio, "pulse") == 0)
     4832                {
     4833                    CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_PulseAudioDriver));
     4834                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     4835                }
    47884836# endif
    47894837#endif /* !RT_OS_LINUX */
    47904838#ifdef RT_OS_DARWIN
    4791             else if (strcmp(audio, "coreaudio") == 0)
    4792             {
    4793                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_CoreAudioDriver));
    4794                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    4795             }
     4839                else if (strcmp(audio, "coreaudio") == 0)
     4840                {
     4841                    CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_CoreAudioDriver));
     4842                    CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     4843                }
     4844
    47964845#endif /* !RT_OS_DARWIN */
    4797             else
    4798             {
    4799                 errorArgument("Invalid -audio argument '%s'", audio);
    4800                 rc = E_FAIL;
    4801                 break;
     4846                else
     4847                {
     4848                    errorArgument("Invalid -audio argument '%s'", audio);
     4849                    rc = E_FAIL;
     4850                    break;
     4851                }
     4852            }
     4853            if (audiocontroller)
     4854            {
     4855                if (strcmp(audiocontroller, "sb16") == 0)
     4856                    CHECK_ERROR(audioAdapter, COMSETTER(AudioController)(AudioControllerType_SB16));
     4857                else if (strcmp(audiocontroller, "ac97") == 0)
     4858                    CHECK_ERROR(audioAdapter, COMSETTER(AudioController)(AudioControllerType_AC97));
     4859                else
     4860                {
     4861                    errorArgument("Invalid -audiocontroller argument '%s'", audiocontroller);
     4862                    rc = E_FAIL;
     4863                    break;
     4864                }
    48024865            }
    48034866        }
  • trunk/src/VBox/Main/AudioAdapterImpl.cpp

    r6076 r6597  
    265265}
    266266
     267STDMETHODIMP AudioAdapter::COMGETTER(AudioController)(AudioControllerType_T *aAudioController)
     268{
     269    if (!aAudioController)
     270        return E_POINTER;
     271
     272    AutoCaller autoCaller (this);
     273    CheckComRCReturnRC (autoCaller.rc());
     274
     275    AutoReaderLock alock (this);
     276
     277    *aAudioController = mData->mAudioController;
     278
     279    return S_OK;
     280}
     281
     282STDMETHODIMP AudioAdapter::COMSETTER(AudioController)(AudioControllerType_T aAudioController)
     283{
     284    AutoCaller autoCaller (this);
     285    CheckComRCReturnRC (autoCaller.rc());
     286
     287    /* the machine needs to be mutable */
     288    Machine::AutoMutableStateDependency adep (mParent);
     289    CheckComRCReturnRC (adep.rc());
     290
     291    AutoLock alock (this);
     292
     293    HRESULT rc = S_OK;
     294
     295    if (mData->mAudioController != aAudioController)
     296    {
     297        /*
     298         * which audio hardware type are we supposed to use?
     299         */
     300        switch (aAudioController)
     301        {
     302            case AudioControllerType_AC97:
     303            case AudioControllerType_SB16:
     304                mData.backup();
     305                mData->mAudioController = aAudioController;
     306                break;
     307
     308            default:
     309            {
     310                AssertMsgFailed (("Wrong audio controller type %d\n",
     311                                  aAudioController));
     312                rc = E_FAIL;
     313            }
     314        }
     315    }
     316
     317    return rc;
     318}
     319
    267320// IAudioAdapter methods
    268321/////////////////////////////////////////////////////////////////////////////
     
    306359    /* is the adapter enabled? (required) */
    307360    mData->mEnabled = audioAdapterNode.value <bool> ("enabled");
     361
     362    /* now check the audio adapter (not required, default is AC97) */
     363    const char *controller = audioAdapterNode.stringValue ("controller");
     364    if (strcmp (controller, "SB16") == 0)
     365        mData->mAudioController = AudioControllerType_SB16;
     366    else
     367        mData->mAudioController = AudioControllerType_AC97;
    308368
    309369    /* now check the audio driver (required) */
     
    375435    Key node = aMachineNode.createKey ("AudioAdapter");
    376436
     437    const char *controllerStr = NULL;
     438    switch (mData->mAudioController)
     439    {
     440        case AudioControllerType_SB16:
     441        {
     442            controllerStr = "SB16";
     443            break;
     444        }
     445        default:
     446        {
     447            controllerStr = "AC97";
     448            break;
     449        }
     450    }
     451    node.setStringValue ("controller", controllerStr);
     452
    377453    const char *driverStr = NULL;
    378454    switch (mData->mAudioDriver)
  • trunk/src/VBox/Main/ConsoleImpl2.cpp

    r6177 r6597  
    12831283
    12841284    /*
    1285      * AC'97 ICH audio
     1285     * AC'97 ICH / SoundBlaster16 audio
    12861286     */
    12871287    ComPtr<IAudioAdapter> audioAdapter;
     
    12891289    BOOL enabled = FALSE;
    12901290    if (audioAdapter)
    1291     {
    12921291        hrc = audioAdapter->COMGETTER(Enabled)(&enabled);                           H();
    1293     }
     1292
    12941293    if (enabled)
    12951294    {
    1296         rc = CFGMR3InsertNode(pDevices, "ichac97", &pDev); /* ichac97 */
    1297         rc = CFGMR3InsertNode(pDev,     "0", &pInst);
    1298         rc = CFGMR3InsertInteger(pInst, "Trusted",              1);     /* boolean */   RC_CHECK();
    1299         rc = CFGMR3InsertInteger(pInst, "PCIDeviceNo",          5);                     RC_CHECK();
    1300         Assert(!afPciDeviceNo[5]);
    1301         afPciDeviceNo[5] = true;
    1302         rc = CFGMR3InsertInteger(pInst, "PCIFunctionNo",        0);                     RC_CHECK();
    1303         rc = CFGMR3InsertNode(pInst,    "Config", &pCfg);
     1295        AudioControllerType_T audioController;
     1296        hrc = audioAdapter->COMGETTER(AudioController)(&audioController);               H();
     1297        switch (audioController)
     1298        {
     1299            case AudioControllerType_AC97:
     1300            {
     1301                /* default: ICH AC97 */
     1302                rc = CFGMR3InsertNode(pDevices, "ichac97", &pDev);                      RC_CHECK();
     1303                rc = CFGMR3InsertNode(pDev,     "0", &pInst);
     1304                rc = CFGMR3InsertInteger(pInst, "Trusted",          1); /* boolean */   RC_CHECK();
     1305                rc = CFGMR3InsertInteger(pInst, "PCIDeviceNo",      5);                 RC_CHECK();
     1306                Assert(!afPciDeviceNo[5]);
     1307                afPciDeviceNo[5] = true;
     1308                rc = CFGMR3InsertInteger(pInst, "PCIFunctionNo",    0);                 RC_CHECK();
     1309                rc = CFGMR3InsertNode(pInst,    "Config", &pCfg);                       RC_CHECK();
     1310                break;
     1311            }
     1312            case AudioControllerType_SB16:
     1313            {
     1314                /* legacy SoundBlaster16 */
     1315                rc = CFGMR3InsertNode(pDevices, "sb16", &pDev);                         RC_CHECK();
     1316                rc = CFGMR3InsertNode(pDev,     "0", &pInst);                           RC_CHECK();
     1317                rc = CFGMR3InsertInteger(pInst, "Trusted",          1); /* boolean */   RC_CHECK();
     1318                rc = CFGMR3InsertNode(pInst,    "Config", &pCfg);                       RC_CHECK();
     1319                rc = CFGMR3InsertInteger(pCfg,  "IRQ", 5);                              RC_CHECK();
     1320                rc = CFGMR3InsertInteger(pCfg,  "DMA", 1);                              RC_CHECK();
     1321                rc = CFGMR3InsertInteger(pCfg,  "DMA16", 5);                            RC_CHECK();
     1322                rc = CFGMR3InsertInteger(pCfg,  "Port", 0x220);                         RC_CHECK();
     1323                rc = CFGMR3InsertInteger(pCfg,  "Version", 0x0405);                     RC_CHECK();
     1324                break;
     1325            }
     1326        }
    13041327
    13051328        /* the Audio driver */
     
    13071330        rc = CFGMR3InsertString(pLunL0, "Driver",               "AUDIO");               RC_CHECK();
    13081331        rc = CFGMR3InsertNode(pLunL0,   "Config", &pCfg);                               RC_CHECK();
     1332
    13091333        AudioDriverType_T audioDriver;
    13101334        hrc = audioAdapter->COMGETTER(AudioDriver)(&audioDriver);                       H();
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r6384 r6597  
    88568856  </enum>
    88578857
     8858  <enum
     8859    name="AudioControllerType"
     8860    uuid="7afd395c-42c3-444e-8788-3ce80292f36c"
     8861    >
     8862    <const name="AC97" value="0"/>
     8863    <const name="SB16" value="1"/>
     8864  </enum>
     8865
    88588866  <interface
    88598867     name="IAudioAdapter" extends="$unknown"
     
    88718879        not contain any audio adapter. Can only be changed when
    88728880        the VM is not running.
     8881      </desc>
     8882    </attribute>
     8883    <attribute name="audioController" type="AudioControllerType">
     8884      <desc>
     8885        The audio hardware we emulate.
    88738886      </desc>
    88748887    </attribute>
  • trunk/src/VBox/Main/include/AudioAdapterImpl.h

    r6076 r6597  
    3838            mEnabled = false;
    3939            mAudioDriver = AudioDriverType_NullAudioDriver;
     40            mAudioController = AudioControllerType_AC97;
    4041        }
    4142
     
    4445            return this == &that ||
    4546                   (mEnabled == that.mEnabled &&
    46                     mAudioDriver == that.mAudioDriver);
     47                    mAudioDriver == that.mAudioDriver &&
     48                    mAudioController == that.mAudioController);
    4749        }
    4850
    4951        BOOL mEnabled;
    5052        AudioDriverType_T mAudioDriver;
     53        AudioControllerType_T mAudioController;
    5154    };
    5255
     
    7982    STDMETHOD(COMGETTER(AudioDriver)) (AudioDriverType_T *aAudioDriverType);
    8083    STDMETHOD(COMSETTER(AudioDriver)) (AudioDriverType_T aAudioDriverType);
     84    STDMETHOD(COMGETTER(AudioController)) (AudioControllerType_T *aAudioControllerType);
     85    STDMETHOD(COMSETTER(AudioController)) (AudioControllerType_T aAudioControllerType);
    8186
    8287    // public methods only for internal purposes
  • trunk/src/VBox/Main/xml/SchemaDefs.xsl

    r5999 r6597  
    129129      <xsl:with-param name="member" select="'        NetworkAdapterCount'"/>
    130130      <xsl:with-param name="select" select="
    131         xsd:complexType[@name='TAdapter']/xsd:attribute[@name='slot']//xsd:maxExclusive/@value
     131        xsd:complexType[@name='TNetworkAdapter']/xsd:attribute[@name='slot']//xsd:maxExclusive/@value
    132132      "/>
    133133  </xsl:call-template>
  • trunk/src/VBox/Main/xml/VirtualBox-settings-common.xsd

    r6384 r6597  
    545545</xsd:complexType>
    546546
    547 <xsd:complexType name="TAdapter">
     547<xsd:complexType name="TAudioAdapterBase">
     548  <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
     549  <xsd:attribute name="controller" default="AC97">
     550    <xsd:simpleType>
     551      <xsd:restriction base="xsd:token">
     552        <xsd:enumeration value="AC97"/>
     553        <xsd:enumeration value="SB16"/>
     554      </xsd:restriction>
     555    </xsd:simpleType>
     556  </xsd:attribute>
     557</xsd:complexType>
     558
     559<xsd:complexType name="TNetworkAdapter">
    548560  <xsd:attribute name="type" type="TNetworkAdapterType" default="Am79C970A"/>
    549561  <xsd:attribute name="slot" use="required">
  • trunk/src/VBox/Main/xml/VirtualBox-settings-freebsd.xsd

    r6076 r6597  
    6060      <xsd:complexType>
    6161        <xsd:complexContent>
    62           <xsd:extension base="TAdapter">
     62          <xsd:extension base="TNetworkAdapter">
    6363            <xsd:choice minOccurs="0">
    6464              <xsd:element name="NAT">
     
    8686
    8787<xsd:complexType name="TAudioAdapter">
    88   <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
    89   <xsd:attribute name="driver" use="required">
    90     <!--- @todo (dmik) capitalize enum values on next format change! -->
    91     <xsd:simpleType>
    92       <xsd:restriction base="xsd:token">
    93         <xsd:enumeration value="null"/>
    94         <xsd:enumeration value="oss"/>
    95         <xsd:enumeration value="alsa"/>
    96       </xsd:restriction>
    97     </xsd:simpleType>
    98   </xsd:attribute>
     88  <xsd:extension base="TAudioAdapterBase">
     89    <xsd:attribute name="driver" use="required">
     90      <!--- @todo (dmik) capitalize enum values on next format change! -->
     91      <xsd:simpleType>
     92        <xsd:restriction base="xsd:token">
     93          <xsd:enumeration value="null"/>
     94          <xsd:enumeration value="oss"/>
     95          <xsd:enumeration value="alsa"/>
     96        </xsd:restriction>
     97      </xsd:simpleType>
     98    </xsd:attribute>
     99  </xsd:extension>
    99100</xsd:complexType>
    100101
  • trunk/src/VBox/Main/xml/VirtualBox-settings-linux.xsd

    r6076 r6597  
    6060      <xsd:complexType>
    6161        <xsd:complexContent>
    62           <xsd:extension base="TAdapter">
     62          <xsd:extension base="TNetworkAdapter">
    6363            <xsd:choice minOccurs="0">
    6464              <xsd:element name="NAT">
     
    8686
    8787<xsd:complexType name="TAudioAdapter">
    88   <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
    89   <xsd:attribute name="driver" use="required">
    90     <!--- @todo (dmik) capitalize enum values on next format change! -->
    91     <xsd:simpleType>
    92       <xsd:restriction base="xsd:token">
    93         <xsd:enumeration value="null"/>
    94         <xsd:enumeration value="oss"/>
    95         <xsd:enumeration value="alsa"/>
    96         <xsd:enumeration value="pulse"/>
    97       </xsd:restriction>
    98     </xsd:simpleType>
    99   </xsd:attribute>
     88  <xsd:complexContent>
     89    <xsd:extension base="TAudioAdapterBase">
     90      <xsd:attribute name="driver" use="required">
     91        <!--- @todo (dmik) capitalize enum values on next format change! -->
     92        <xsd:simpleType>
     93          <xsd:restriction base="xsd:token">
     94            <xsd:enumeration value="null"/>
     95            <xsd:enumeration value="oss"/>
     96            <xsd:enumeration value="alsa"/>
     97            <xsd:enumeration value="pulse"/>
     98          </xsd:restriction>
     99        </xsd:simpleType>
     100      </xsd:attribute>
     101    </xsd:extension>
     102  </xsd:complexContent>
    100103</xsd:complexType>
    101104
  • trunk/src/VBox/Main/xml/VirtualBox-settings-macosx.xsd

    r6076 r6597  
    6060      <xsd:complexType>
    6161        <xsd:complexContent>
    62           <xsd:extension base="TAdapter">
     62          <xsd:extension base="TNetworkAdapter">
    6363            <xsd:choice minOccurs="0">
    6464              <xsd:element name="NAT">
     
    8686
    8787<xsd:complexType name="TAudioAdapter">
    88   <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
    89   <xsd:attribute name="driver" use="required">
    90     <!--- @todo (dmik) capitalize enum values on next format change! -->
    91     <xsd:simpleType>
    92       <xsd:restriction base="xsd:token">
    93         <xsd:enumeration value="null"/>
    94         <xsd:enumeration value="coreaudio"/>
    95       </xsd:restriction>
    96     </xsd:simpleType>
    97   </xsd:attribute>
     88  <xsd:extension base="TAudioAdapterBase">
     89    <xsd:attribute name="driver" use="required">
     90      <!--- @todo (dmik) capitalize enum values on next format change! -->
     91      <xsd:simpleType>
     92        <xsd:restriction base="xsd:token">
     93          <xsd:enumeration value="null"/>
     94          <xsd:enumeration value="coreaudio"/>
     95        </xsd:restriction>
     96      </xsd:simpleType>
     97    </xsd:attribute>
     98  </xsd:extension>
    9899</xsd:complexType>
    99100
  • trunk/src/VBox/Main/xml/VirtualBox-settings-os2.xsd

    r6596 r6597  
    6060      <xsd:complexType>
    6161        <xsd:complexContent>
    62           <xsd:extension base="TAdapter">
     62          <xsd:extension base="TNetworkAdapter">
    6363            <xsd:choice minOccurs="0">
    6464              <xsd:element name="NAT">
     
    8686
    8787<xsd:complexType name="TAudioAdapter">
    88   <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
    89   <xsd:attribute name="driver" use="required">
    90     <!--- @todo (dmik) capitalize enum values on next format change! -->
    91     <xsd:simpleType>
    92       <xsd:restriction base="xsd:token">
    93         <xsd:enumeration value="null"/>
    94         <xsd:enumeration value="mmpm"/>
    95       </xsd:restriction>
    96     </xsd:simpleType>
    97   </xsd:attribute>
     88  <xsd:extension base="TAudioAdapterBase">
     89    <xsd:attribute name="driver" use="required">
     90      <!--- @todo (dmik) capitalize enum values on next format change! -->
     91      <xsd:simpleType>
     92        <xsd:restriction base="xsd:token">
     93          <xsd:enumeration value="null"/>
     94          <xsd:enumeration value="mmpm"/>
     95        </xsd:restriction>
     96      </xsd:simpleType>
     97    </xsd:attribute>
     98  </xsd:extension>
    9899</xsd:complexType>
    99100
  • trunk/src/VBox/Main/xml/VirtualBox-settings-solaris.xsd

    r6076 r6597  
    6060      <xsd:complexType>
    6161        <xsd:complexContent>
    62           <xsd:extension base="TAdapter">
     62          <xsd:extension base="TNetworkAdapter">
    6363            <xsd:choice minOccurs="0">
    6464              <xsd:element name="NAT">
     
    8686
    8787<xsd:complexType name="TAudioAdapter">
    88   <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
    89   <xsd:attribute name="driver" use="required">
    90     <!--- @todo (dmik) capitalize enum values on next format change! -->
    91     <xsd:simpleType>
    92       <xsd:restriction base="xsd:token">
    93         <xsd:enumeration value="null"/>
    94         <xsd:enumeration value="esd"/>
    95       </xsd:restriction>
    96     </xsd:simpleType>
    97   </xsd:attribute>
     88  <xsd:extension base="TAudioAdapterBase">
     89    <xsd:attribute name="driver" use="required">
     90      <!--- @todo (dmik) capitalize enum values on next format change! -->
     91      <xsd:simpleType>
     92        <xsd:restriction base="xsd:token">
     93          <xsd:enumeration value="null"/>
     94          <xsd:enumeration value="esd"/>
     95        </xsd:restriction>
     96      </xsd:simpleType>
     97    </xsd:attribute>
     98  </xsd:extension>
    9899</xsd:complexType>
    99100
  • trunk/src/VBox/Main/xml/VirtualBox-settings-windows.xsd

    r6076 r6597  
    6060      <xsd:complexType>
    6161        <xsd:complexContent>
    62           <xsd:extension base="TAdapter">
     62          <xsd:extension base="TNetworkAdapter">
    6363            <xsd:choice minOccurs="0">
    6464              <xsd:element name="NAT">
     
    8484
    8585<xsd:complexType name="TAudioAdapter">
    86   <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
    87   <xsd:attribute name="driver" use="required">
    88     <!--- @todo (dmik) capitalize enum values on next format change! -->
    89     <xsd:simpleType>
    90       <xsd:restriction base="xsd:token">
    91         <xsd:enumeration value="null"/>
    92         <xsd:enumeration value="winmm"/>
    93         <xsd:enumeration value="dsound"/>
    94       </xsd:restriction>
    95     </xsd:simpleType>
    96   </xsd:attribute>
     86  <xsd:extension base="TAudioAdapterBase">
     87    <xsd:attribute name="driver" use="required">
     88      <!--- @todo (dmik) capitalize enum values on next format change! -->
     89      <xsd:simpleType>
     90        <xsd:restriction base="xsd:token">
     91          <xsd:enumeration value="null"/>
     92          <xsd:enumeration value="winmm"/>
     93          <xsd:enumeration value="dsound"/>
     94        </xsd:restriction>
     95      </xsd:simpleType>
     96    </xsd:attribute>
     97  </xsd:extension>
    9798</xsd:complexType>
    9899
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette