VirtualBox

Changeset 98176 in vbox for trunk/src


Ignore:
Timestamp:
Jan 21, 2023 10:09:36 PM (2 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
155361
Message:

VBoxFB: Made the code build again (still doesn't actually work) and switched it from the VBOXR3NPEXE to the VBOXMAINCLIENTEXE template. bugref:10348

Location:
trunk/src/VBox/Frontends/VBoxFB
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VBoxFB/Framebuffer.cpp

    r98103 r98176  
    11/* $Id$ */
    22/** @file
    3  * VBoxFB - implementation of VBoxDirectFB class.
     3 * VBoxFB - Implementation of the VBoxDirectFB class.
    44 */
    55
     
    5757    if (fbInternalSurface)
    5858    {
    59         DFBCHECK(fbInternalSurface->Release(fbInternalSurface));
     59        DFBCHECK((DFBResult)fbInternalSurface->Release(fbInternalSurface));
    6060        fbInternalSurface = NULL;
    6161    }
     
    175175}
    176176
    177 NS_IMETHODIMP VBoxDirectFB::GetPixelFormat (PRUint32 *pixelFormat)
     177NS_IMETHODIMP VBoxDirectFB::GetPixelFormat(BitmapFormat_T *pixelFormat)
    178178{
    179179    if (!pixelFormat)
    180180        return NS_ERROR_INVALID_POINTER;
    181     *pixelFormat = FramebufferPixelFormat_FOURCC_RGB;
     181    *pixelFormat = BitmapFormat_RGBA;
    182182    return NS_OK;
    183183}
     
    208208}
    209209
    210 NS_IMETHODIMP VBoxDirectFB::GetWinId(PRint64 *winId)
     210NS_IMETHODIMP VBoxDirectFB::GetWinId(PRInt64 *winId)
    211211{
    212212    if (!winId)
     
    215215    return NS_OK;
    216216}
     217
     218NS_IMETHODIMP VBoxDirectFB::GetCapabilities(PRUint32 *pcCapabilites, FramebufferCapabilities_T **ppaenmCapabilities)
     219{
     220    RT_NOREF(pcCapabilites, ppaenmCapabilities);
     221    AssertMsgFailed(("Not implemented"));
     222    return E_NOTIMPL;
     223}
     224
    217225
    218226NS_IMETHODIMP VBoxDirectFB::NotifyUpdate(PRUint32 x, PRUint32 y,
     
    228236        blitRectangle.w = w;
    229237        blitRectangle.h = h;
    230         if (scaleGuest)
     238        if (g_scaleGuest)
    231239        {
    232240            DFBRectangle hostRectangle;
     
    250258}
    251259
     260NS_IMETHODIMP VBoxDirectFB::NotifyUpdateImage(PRUint32 x, PRUint32 y, PRUint32 cx, PRUint32 cy, PRUint32 cbImage, PRUint8 *pbImage)
     261{
     262    RT_NOREF(x, y, cx, cy, cbImage, pbImage);
     263    AssertMsgFailed(("Not implemented"));
     264    return E_NOTIMPL;
     265}
     266
     267NS_IMETHODIMP VBoxDirectFB::NotifyChange(PRUint32 idScreen, PRUint32 xOrigin, PRUint32 yOrigin, PRUint32 cx, PRUint32 cy)
     268{
     269    RT_NOREF(idScreen, xOrigin, yOrigin, cx, cy);
     270    AssertMsgFailed(("Not implemented"));
     271    return E_NOTIMPL;
     272}
     273
    252274NS_IMETHODIMP VBoxDirectFB::RequestResize(PRUint32 aScreenId, PRUint32 pixelFormat, PRUint8 *vram,
    253275                                          PRUint32 bitsPerPixel, PRUint32 bytesPerLine,
     
    274296
    275297    // check if we have a fixed host video mode
    276     if (useFixedVideoMode)
     298    if (g_useFixedVideoMode)
    277299    {
    278300        // does the current video mode differ from what the guest wants?
    279         if ((screenWidth == w) && (screenHeight == h))
    280         {
     301        if (screenWidth == w && screenHeight == h)
    281302            printf("requested guest mode matches current host mode!\n");
    282         } else
    283         {
     303        else
    284304            createSurface(w, h);
    285         }
    286     } else
     305    }
     306    else
    287307    {
    288308        // we adopt to the guest resolution or the next higher that is available
     
    296316
    297317        // does the mode differ from what we wanted?
    298         if ((videoModes[bestMode].width != w) || (videoModes[bestMode].height != h) ||
    299             (videoModes[bestMode].bpp != bitsPerPixel))
     318        if (   g_videoModes[bestMode].width  != w
     319            || g_videoModes[bestMode].height != h
     320            || g_videoModes[bestMode].bpp    != bitsPerPixel)
    300321        {
    301322            printf("The mode does not fit exactly!\n");
    302323            createSurface(w, h);
    303         } else
     324        }
     325        else
    304326        {
    305327            printf("The mode fits exactly!\n");
    306328        }
    307329        // switch to this mode
    308         DFBCHECK(dfb->SetVideoMode(dfb, videoModes[bestMode].width, videoModes[bestMode].height,
    309                                    videoModes[bestMode].bpp));
     330        DFBCHECK(dfb->SetVideoMode(dfb,
     331                                   g_videoModes[bestMode].width,
     332                                   g_videoModes[bestMode].height,
     333                                   g_videoModes[bestMode].bpp));
    310334    }
    311335
     
    330354NS_IMETHODIMP VBoxDirectFB::VideoModeSupported(PRUint32 w, PRUint32 h, PRUint32 bpp, PRBool *supported)
    331355{
     356    RT_NOREF(w, h, bpp);
    332357    if (!supported)
    333358        return NS_ERROR_INVALID_POINTER;
     
    338363NS_IMETHODIMP VBoxDirectFB::GetVisibleRegion(PRUint8 *rectangles, PRUint32 count, PRUint32 *countCopied)
    339364{
     365    RT_NOREF(count);
    340366    PRTRECT rects = (PRTRECT)rectangles;
    341 
    342367    if (!rects || !countCopied)
    343368        return NS_ERROR_INVALID_POINTER;
     
    349374NS_IMETHODIMP VBoxDirectFB::SetVisibleRegion(PRUint8 *rectangles, PRUint32 count)
    350375{
     376    RT_NOREF(count);
    351377    PRTRECT rects = (PRTRECT)rectangles;
    352 
    353378    if (!rects)
    354379        return NS_ERROR_INVALID_POINTER;
     
    363388}
    364389
    365 NS_IMETHODIMP VBoxDirectFB::Notify3DEvent(PRUint32 type, PRUint8 *reserved)
    366 {
     390NS_IMETHODIMP VBoxDirectFB::Notify3DEvent(PRUint32 type, PRUint32 cbData, PRUint8 *pbData)
     391{
     392    RT_NOREF(type, cbData, pbData);
    367393    return NS_ERROR_NOT_IMPLEMENTED;
    368394}
  • trunk/src/VBox/Frontends/VBoxFB/Framebuffer.h

    r98103 r98176  
     1/* $Id$ */
    12/** @file
    23 * VBoxFB - Declaration of VBoxDirectFB class.
     
    4344    NS_IMETHOD GetWidth(PRUint32 *width);
    4445    NS_IMETHOD GetHeight(PRUint32 *height);
    45     NS_IMETHOD Lock();
    46     NS_IMETHOD Unlock();
    47     NS_IMETHOD GetAddress(PRUint8 **address);
    4846    NS_IMETHOD GetBitsPerPixel(PRUint32 *bitsPerPixel);
    4947    NS_IMETHOD GetBytesPerLine(PRUint32 *bytesPerLine);
    5048    NS_IMETHOD GetPixelFormat(PRUint32 *pixelFormat);
    51     NS_IMETHOD GetUsesGuestVRAM(PRBool *usesGuestVRAM);
    5249    NS_IMETHOD GetHeightReduction(PRUint32 *heightReduction);
    5350    NS_IMETHOD GetOverlay(IFramebufferOverlay **aOverlay);
    54     NS_IMETHOD GetWinId(PRUint64 *winId);
    55     NS_IMETHOD NotifyUpdate(PRUint32 x, PRUint32 y, PRUint32 w, PRUint32 h);
     51    NS_IMETHOD GetWinId(PRInt64 *winId);
     52    NS_IMETHOD GetCapabilities(PRUint32 *pcCapabilites, FramebufferCapabilities_T **ppaenmCapabilities);
     53
     54    NS_IMETHOD NotifyUpdate(PRUint32 x, PRUint32 y, PRUint32 cx, PRUint32 cy);
     55    NS_IMETHOD NotifyUpdateImage(PRUint32 x, PRUint32 y, PRUint32 cx, PRUint32 cy, PRUint32 cbImage, PRUint8 *pbImage);
     56    NS_IMETHOD NotifyChange(PRUint32 idScreen, PRUint32 xOrigin, PRUint32 yOrigin, PRUint32 cx, PRUint32 cy);
     57    NS_IMETHOD VideoModeSupported(PRUint32 width, PRUint32 height, PRUint32 bpp, PRBool *supported);
     58    NS_IMETHOD GetVisibleRegion(PRUint8 *paRectangles, PRUint32 cRectangles, PRUint32 *pcCopied);
     59    NS_IMETHOD SetVisibleRegion(PRUint8 *paRectangles, PRUint32 cRectangles);
     60
     61    NS_IMETHOD ProcessVHWACommand(PRUint8 *pCommand, LONG enmCmd, BOOL fGuestCmd);
     62
     63    NS_IMETHOD Notify3DEvent(PRUint32 type, PRUint32 cbData, PRUint8 *pbData);
     64
     65    /// @todo obsolete?
     66    NS_IMETHOD GetAddress(PRUint8 **address);
     67    NS_IMETHOD Lock();
     68    NS_IMETHOD Unlock();
     69    NS_IMETHOD GetUsesGuestVRAM(PRBool *usesGuestVRAM);
    5670    NS_IMETHOD RequestResize(PRUint32 aScreenId, PRUint32 pixelFormat, PRUint8 *vram,
    5771                             PRUint32 bitsPerPixel, PRUint32 bytesPerLine,
    5872                             PRUint32 w, PRUint32 h,
    5973                             PRBool *finished);
    60     NS_IMETHOD VideoModeSupported(PRUint32 width, PRUint32 height, PRUint32 bpp, PRBool *supported);
    61     NS_IMETHOD GetVisibleRegion(PRUint8 *aRectangles, PRUint32 aCount, PRUint32 *aCountCopied);
    62     NS_IMETHOD SetVisibleRegion(PRUint8 *aRectangles, PRUint32 aCount);
    6374
    64     NS_IMETHOD ProcessVHWACommand(PRUint8 *pCommand, LONG enmCmd, BOOL fGuestCmd);
    65 
    66     NS_IMETHOD Notify3DEvent(PRUint32 type, PRUint8 *reserved);
    6775private:
    6876    int createSurface(uint32_t w, uint32_t h);
  • trunk/src/VBox/Frontends/VBoxFB/Helper.cpp

    r98103 r98176  
     1/* $Id$ */
    12/** @file
    2  *
    3  * VBox frontends: Framebuffer (FB, DirectFB):
    4  * Helper routines
     3 * VBoxFB - Helper routines.
    54 */
    65
     
    3332 * Globals
    3433 */
    35 videoMode videoModes[MAX_VIDEOMODES] = {{0}};
    36 uint32_t numVideoModes = 0;
     34videoMode g_videoModes[MAX_VIDEOMODES] = {{0}};
     35uint32_t g_numVideoModes = 0;
    3736
    3837/**
     
    4746DFBEnumerationResult enumVideoModesHandler(int width, int height, int bpp, void *callbackdata)
    4847{
    49     if (numVideoModes >= MAX_VIDEOMODES)
     48    RT_NOREF(callbackdata);
     49    if (g_numVideoModes >= MAX_VIDEOMODES)
    5050    {
    5151        return DFENUM_CANCEL;
     
    5757        // DirectFB returns the same modes several times)
    5858        int32_t existingMode = getBestVideoMode(width, height, bpp);
    59         if ((existingMode == -1) ||
    60             ((videoModes[existingMode].width != (uint32_t)width) ||
    61              (videoModes[existingMode].height != (uint32_t)height) ||
    62              (videoModes[existingMode].bpp != (uint32_t)bpp)))
     59        if (   existingMode == -1
     60            || g_videoModes[existingMode].width  != (uint32_t)width
     61            || g_videoModes[existingMode].height != (uint32_t)height
     62            || g_videoModes[existingMode].bpp    != (uint32_t)bpp)
    6363        {
    64             videoModes[numVideoModes].width  = (uint32_t)width;
    65             videoModes[numVideoModes].height = (uint32_t)height;
    66             videoModes[numVideoModes].bpp    = (uint32_t)bpp;
    67             numVideoModes++;
     64            g_videoModes[g_numVideoModes].width  = (uint32_t)width;
     65            g_videoModes[g_numVideoModes].height = (uint32_t)height;
     66            g_videoModes[g_numVideoModes].bpp    = (uint32_t)bpp;
     67            g_numVideoModes++;
    6868        }
    6969    }
     
    8383    int32_t bestMode = -1;
    8484
    85     for (uint32_t i = 0; i < numVideoModes; i++)
     85    for (uint32_t i = 0; i < g_numVideoModes; i++)
    8686    {
    8787        // is this mode compatible?
    88         if ((videoModes[i].width >= width) && (videoModes[i].height >= height) &&
    89             (videoModes[i].bpp >= bpp))
     88        if (g_videoModes[i].width >= width && g_videoModes[i].height >= height && g_videoModes[i].bpp >= bpp)
    9089        {
    9190            // first suitable mode?
    9291            if (bestMode == -1)
    93             {
    9492                bestMode = i;
    95             } else
     93            else
    9694            {
    9795                // is it better than the one we got before?
    98                 if ((videoModes[i].width  < videoModes[bestMode].width) ||
    99                     (videoModes[i].height < videoModes[bestMode].height) ||
    100                     (videoModes[i].bpp    < videoModes[bestMode].bpp))
     96                if (   g_videoModes[i].width  < g_videoModes[bestMode].width
     97                    || g_videoModes[i].height < g_videoModes[bestMode].height
     98                    || g_videoModes[i].bpp    < g_videoModes[bestMode].bpp)
    10199                {
    102100                    bestMode = i;
  • trunk/src/VBox/Frontends/VBoxFB/Helper.h

    r98103 r98176  
    4040    uint32_t bpp;
    4141};
    42 extern videoMode videoModes[];
    43 extern uint32_t numVideoModes;
     42extern videoMode g_videoModes[];
     43extern uint32_t g_numVideoModes;
    4444
    4545DFBEnumerationResult enumVideoModesHandler(int width, int height, int bpp, void *callbackdata);
  • trunk/src/VBox/Frontends/VBoxFB/Makefile.kmk

    r98103 r98176  
    3434# VBoxFB
    3535#
    36 VBoxFB_TEMPLATE = VBOXR3NPEXE
     36VBoxFB_TEMPLATE = VBOXMAINCLIENTEXE
    3737VBoxFB_SOURCES  = \
    3838        VBoxFB.cpp \
  • trunk/src/VBox/Frontends/VBoxFB/VBoxFB.cpp

    r98103 r98176  
     1/* $Id$ */
    12/** @file
     3 * VBoxFB - Linux Direct Framebuffer Frontend.
    24 *
    3  * VBox frontends: Framebuffer (FB, DirectFB):
    4  * main() routine.
    5  *
    6  * NOTE: this code has not been tested, so expect bugs. It is not part
    7  * of a regular VirtualBox build.
     5 * @note This code has not been tested in a long time, so expect bugs if it
     6 *       even compiles.  It is not part of any regular VirtualBox build.
    87 */
    98
     
    3534#include <VBox/param.h>
    3635#include <iprt/path.h>
     36#include <VBox/version.h>
    3737
    3838/**
    3939 * Globals
    4040 */
    41 uint32_t useFixedVideoMode = 0;
    42 int scaleGuest = 0;
    43 videoMode fixedVideoMode = {0};
    44 int32_t initialVideoMode = -1;
     41uint32_t g_useFixedVideoMode = 0;
     42int g_scaleGuest = 0;
     43videoMode g_fixedVideoMode = {0};
     44int32_t g_initialVideoMode = -1;
    4545
    4646void showusage()
     
    7575           "Copyright (C) 2004-2005 secunet Security Networks AG\n", __DATE__, __TIME__);
    7676
     77    fputs("\nWARNING! Unmaintained code.\nWARNING! Needs fixing & debugging!\n\n", stdout);
     78
    7779    for (;;)
    7880    {
     
    8991            case 's':
    9092            {
     93#if 0
    9194                // UUID as string, parse it
    9295                RTUUID buuid;
     
    97100                    exit(-1);
    98101                }
     102#endif
    99103                uuid = optarg;
    100104                break;
     
    102106            case 'f':
    103107            {
    104                 if (sscanf(optarg, "%ux%ux%u", &fixedVideoMode.width, &fixedVideoMode.height,
    105                            &fixedVideoMode.bpp) != 3)
     108                if (sscanf(optarg, "%ux%ux%u", &g_fixedVideoMode.width, &g_fixedVideoMode.height,
     109                           &g_fixedVideoMode.bpp) != 3)
    106110                {
    107111                    printf("Error, invalid resolution argument!\n");
     
    109113                    exit(-1);
    110114                }
    111                 useFixedVideoMode = 1;
     115                g_useFixedVideoMode = 1;
    112116                break;
    113117            }
     
    119123            case 'c':
    120124            {
    121                 scaleGuest = 1;
     125                g_scaleGuest = 1;
    122126                break;
    123127            }
     
    136140
    137141
    138     /**
     142    /*
    139143     * XPCOM setup
    140144     */
     
    147151     */
    148152    {
     153#if 0
    149154        nsCOMPtr<nsIServiceManager> serviceManager;
    150155        rc = NS_InitXPCOM2(getter_AddRefs(serviceManager), nsnull, nsnull);
     
    179184            return -1;
    180185        }
     186#else
     187        rc = com::Initialize();
     188        if (NS_FAILED(rc))
     189        {
     190            printf("Error: XPCOM could not be initialized! rc=0x%x\n", rc);
     191            exit(-1);
     192        }
     193#endif
    181194
    182195        /*
     
    218231        }
    219232
     233        // find the VM
     234        nsCOMPtr<IMachine> machine;
     235        rc = virtualBox->FindMachine(NS_ConvertUTF8toUTF16(uuid).get(), getter_AddRefs(machine));
     236        if (rc != S_OK || !machine)
     237        {
     238            printf("Error: given machine not found!\n");
     239            return RTEXITCODE_FAILURE;
     240        }
     241
    220242        // open session for this VM
    221         rc = virtualBox->OpenSession(session, NS_ConvertUTF8toUTF16(uuid).get());
     243        rc = machine->LockMachine(session, LockType_VM);
    222244        if (NS_FAILED(rc))
    223245        {
     
    225247            exit(-1);
    226248        }
    227         nsCOMPtr<IMachine> machine;
    228249        session->GetMachine(getter_AddRefs(machine));
    229250        if (!machine)
     
    252273        VBoxDirectFB *frameBuffer = NULL;
    253274
    254         /**
     275        /*
    255276         * Init DirectFB
    256277         */
     
    272293        {
    273294            printf("*****************************************************\n");
    274             printf("Number of available host video modes: %u\n", numVideoModes);
    275             for (uint32_t i = 0; i < numVideoModes; i++)
     295            printf("Number of available host video modes: %u\n", g_numVideoModes);
     296            for (uint32_t i = 0; i < g_numVideoModes; i++)
    276297            {
    277298                printf("Mode %u: xres = %u, yres = %u, bpp = %u\n", i,
    278                        videoModes[i].width, videoModes[i].height, videoModes[i].bpp);
     299                       g_videoModes[i].width, g_videoModes[i].height, g_videoModes[i].bpp);
    279300            }
    280301            printf("Note: display modes with bpp < have been filtered out\n");
     
    283304        }
    284305
    285         if (useFixedVideoMode)
    286         {
    287             int32_t bestVideoMode = getBestVideoMode(fixedVideoMode.width,
    288                                                      fixedVideoMode.height,
    289                                                      fixedVideoMode.bpp);
     306        if (g_useFixedVideoMode)
     307        {
     308            int32_t bestVideoMode = getBestVideoMode(g_fixedVideoMode.width,
     309                                                     g_fixedVideoMode.height,
     310                                                     g_fixedVideoMode.bpp);
    290311            // validate the fixed mode
    291             if ((bestVideoMode == -1) ||
    292                 ((fixedVideoMode.width  != videoModes[bestVideoMode].width) ||
    293                 (fixedVideoMode.height != videoModes[bestVideoMode].height) ||
    294                 (fixedVideoMode.bpp    != videoModes[bestVideoMode].bpp)))
     312            if (   bestVideoMode == -1
     313                || g_fixedVideoMode.width  != g_videoModes[bestVideoMode].width
     314                || g_fixedVideoMode.height != g_videoModes[bestVideoMode].height
     315                || g_fixedVideoMode.bpp    != g_videoModes[bestVideoMode].bpp)
    295316            {
    296317                printf("Error: the specified fixed video mode is not available!\n");
     
    299320        } else
    300321        {
    301             initialVideoMode = getBestVideoMode(640, 480, 16);
    302             if (initialVideoMode == -1)
     322            g_initialVideoMode = getBestVideoMode(640, 480, 16);
     323            if (g_initialVideoMode == -1)
    303324            {
    304325                printf("Error: initial video mode 640x480x16 is not available!\n");
     
    318339
    319340
    320         if (useFixedVideoMode)
    321         {
    322             printf("Information: setting video mode to %ux%ux%u\n", fixedVideoMode.width,
    323                    fixedVideoMode.height, fixedVideoMode.bpp);
    324             DFBCHECK(dfb->SetVideoMode(dfb, fixedVideoMode.width,
    325                                        fixedVideoMode.height, fixedVideoMode.bpp));
     341        if (g_useFixedVideoMode)
     342        {
     343            printf("Information: setting video mode to %ux%ux%u\n", g_fixedVideoMode.width,
     344                   g_fixedVideoMode.height, g_fixedVideoMode.bpp);
     345            DFBCHECK(dfb->SetVideoMode(dfb, g_fixedVideoMode.width,
     346                                       g_fixedVideoMode.height, g_fixedVideoMode.bpp));
    326347        } else
    327348        {
    328349            printf("Information: starting with default video mode %ux%ux%u\n",
    329                    videoModes[initialVideoMode].width, videoModes[initialVideoMode].height,
    330                    videoModes[initialVideoMode].bpp);
    331             DFBCHECK(dfb->SetVideoMode(dfb, videoModes[initialVideoMode].width,
    332                                             videoModes[initialVideoMode].height,
    333                                             videoModes[initialVideoMode].bpp));
     350                   g_videoModes[g_initialVideoMode].width, g_videoModes[g_initialVideoMode].height,
     351                   g_videoModes[g_initialVideoMode].bpp);
     352            DFBCHECK(dfb->SetVideoMode(dfb,
     353                                       g_videoModes[g_initialVideoMode].width,
     354                                       g_videoModes[g_initialVideoMode].height,
     355                                       g_videoModes[g_initialVideoMode].bpp));
    334356        }
    335357
    336358        // register our framebuffer
    337359        frameBuffer = new VBoxDirectFB(dfb, surface);
    338         display->SetFramebuffer(0, frameBuffer);
    339 
    340         /**
     360        PRUnichar *pwszFrameBufferUuid = NULL;
     361        display->AttachFramebuffer(0, frameBuffer, &pwszFrameBufferUuid);
     362
     363        /*
    341364         * Start the VM execution thread
    342365         */
     
    346369        console->GetMouse(getter_AddRefs(mouse));
    347370
    348         /**
     371        /*
    349372         * Main event loop
    350373         */
     
    549572                        if (event.buttons & DIBM_MIDDLE)
    550573                            buttonState |= MouseButtonState::MiddleButton;
    551                         mouse->PutMouseEvent(mouseXDelta, mouseYDelta, mouseZDelta,
    552                                              buttonState);
     574                        mouse->PutMouseEvent(mouseXDelta, mouseYDelta, mouseZDelta, 0, buttonState);
    553575                        break;
    554576                    }
  • trunk/src/VBox/Frontends/VBoxFB/VBoxFB.h

    r98103 r98176  
     1/* $Id$ */
    12/** @file
    2  *
    3  * VBox frontends: Framebuffer (FB, DirectFB):
    4  * Main header file
     3 * VBox frontends - Framebuffer (FB, DirectFB), Main header file.
    54 */
    65
     
    5857#include <VBox/err.h>
    5958#include <VBox/log.h>
     59#ifndef VBOX_WITH_XPCOM
     60# define VBOX_WITH_XPCOM
     61#endif
     62#include <VBox/com/com.h>
    6063#include <iprt/assert.h>
    6164#include <iprt/uuid.h>
     
    8588 * Globals
    8689 */
    87 extern uint32_t useFixedVideoMode;
    88 extern videoMode fixedVideoMode;
    89 extern int scaleGuest;
     90extern uint32_t g_useFixedVideoMode;
     91extern videoMode g_fixedVideoMode;
     92extern int g_scaleGuest;
    9093
    9194#endif /* !VBOX_INCLUDED_SRC_VBoxFB_VBoxFB_h */
Note: See TracChangeset for help on using the changeset viewer.

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