VirtualBox

Changeset 52064 in vbox


Ignore:
Timestamp:
Jul 16, 2014 9:23:55 PM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
95065
Message:

Main: IDisplay converted to use API wrappers.

Location:
trunk/src/VBox
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostServices/SharedOpenGL/crserver/crservice.cpp

    r51801 r52064  
    11231123                            CHECK_ERROR_RET(pFramebuffer, COMGETTER(Width)(&w), rc);
    11241124                            CHECK_ERROR_RET(pFramebuffer, COMGETTER(Height)(&h), rc);
    1125                             CHECK_ERROR_RET(pDisplay, GetScreenResolution(i, NULL, NULL, NULL, &xo, &yo), rc);
     1125                            ULONG dummy;
     1126                            CHECK_ERROR_RET(pDisplay, GetScreenResolution(i, &dummy, &dummy, &dummy, &xo, &yo), rc);
    11261127
    11271128                            rc = crVBoxServerMapScreen(i, xo, yo, w, h, winId);
     
    12481249                            CHECK_ERROR_BREAK(pFramebuffer, COMGETTER(Width)(&w));
    12491250                            CHECK_ERROR_BREAK(pFramebuffer, COMGETTER(Height)(&h));
    1250                             CHECK_ERROR_BREAK(pDisplay, GetScreenResolution(screenId, NULL, NULL, NULL, &xo, &yo));
     1251                            ULONG dummy;
     1252                            CHECK_ERROR_BREAK(pDisplay, GetScreenResolution(screenId, &dummy, &dummy, &dummy, &xo, &yo));
    12511253
    12521254                            rc = crVBoxServerMapScreen(screenId, xo, yo, w, h, winId);
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r51670 r52064  
    1555415554    uuid="0d85a960-bfa7-4f26-9637-fdd521b7f3c1"
    1555515555    wsmap="managed"
     15556    wrap-hint-server-addinterfaces="IEventListener"
    1555615557    >
    1555715558    <desc>
     
    1832418325    uuid="12F4DCDB-12B2-4EC1-B7CD-DDD9F6C5BF4D"
    1832518326    wsmap="managed"
    18326     wrap-hint-server="addinterface=IInternalSessionControl"
     18327    wrap-hint-server-addinterfaces="IInternalSessionControl"
    1832718328    >
    1832818329    <desc>
  • trunk/src/VBox/Main/include/DisplayImpl.h

    r51762 r52064  
    1919#define ____H_DISPLAYIMPL
    2020
    21 #include "VirtualBoxBase.h"
    2221#include "SchemaDefs.h"
    2322
     
    2726#include <VBox/VBoxVideo.h>
    2827#include <VBox/vmm/pdmifs.h>
     28#include "DisplayWrap.h"
    2929
    3030#ifdef VBOX_WITH_CROGL
     
    104104{
    105105public:
    106     virtual int getScreenResolution(uint32_t cScreen, ULONG *pcx,
    107                                     ULONG *pcy, ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin) = 0;
    108     virtual void getFramebufferDimensions(int32_t *px1, int32_t *py1,
    109                                           int32_t *px2, int32_t *py2) = 0;
     106    virtual HRESULT i_getScreenResolution(ULONG cScreen, ULONG *pcx,
     107                                          ULONG *pcy, ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin) = 0;
     108    virtual void i_getFramebufferDimensions(int32_t *px1, int32_t *py1,
     109                                            int32_t *px2, int32_t *py2) = 0;
    110110};
    111111
     
    113113
    114114class ATL_NO_VTABLE Display :
    115     public VirtualBoxBase,
    116     VBOX_SCRIPTABLE_IMPL(IEventListener),
    117     VBOX_SCRIPTABLE_IMPL(IDisplay),
     115    public DisplayWrap,
    118116    public DisplayMouseInterface
    119117{
    120118public:
    121119
    122     VIRTUALBOXBASE_ADD_ERRORINFO_SUPPORT(Display, IDisplay)
    123 
    124     DECLARE_NOT_AGGREGATABLE(Display)
    125 
    126     DECLARE_PROTECT_FINAL_CONSTRUCT()
    127 
    128     BEGIN_COM_MAP(Display)
    129         VBOX_DEFAULT_INTERFACE_ENTRIES(IDisplay)
    130         COM_INTERFACE_ENTRY(IEventListener)
    131     END_COM_MAP()
    132 
    133120    DECLARE_EMPTY_CTOR_DTOR(Display)
    134121
     
    139126    HRESULT init(Console *aParent);
    140127    void uninit();
    141     int  registerSSM(PUVM pUVM);
     128    int  i_registerSSM(PUVM pUVM);
    142129
    143130    // public methods only for internal purposes
    144     int  handleDisplayResize(unsigned uScreenId, uint32_t bpp, void *pvVRAM, uint32_t cbLine, uint32_t w, uint32_t h, uint16_t flags);
    145     void handleDisplayUpdateLegacy(int x, int y, int cx, int cy);
    146     void handleDisplayUpdate(unsigned uScreenId, int x, int y, int w, int h);
     131    int  i_handleDisplayResize(unsigned uScreenId, uint32_t bpp, void *pvVRAM, uint32_t cbLine,
     132                               uint32_t w, uint32_t h, uint16_t flags);
     133    void i_handleDisplayUpdateLegacy(int x, int y, int cx, int cy);
     134    void i_handleDisplayUpdate(unsigned uScreenId, int x, int y, int w, int h);
    147135#ifdef VBOX_WITH_VIDEOHWACCEL
    148     int handleVHWACommandProcess(PVBOXVHWACMD pCommand);
     136    int  i_handleVHWACommandProcess(PVBOXVHWACMD pCommand);
    149137#endif
    150138#ifdef VBOX_WITH_CRHGSMI
    151     void handleCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam);
    152     void handleCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam);
    153     void handleCrHgsmiCommandProcess(PVBOXVDMACMD_CHROMIUM_CMD pCmd, uint32_t cbCmd);
    154     void handleCrHgsmiControlProcess(PVBOXVDMACMD_CHROMIUM_CTL pCtl, uint32_t cbCtl);
    155 #endif
    156 #if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    157     int  handleCrHgcmCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
    158                                         PFNCRCTLCOMPLETION pfnCompletion,
    159                                         void *pvCompletion);
    160     void  handleCrVRecScreenshotPerform(uint32_t uScreen,
    161                                         uint32_t x, uint32_t y, uint32_t uPixelFormat, uint32_t uBitsPerPixel,
    162                                         uint32_t uBytesPerLine, uint32_t uGuestWidth, uint32_t uGuestHeight,
    163                                         uint8_t *pu8BufferAddress, uint64_t u64TimeStamp);
    164     bool handleCrVRecScreenshotBegin(uint32_t uScreen, uint64_t u64TimeStamp);
    165     void handleCrVRecScreenshotEnd(uint32_t uScreen, uint64_t u64TimeStamp);
    166     void handleVRecCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext);
    167 #endif
    168 
    169     int notifyCroglResize(const PVBVAINFOVIEW pView, const PVBVAINFOSCREEN pScreen, void *pvVRAM);
    170 
    171     void getFramebufferDimensions(int32_t *px1, int32_t *py1, int32_t *px2, int32_t *py2);
    172     int getScreenResolution(uint32_t cScreen, ULONG *pcx, ULONG *pcy,
    173                             ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin)
     139    void i_handleCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam);
     140    void i_handleCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam);
     141    void i_handleCrHgsmiCommandProcess(PVBOXVDMACMD_CHROMIUM_CMD pCmd, uint32_t cbCmd);
     142    void i_handleCrHgsmiControlProcess(PVBOXVDMACMD_CHROMIUM_CTL pCtl, uint32_t cbCtl);
     143#endif
     144#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     145    int  i_handleCrHgcmCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
     146                                 PFNCRCTLCOMPLETION pfnCompletion,
     147                                 void *pvCompletion);
     148    void  i_handleCrVRecScreenshotPerform(uint32_t uScreen,
     149                                          uint32_t x, uint32_t y, uint32_t uPixelFormat, uint32_t uBitsPerPixel,
     150                                          uint32_t uBytesPerLine, uint32_t uGuestWidth, uint32_t uGuestHeight,
     151                                          uint8_t *pu8BufferAddress, uint64_t u64TimeStamp);
     152    bool i_handleCrVRecScreenshotBegin(uint32_t uScreen, uint64_t u64TimeStamp);
     153    void i_handleCrVRecScreenshotEnd(uint32_t uScreen, uint64_t u64TimeStamp);
     154    void i_handleVRecCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext);
     155#endif
     156
     157    int i_notifyCroglResize(const PVBVAINFOVIEW pView, const PVBVAINFOSCREEN pScreen, void *pvVRAM);
     158
     159    int  i_handleSetVisibleRegion(uint32_t cRect, PRTRECT pRect);
     160    int  i_handleQueryVisibleRegion(uint32_t *pcRect, PRTRECT pRect);
     161
     162    int  i_VideoAccelEnable(bool fEnable, VBVAMEMORY *pVbvaMemory);
     163    void i_VideoAccelFlush(void);
     164    bool i_VideoAccelAllowed(void);
     165    void i_VideoAccelVRDP(bool fEnable);
     166
     167    int  i_VideoCaptureStart();
     168    void i_VideoCaptureStop();
     169    int  i_VideoCaptureEnableScreens(ComSafeArrayIn(BOOL, aScreens));
     170
     171    void i_notifyPowerDown(void);
     172
     173    // DisplayMouseInterface methods
     174    virtual HRESULT i_getScreenResolution(ULONG cScreen, ULONG *pcx,
     175                                          ULONG *pcy, ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin)
    174176    {
    175         return GetScreenResolution(cScreen, pcx, pcy, pcBPP, pXOrigin, pYOrigin);
     177        return getScreenResolution(cScreen, pcx, pcy, pcBPP, pXOrigin, pYOrigin);
    176178    }
    177 
    178     int  handleSetVisibleRegion(uint32_t cRect, PRTRECT pRect);
    179     int  handleQueryVisibleRegion(uint32_t *pcRect, PRTRECT pRect);
    180 
    181     int  VideoAccelEnable(bool fEnable, VBVAMEMORY *pVbvaMemory);
    182     void VideoAccelFlush(void);
    183     bool VideoAccelAllowed(void);
    184     void VideoAccelVRDP(bool fEnable);
    185 
    186     int  VideoCaptureStart();
    187     void VideoCaptureStop();
    188     int  VideoCaptureEnableScreens(ComSafeArrayIn(BOOL, aScreens));
    189 
    190     void notifyPowerDown(void);
    191 
    192     // IEventListener methods
    193     STDMETHOD(HandleEvent)(IEvent * aEvent);
    194 
    195     // IDisplay methods
    196     STDMETHOD(GetScreenResolution)(ULONG aScreenId, ULONG *aWidth, ULONG *aHeight, ULONG *aBitsPerPixel, LONG *aXOrigin, LONG *aYOrigin);
    197     STDMETHOD(AttachFramebuffer)(ULONG aScreenId,
    198                                  IFramebuffer *aFramebuffer);
    199     STDMETHOD(DetachFramebuffer)(ULONG aScreenId);
    200     STDMETHOD(QueryFramebuffer)(ULONG aScreenId,
    201                                 IFramebuffer **aFramebuffer);
    202     STDMETHOD(SetVideoModeHint)(ULONG aDisplay, BOOL aEnabled, BOOL aChangeOrigin, LONG aOriginX, LONG aOriginY, ULONG aWidth, ULONG aHeight, ULONG aBitsPerPixel);
    203     STDMETHOD(TakeScreenShot)(ULONG aScreenId, BYTE *address, ULONG width, ULONG height);
    204     STDMETHOD(TakeScreenShotToArray)(ULONG aScreenId, ULONG width, ULONG height, ComSafeArrayOut(BYTE, aScreenData));
    205     STDMETHOD(TakeScreenShotPNGToArray)(ULONG aScreenId, ULONG width, ULONG height, ComSafeArrayOut(BYTE, aScreenData));
    206     STDMETHOD(DrawToScreen)(ULONG aScreenId, BYTE *address, ULONG x, ULONG y, ULONG width, ULONG height);
    207     STDMETHOD(InvalidateAndUpdate)();
    208     STDMETHOD(SetSeamlessMode)(BOOL enabled);
    209 
    210     STDMETHOD(CompleteVHWACommand)(BYTE *pCommand);
    211 
    212     STDMETHOD(ViewportChanged)(ULONG aScreenId, ULONG x, ULONG y, ULONG width, ULONG height);
    213     STDMETHOD(QuerySourceBitmap)(ULONG aScreenId,
    214                                  IDisplaySourceBitmap **aDisplaySourceBitmap);
    215     STDMETHOD(SetFramebufferUpdateMode)(ULONG aScreenId,
    216                                         FramebufferUpdateMode_T aFramebufferUpdateMode);
    217 
     179    virtual void i_getFramebufferDimensions(int32_t *px1, int32_t *py1,
     180                                            int32_t *px2, int32_t *py2);
     181   
    218182    static const PDMDRVREG  DrvReg;
    219183
    220184private:
    221 
     185    // Wrapped IDisplay properties
     186
     187    // Wrapped IDisplay methods
     188    virtual HRESULT getScreenResolution(ULONG aScreenId,
     189                                        ULONG *aWidth,
     190                                        ULONG *aHeight,
     191                                        ULONG *aBitsPerPixel,
     192                                        LONG *aXOrigin,
     193                                        LONG *aYOrigin);
     194    virtual HRESULT attachFramebuffer(ULONG aScreenId,
     195                                      const ComPtr<IFramebuffer> &aFramebuffer);
     196    virtual HRESULT detachFramebuffer(ULONG aScreenId);
     197    virtual HRESULT queryFramebuffer(ULONG aScreenId,
     198                                     ComPtr<IFramebuffer> &aFramebuffer);
     199    virtual HRESULT setVideoModeHint(ULONG aDisplay,
     200                                     BOOL aEnabled,
     201                                     BOOL aChangeOrigin,
     202                                     LONG aOriginX,
     203                                     LONG aOriginY,
     204                                     ULONG aWidth,
     205                                     ULONG aHeight,
     206                                     ULONG aBitsPerPixel);
     207    virtual HRESULT setSeamlessMode(BOOL aEnabled);
     208    virtual HRESULT takeScreenShot(ULONG aScreenId,
     209                                   BYTE *aAddress,
     210                                   ULONG aWidth,
     211                                   ULONG aHeight);
     212    virtual HRESULT takeScreenShotToArray(ULONG aScreenId,
     213                                          ULONG aWidth,
     214                                          ULONG aHeight,
     215                                          std::vector<BYTE> &aScreenData);
     216    virtual HRESULT takeScreenShotPNGToArray(ULONG aScreenId,
     217                                             ULONG aWidth,
     218                                             ULONG aHeight,
     219                                             std::vector<BYTE> &aScreenData);
     220    virtual HRESULT drawToScreen(ULONG aScreenId,
     221                                 BYTE *aAddress,
     222                                 ULONG aX,
     223                                 ULONG aY,
     224                                 ULONG aWidth,
     225                                 ULONG aHeight);
     226    virtual HRESULT invalidateAndUpdate();
     227    virtual HRESULT completeVHWACommand(BYTE *aCommand);
     228    virtual HRESULT viewportChanged(ULONG aScreenId,
     229                                    ULONG aX,
     230                                    ULONG aY,
     231                                    ULONG aWidth,
     232                                    ULONG aHeight);
     233    virtual HRESULT querySourceBitmap(ULONG aScreenId,
     234                                      ComPtr<IDisplaySourceBitmap> &aDisplaySourceBitmap);
     235    virtual HRESULT setFramebufferUpdateMode(ULONG aScreenId,
     236                                             FramebufferUpdateMode_T aFramebufferUpdateMode);
     237
     238    // Wrapped IEventListener properties
     239
     240    // Wrapped IEventListener methods
     241    virtual HRESULT handleEvent(const ComPtr<IEvent> &aEvent);
     242
     243    // other internal methods   
    222244#ifdef VBOX_WITH_CRHGSMI
    223     void setupCrHgsmiData(void);
    224     void destructCrHgsmiData(void);
    225 #endif
    226 
    227 #if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    228     int crViewportNotify(ULONG aScreenId, ULONG x, ULONG y, ULONG width, ULONG height);
    229 #endif
    230 
    231     static DECLCALLBACK(void*) drvQueryInterface(PPDMIBASE pInterface, const char *pszIID);
    232     static DECLCALLBACK(int)   drvConstruct(PPDMDRVINS pDrvIns, PCFGMNODE pCfg, uint32_t fFlags);
    233     static DECLCALLBACK(void)  drvDestruct(PPDMDRVINS pDrvIns);
    234     static DECLCALLBACK(int)   displayResizeCallback(PPDMIDISPLAYCONNECTOR pInterface, uint32_t bpp, void *pvVRAM, uint32_t cbLine, uint32_t cx, uint32_t cy);
    235     static DECLCALLBACK(void)  displayUpdateCallback(PPDMIDISPLAYCONNECTOR pInterface,
    236                                                      uint32_t x, uint32_t y, uint32_t cx, uint32_t cy);
    237     static DECLCALLBACK(void)  displayRefreshCallback(PPDMIDISPLAYCONNECTOR pInterface);
    238     static DECLCALLBACK(void)  displayResetCallback(PPDMIDISPLAYCONNECTOR pInterface);
    239     static DECLCALLBACK(void)  displayLFBModeChangeCallback(PPDMIDISPLAYCONNECTOR pInterface, bool fEnabled);
    240     static DECLCALLBACK(void)  displayProcessAdapterDataCallback(PPDMIDISPLAYCONNECTOR pInterface, void *pvVRAM, uint32_t u32VRAMSize);
    241     static DECLCALLBACK(void)  displayProcessDisplayDataCallback(PPDMIDISPLAYCONNECTOR pInterface, void *pvVRAM, unsigned uScreenId);
     245    void i_setupCrHgsmiData(void);
     246    void i_destructCrHgsmiData(void);
     247#endif
     248
     249#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     250    int i_crViewportNotify(ULONG aScreenId, ULONG x, ULONG y, ULONG width, ULONG height);
     251#endif
     252
     253    static DECLCALLBACK(void*) i_drvQueryInterface(PPDMIBASE pInterface, const char *pszIID);
     254    static DECLCALLBACK(int)   i_drvConstruct(PPDMDRVINS pDrvIns, PCFGMNODE pCfg, uint32_t fFlags);
     255    static DECLCALLBACK(void)  i_drvDestruct(PPDMDRVINS pDrvIns);
     256    static DECLCALLBACK(int)   i_displayResizeCallback(PPDMIDISPLAYCONNECTOR pInterface, uint32_t bpp, void *pvVRAM,
     257                                                       uint32_t cbLine, uint32_t cx, uint32_t cy);
     258    static DECLCALLBACK(void)  i_displayUpdateCallback(PPDMIDISPLAYCONNECTOR pInterface,
     259                                                       uint32_t x, uint32_t y, uint32_t cx, uint32_t cy);
     260    static DECLCALLBACK(void)  i_displayRefreshCallback(PPDMIDISPLAYCONNECTOR pInterface);
     261    static DECLCALLBACK(void)  i_displayResetCallback(PPDMIDISPLAYCONNECTOR pInterface);
     262    static DECLCALLBACK(void)  i_displayLFBModeChangeCallback(PPDMIDISPLAYCONNECTOR pInterface, bool fEnabled);
     263    static DECLCALLBACK(void)  i_displayProcessAdapterDataCallback(PPDMIDISPLAYCONNECTOR pInterface,
     264                                                                   void *pvVRAM, uint32_t u32VRAMSize);
     265    static DECLCALLBACK(void)  i_displayProcessDisplayDataCallback(PPDMIDISPLAYCONNECTOR pInterface,
     266                                                                   void *pvVRAM, unsigned uScreenId);
    242267
    243268#ifdef VBOX_WITH_VIDEOHWACCEL
    244     static DECLCALLBACK(int)  displayVHWACommandProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVHWACMD pCommand);
     269    static DECLCALLBACK(int)  i_displayVHWACommandProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVHWACMD pCommand);
    245270#endif
    246271
    247272#ifdef VBOX_WITH_CRHGSMI
    248     static DECLCALLBACK(void)  displayCrHgsmiCommandProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVDMACMD_CHROMIUM_CMD pCmd, uint32_t cbCmd);
    249     static DECLCALLBACK(void)  displayCrHgsmiControlProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVDMACMD_CHROMIUM_CTL pCtl, uint32_t cbCtl);
    250 
    251     static DECLCALLBACK(void)  displayCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext);
    252     static DECLCALLBACK(void)  displayCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext);
    253 #endif
    254 #if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    255     static DECLCALLBACK(int)  displayCrHgcmCtlSubmit(PPDMIDISPLAYCONNECTOR pInterface,
    256                                         struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
    257                                         PFNCRCTLCOMPLETION pfnCompletion,
    258                                         void *pvCompletion);
    259     static DECLCALLBACK(void)  displayCrHgcmCtlSubmitCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext);
     273    static DECLCALLBACK(void)  i_displayCrHgsmiCommandProcess(PPDMIDISPLAYCONNECTOR pInterface,
     274                                                              PVBOXVDMACMD_CHROMIUM_CMD pCmd, uint32_t cbCmd);
     275    static DECLCALLBACK(void)  i_displayCrHgsmiControlProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVDMACMD_CHROMIUM_CTL pCtl,
     276                                                              uint32_t cbCtl);
     277
     278    static DECLCALLBACK(void)  i_displayCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
     279                                                                 void *pvContext);
     280    static DECLCALLBACK(void)  i_displayCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
     281                                                                 void *pvContext);
     282#endif
     283#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     284    static DECLCALLBACK(int)  i_displayCrHgcmCtlSubmit(PPDMIDISPLAYCONNECTOR pInterface,
     285                                                       struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
     286                                                       PFNCRCTLCOMPLETION pfnCompletion,
     287                                                       void *pvCompletion);
     288    static DECLCALLBACK(void) i_displayCrHgcmCtlSubmitCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
     289                                                                 void *pvContext);
    260290#endif
    261291#ifdef VBOX_WITH_HGSMI
    262     static DECLCALLBACK(int)   displayVBVAEnable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, PVBVAHOSTFLAGS pHostFlags, bool fRenderThreadMode);
    263     static DECLCALLBACK(void)  displayVBVADisable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId);
    264     static DECLCALLBACK(void)  displayVBVAUpdateBegin(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId);
    265     static DECLCALLBACK(void)  displayVBVAUpdateProcess(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, const PVBVACMDHDR pCmd, size_t cbCmd);
    266     static DECLCALLBACK(void)  displayVBVAUpdateEnd(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, int32_t x, int32_t y, uint32_t cx, uint32_t cy);
    267     static DECLCALLBACK(int)   displayVBVAResize(PPDMIDISPLAYCONNECTOR pInterface, const PVBVAINFOVIEW pView, const PVBVAINFOSCREEN pScreen, void *pvVRAM);
    268     static DECLCALLBACK(int)   displayVBVAMousePointerShape(PPDMIDISPLAYCONNECTOR pInterface, bool fVisible, bool fAlpha, uint32_t xHot, uint32_t yHot, uint32_t cx, uint32_t cy, const void *pvShape);
    269 #endif
    270 
    271 #if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    272     static DECLCALLBACK(void) displayCrVRecScreenshotPerform(void *pvCtx, uint32_t uScreen,
    273                                                              uint32_t x, uint32_t y,
    274                                                              uint32_t uBitsPerPixel, uint32_t uBytesPerLine,
    275                                                              uint32_t uGuestWidth, uint32_t uGuestHeight,
    276                                                              uint8_t *pu8BufferAddress, uint64_t u64TimeStamp);
    277     static DECLCALLBACK(bool) displayCrVRecScreenshotBegin(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp);
    278     static DECLCALLBACK(void) displayCrVRecScreenshotEnd(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp);
    279 
    280     static DECLCALLBACK(void)  displayVRecCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext);
    281 #endif
    282     static DECLCALLBACK(void) displayCrCmdFree(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, int rc, void *pvCompletion);
    283 
    284     static DECLCALLBACK(void)  displaySSMSaveScreenshot(PSSMHANDLE pSSM, void *pvUser);
    285     static DECLCALLBACK(int)   displaySSMLoadScreenshot(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass);
    286     static DECLCALLBACK(void)  displaySSMSave(PSSMHANDLE pSSM, void *pvUser);
    287     static DECLCALLBACK(int)   displaySSMLoad(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass);
     292    static DECLCALLBACK(int)   i_displayVBVAEnable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId,
     293                                                   PVBVAHOSTFLAGS pHostFlags, bool fRenderThreadMode);
     294    static DECLCALLBACK(void)  i_displayVBVADisable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId);
     295    static DECLCALLBACK(void)  i_displayVBVAUpdateBegin(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId);
     296    static DECLCALLBACK(void)  i_displayVBVAUpdateProcess(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId,
     297                                                          const PVBVACMDHDR pCmd, size_t cbCmd);
     298    static DECLCALLBACK(void)  i_displayVBVAUpdateEnd(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, int32_t x, int32_t y,
     299                                                      uint32_t cx, uint32_t cy);
     300    static DECLCALLBACK(int)   i_displayVBVAResize(PPDMIDISPLAYCONNECTOR pInterface, const PVBVAINFOVIEW pView,
     301                                                   const PVBVAINFOSCREEN pScreen, void *pvVRAM);
     302    static DECLCALLBACK(int)   i_displayVBVAMousePointerShape(PPDMIDISPLAYCONNECTOR pInterface, bool fVisible, bool fAlpha,
     303                                                              uint32_t xHot, uint32_t yHot, uint32_t cx, uint32_t cy,
     304                                                              const void *pvShape);
     305#endif
     306
     307#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     308    static DECLCALLBACK(void) i_displayCrVRecScreenshotPerform(void *pvCtx, uint32_t uScreen,
     309                                                               uint32_t x, uint32_t y,
     310                                                               uint32_t uBitsPerPixel, uint32_t uBytesPerLine,
     311                                                               uint32_t uGuestWidth, uint32_t uGuestHeight,
     312                                                               uint8_t *pu8BufferAddress, uint64_t u64TimeStamp);
     313    static DECLCALLBACK(bool) i_displayCrVRecScreenshotBegin(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp);
     314    static DECLCALLBACK(void) i_displayCrVRecScreenshotEnd(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp);
     315
     316    static DECLCALLBACK(void) i_displayVRecCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
     317                                                      void *pvContext);
     318#endif
     319    static DECLCALLBACK(void) i_displayCrCmdFree(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, int rc, void *pvCompletion);
     320
     321    static DECLCALLBACK(void) i_displaySSMSaveScreenshot(PSSMHANDLE pSSM, void *pvUser);
     322    static DECLCALLBACK(int)  i_displaySSMLoadScreenshot(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass);
     323    static DECLCALLBACK(void) i_displaySSMSave(PSSMHANDLE pSSM, void *pvUser);
     324    static DECLCALLBACK(int)  i_displaySSMLoad(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass);
    288325
    289326    Console * const         mParent;
    290327    /** Pointer to the associated display driver. */
    291     struct DRVMAINDISPLAY  *mpDrv;
     328    struct DRVMAINDISPLAY   *mpDrv;
    292329    /** Pointer to the device instance for the VMM Device. */
    293330    PPDMDEVINS              mpVMMDev;
     
    330367#endif
    331368
    332     bool vbvaFetchCmd(VBVACMDHDR **ppHdr, uint32_t *pcbCmd);
    333     void vbvaReleaseCmd(VBVACMDHDR *pHdr, int32_t cbCmd);
    334 
    335     void handleResizeCompletedEMT(unsigned uScreenId, BOOL fResizeContext);
     369    bool i_vbvaFetchCmd(VBVACMDHDR **ppHdr, uint32_t *pcbCmd);
     370    void i_vbvaReleaseCmd(VBVACMDHDR *pHdr, int32_t cbCmd);
     371
     372    void i_handleResizeCompletedEMT(unsigned uScreenId, BOOL fResizeContext);
    336373
    337374    /* Old guest additions (3.x?) use VMMDev for VBVA and the host VBVA code (VideoAccel*)
     
    342379    volatile uint32_t mfu32PendingVideoAccelDisable;
    343380
    344     int  vbvaLock(void);
    345     void vbvaUnlock(void);
     381    int  i_vbvaLock(void);
     382    void i_vbvaUnlock(void);
    346383
    347384public:
    348     bool vbvaLockIsOwner(void);
    349 
    350     static int  displayTakeScreenshotEMT(Display *pDisplay, ULONG aScreenId, uint8_t **ppu8Data, size_t *pcbData, uint32_t *pu32Width, uint32_t *pu32Height);
    351 
    352 #if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    353     static BOOL  displayCheckTakeScreenshotCrOgl(Display *pDisplay, ULONG aScreenId, uint8_t *pu8Data, uint32_t u32Width, uint32_t u32Height);
    354     int crCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, PFNCRCTLCOMPLETION pfnCompletion, void *pvCompletion);
    355     int crCtlSubmitSync(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd);
     385
     386    bool i_vbvaLockIsOwner(void);
     387
     388    static int i_displayTakeScreenshotEMT(Display *pDisplay, ULONG aScreenId, uint8_t **ppu8Data, size_t *pcbData,
     389                                          uint32_t *pu32Width, uint32_t *pu32Height);
     390
     391#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     392    static BOOL  i_displayCheckTakeScreenshotCrOgl(Display *pDisplay, ULONG aScreenId, uint8_t *pu8Data,
     393                                                   uint32_t u32Width, uint32_t u32Height);
     394    int i_crCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, PFNCRCTLCOMPLETION pfnCompletion, void *pvCompletion);
     395    int i_crCtlSubmitSync(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd);
    356396    /* copies the given command and submits it asynchronously,
    357397     * i.e. the pCmd data may be discarded right after the call returns */
    358     int crCtlSubmitAsyncCmdCopy(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd);
     398    int i_crCtlSubmitAsyncCmdCopy(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd);
    359399    /* performs synchronous request processing if 3D backend has something to display
    360400     * this is primarily to work-around 3d<->main thread deadlocks on OSX
     
    364404     * that must synchronize with 3D backend only when some 3D data is displayed.
    365405     * The routine does NOT provide any info on whether command is processed asynchronously or not */
    366     int crCtlSubmitSyncIfHasDataForScreen(uint32_t u32ScreenID, struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd);
     406    int i_crCtlSubmitSyncIfHasDataForScreen(uint32_t u32ScreenID, struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd);
    367407#endif
    368408
    369409private:
    370     static void InvalidateAndUpdateEMT(Display *pDisplay, unsigned uId, bool fUpdateAll);
    371     static int  drawToScreenEMT(Display *pDisplay, ULONG aScreenId, BYTE *address, ULONG x, ULONG y, ULONG width, ULONG height);
    372 
    373     int  videoAccelRefreshProcess(void);
     410    static void i_InvalidateAndUpdateEMT(Display *pDisplay, unsigned uId, bool fUpdateAll);
     411    static int  i_drawToScreenEMT(Display *pDisplay, ULONG aScreenId, BYTE *address, ULONG x, ULONG y, ULONG width, ULONG height);
     412
     413    int  i_videoAccelRefreshProcess(void);
    374414
    375415    /* Functions run under VBVA lock. */
    376     int  videoAccelEnable(bool fEnable, VBVAMEMORY *pVbvaMemory);
    377     int videoAccelFlush(void);
    378 
    379 #if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    380     int crOglWindowsShow(bool fShow);
     416    int  i_videoAccelEnable(bool fEnable, VBVAMEMORY *pVbvaMemory);
     417    int  i_videoAccelFlush(void);
     418
     419#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     420    int i_crOglWindowsShow(bool fShow);
    381421#endif
    382422
     
    391431};
    392432
     433/* helper function, code in DisplayResampleImage.cpp */
    393434void gdImageCopyResampled(uint8_t *dst, uint8_t *src,
    394                           int dstX, int dstY, int srcX, int srcY,
    395                           int dstW, int dstH, int srcW, int srcH);
     435                            int dstX, int dstY, int srcX, int srcY,
     436                            int dstW, int dstH, int srcW, int srcH);
    396437
    397438void BitmapScale32(uint8_t *dst, int dstW, int dstH,
    398439                   const uint8_t *src, int iDeltaLine, int srcW, int srcH);
    399440
     441/* helper function, code in DisplayPNGUtul.cpp */
    400442int DisplayMakePNG(uint8_t *pu8Data, uint32_t cx, uint32_t cy,
    401443                   uint8_t **ppu8PNG, uint32_t *pcbPNG, uint32_t *pcxPNG, uint32_t *pcyPNG,
    402                    uint8_t fLimitSize);
     444                     uint8_t fLimitSize);
    403445
    404446class ATL_NO_VTABLE DisplaySourceBitmap:
     
    416458    void uninit();
    417459
    418     bool usesVRAM(void) { return m.pu8Allocated == NULL; }
     460    bool i_usesVRAM(void) { return m.pu8Allocated == NULL; }
    419461
    420462private:
  • trunk/src/VBox/Main/src-client/ConsoleImpl.cpp

    r52032 r52064  
    13791379
    13801380    NOREF(u32ClientId);
    1381     mDisplay->VideoAccelVRDP(true);
     1381    mDisplay->i_VideoAccelVRDP(true);
    13821382
    13831383#ifdef VBOX_WITH_GUEST_PROPS
     
    14131413    }
    14141414
    1415     mDisplay->VideoAccelVRDP(false);
     1415    mDisplay->i_VideoAccelVRDP(false);
    14161416
    14171417    if (fu32Intercepted & VRDE_CLIENT_INTERCEPT_USB)
     
    51835183            int vrc = VINF_SUCCESS;
    51845184            if (SUCCEEDED(rc))
    5185                 vrc = mDisplay->VideoCaptureEnableScreens(ComSafeArrayAsInParam(screens));
     5185                vrc = mDisplay->i_VideoCaptureEnableScreens(ComSafeArrayAsInParam(screens));
    51865186            if (RT_SUCCESS(vrc))
    51875187            {
    51885188                if (fEnabled)
    51895189                {
    5190                     vrc = mDisplay->VideoCaptureStart();
     5190                    vrc = mDisplay->i_VideoCaptureStart();
    51915191                    if (RT_FAILURE(vrc))
    51925192                        rc = setError(E_FAIL, tr("Unable to start video capturing (%Rrc)"), vrc);
    51935193                }
    51945194                else
    5195                     mDisplay->VideoCaptureStop();
     5195                    mDisplay->i_VideoCaptureStop();
    51965196            }
    51975197            else
     
    73247324        alock.release();
    73257325
    7326         mDisplay->notifyPowerDown();
     7326        mDisplay->i_notifyPowerDown();
    73277327
    73287328        alock.acquire();
     
    93709370                AssertRCBreak(vrc);
    93719371
    9372                 vrc = static_cast<Console *>(pConsole)->i_getDisplay()->registerSSM(pConsole->mpUVM);
     9372                vrc = static_cast<Console *>(pConsole)->i_getDisplay()->i_registerSSM(pConsole->mpUVM);
    93739373                AssertRC(vrc);
    93749374                if (RT_FAILURE(vrc))
  • trunk/src/VBox/Main/src-client/ConsoleVRDPServer.cpp

    r51612 r52064  
    11071107        if (SUCCEEDED(hr))
    11081108        {
    1109             hr = server->mConsole->i_getDisplay()->GetScreenResolution(uScreenId, NULL, NULL, NULL,
     1109            ULONG dummy;
     1110            hr = server->mConsole->i_getDisplay()->GetScreenResolution(uScreenId, &dummy, &dummy, &dummy,
    11101111                                                                     &xOrigin, &yOrigin);
    11111112
     
    21382139    data.aParms[0].u.pointer.size = sizeof(outputRedirect);
    21392140
    2140     int rc = mConsole->i_getDisplay()->crCtlSubmitSync(&data.Hdr, sizeof (data));
     2141    int rc = mConsole->i_getDisplay()->i_crCtlSubmitSync(&data.Hdr, sizeof (data));
    21412142    if (!RT_SUCCESS(rc))
    21422143    {
  • trunk/src/VBox/Main/src-client/DisplayImpl.cpp

    r51984 r52064  
    55
    66/*
    7  * Copyright (C) 2006-2013 Oracle Corporation
     7 * Copyright (C) 2006-2014 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    148148    mCrOglScreenshotData.u32Screen = CRSCREEN_ALL;
    149149    mCrOglScreenshotData.pvContext = this;
    150     mCrOglScreenshotData.pfnScreenshotBegin = displayCrVRecScreenshotBegin;
    151     mCrOglScreenshotData.pfnScreenshotPerform = displayCrVRecScreenshotPerform;
    152     mCrOglScreenshotData.pfnScreenshotEnd = displayCrVRecScreenshotEnd;
     150    mCrOglScreenshotData.pfnScreenshotBegin = i_displayCrVRecScreenshotBegin;
     151    mCrOglScreenshotData.pfnScreenshotPerform = i_displayCrVRecScreenshotPerform;
     152    mCrOglScreenshotData.pfnScreenshotEnd = i_displayCrVRecScreenshotEnd;
    153153#endif
    154154
     
    220220        int iDeltaLine = cx * 4;
    221221
    222         BitmapScale32 (dst,
    223                        dstW, dstH,
    224                        src,
    225                        iDeltaLine,
    226                        srcW, srcH);
     222        BitmapScale32(dst,
     223                      dstW, dstH,
     224                      src,
     225                      iDeltaLine,
     226                      srcW, srcH);
    227227
    228228        *ppu8Thumbnail = pu8Thumbnail;
     
    282282#endif
    283283
    284 DECLCALLBACK(void)
    285 Display::displaySSMSaveScreenshot(PSSMHANDLE pSSM, void *pvUser)
     284DECLCALLBACK(void) Display::i_displaySSMSaveScreenshot(PSSMHANDLE pSSM, void *pvUser)
    286285{
    287286    Display *that = static_cast<Display*>(pvUser);
     
    318317            {
    319318                VBOX_DISPLAY_SAVESCREENSHOT_DATA *pScreenshot =
    320                     (VBOX_DISPLAY_SAVESCREENSHOT_DATA*)RTMemAllocZ(sizeof (*pScreenshot));
     319                    (VBOX_DISPLAY_SAVESCREENSHOT_DATA*)RTMemAllocZ(sizeof(*pScreenshot));
    321320                if (pScreenshot)
    322321                {
     
    338337                    data.aParms[0].type = VBOX_HGCM_SVC_PARM_PTR;
    339338                    data.aParms[0].u.pointer.addr = &pScreenshot->Base;
    340                     data.aParms[0].u.pointer.size = sizeof (pScreenshot->Base);
    341 
    342                     int rc = that->crCtlSubmitSync(&data.Hdr, sizeof (data));
     339                    data.aParms[0].u.pointer.size = sizeof(pScreenshot->Base);
     340
     341                    int rc = that->i_crCtlSubmitSync(&data.Hdr, sizeof(data));
    343342                    if (RT_SUCCESS(rc))
    344343                    {
     
    373372        {
    374373            /* SSM code is executed on EMT(0), therefore no need to use VMR3ReqCallWait. */
    375             int rc = Display::displayTakeScreenshotEMT(that, VBOX_VIDEO_PRIMARY_SCREEN, &pu8Data, &cbData, &cx, &cy);
     374            int rc = Display::i_displayTakeScreenshotEMT(that, VBOX_VIDEO_PRIMARY_SCREEN, &pu8Data, &cbData, &cx, &cy);
    376375
    377376            /*
     
    399398
    400399                /* This can be called from any thread. */
    401                 Assert(!that->vbvaLockIsOwner());
     400                Assert(!that->i_vbvaLockIsOwner());
    402401                that->mpDrv->pUpPort->pfnFreeScreenshot(that->mpDrv->pUpPort, pu8Data);
    403402            }
     
    427426
    428427    /* First block. */
    429     SSMR3PutU32(pSSM, cbThumbnail + 2 * sizeof (uint32_t));
     428    SSMR3PutU32(pSSM, cbThumbnail + 2 * sizeof(uint32_t));
    430429    SSMR3PutU32(pSSM, 0); /* Block type: thumbnail. */
    431430
     
    438437
    439438    /* Second block. */
    440     SSMR3PutU32(pSSM, cbPNG + 2 * sizeof (uint32_t));
     439    SSMR3PutU32(pSSM, cbPNG + 2 * sizeof(uint32_t));
    441440    SSMR3PutU32(pSSM, 1); /* Block type: png. */
    442441
     
    453452
    454453DECLCALLBACK(int)
    455 Display::displaySSMLoadScreenshot(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass)
     454Display::i_displaySSMLoadScreenshot(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass)
    456455{
    457456    Display *that = static_cast<Display*>(pvUser);
     
    482481         * @todo Fix and increase saved state version.
    483482         */
    484         if (cbBlock > 2 * sizeof (uint32_t))
     483        if (cbBlock > 2 * sizeof(uint32_t))
    485484        {
    486485            rc = SSMR3Skip(pSSM, cbBlock);
     
    496495 */
    497496DECLCALLBACK(void)
    498 Display::displaySSMSave(PSSMHANDLE pSSM, void *pvUser)
     497Display::i_displaySSMSave(PSSMHANDLE pSSM, void *pvUser)
    499498{
    500499    Display *that = static_cast<Display*>(pvUser);
     
    515514
    516515DECLCALLBACK(int)
    517 Display::displaySSMLoad(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass)
     516Display::i_displaySSMLoad(PSSMHANDLE pSSM, void *pvUser, uint32_t uVersion, uint32_t uPass)
    518517{
    519518    Display *that = static_cast<Display*>(pvUser);
     
    633632        ComPtr<IEventSource> es;
    634633        mParent->COMGETTER(EventSource)(es.asOutParam());
    635         com::SafeArray <VBoxEventType_T> eventTypes;
     634        com::SafeArray<VBoxEventType_T> eventTypes;
    636635        eventTypes.push_back(VBoxEventType_OnStateChanged);
    637636        es->RegisterListener(this, ComSafeArrayAsInParam(eventTypes), true);
     
    688687 * pass pVM
    689688 */
    690 int Display::registerSSM(PUVM pUVM)
     689int Display::i_registerSSM(PUVM pUVM)
    691690{
    692691    /* Version 2 adds width and height of the framebuffer; version 3 adds
     
    696695                                   mcMonitors * sizeof(uint32_t) * 8 + sizeof(uint32_t),
    697696                                   NULL, NULL, NULL,
    698                                    NULL, displaySSMSave, NULL,
    699                                    NULL, displaySSMLoad, NULL, this);
     697                                   NULL, i_displaySSMSave, NULL,
     698                                   NULL, i_displaySSMLoad, NULL, this);
    700699    AssertRCReturn(rc, rc);
    701700
     
    707706                               NULL, NULL, NULL,
    708707                               NULL, NULL, NULL,
    709                                NULL, displaySSMLoad, NULL, this);
     708                               NULL, i_displaySSMLoad, NULL, this);
    710709    AssertRCReturn(rc, rc);
    711710
     
    713712                               NULL, NULL, NULL,
    714713                               NULL, NULL, NULL,
    715                                NULL, displaySSMLoad, NULL, this);
     714                               NULL, i_displaySSMLoad, NULL, this);
    716715    AssertRCReturn(rc, rc);
    717716
     
    719718    rc = SSMR3RegisterExternal(pUVM, "DisplayScreenshot", 1100 /*uInstance*/, sSSMDisplayScreenshotVer, 0 /*cbGuess*/,
    720719                               NULL, NULL, NULL,
    721                                NULL, displaySSMSaveScreenshot, NULL,
    722                                NULL, displaySSMLoadScreenshot, NULL, this);
     720                               NULL, i_displaySSMSaveScreenshot, NULL,
     721                               NULL, i_displaySSMLoadScreenshot, NULL, this);
    723722
    724723    AssertRCReturn(rc, rc);
     
    727726}
    728727
    729 DECLCALLBACK(void) Display::displayCrCmdFree(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, int rc, void *pvCompletion)
     728DECLCALLBACK(void) Display::i_displayCrCmdFree(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, int rc, void *pvCompletion)
    730729{
    731730    Assert(pvCompletion);
     
    734733
    735734#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    736 int Display::crOglWindowsShow(bool fShow)
     735int Display::i_crOglWindowsShow(bool fShow)
    737736{
    738737    if (!mfCrOglDataHidden == !!fShow)
     
    757756    }
    758757
    759     VBOXCRCMDCTL_HGCM *pData = (VBOXCRCMDCTL_HGCM*)RTMemAlloc(sizeof (VBOXCRCMDCTL_HGCM));
     758    VBOXCRCMDCTL_HGCM *pData = (VBOXCRCMDCTL_HGCM*)RTMemAlloc(sizeof(VBOXCRCMDCTL_HGCM));
    760759    if (!pData)
    761760    {
     
    770769    pData->aParms[0].u.uint32 = (uint32_t)fShow;
    771770
    772     int rc = crCtlSubmit(&pData->Hdr, sizeof (*pData), displayCrCmdFree, pData);
     771    int rc = i_crCtlSubmit(&pData->Hdr, sizeof(*pData), i_displayCrCmdFree, pData);
    773772    if (RT_SUCCESS(rc))
    774773        mfCrOglDataHidden = !fShow;
     
    784783
    785784
    786 // IEventListener method
    787 STDMETHODIMP Display::HandleEvent(IEvent * aEvent)
    788 {
    789     VBoxEventType_T aType = VBoxEventType_Invalid;
    790 
    791     aEvent->COMGETTER(Type)(&aType);
    792     switch (aType)
    793     {
    794         case VBoxEventType_OnStateChanged:
    795         {
    796             ComPtr<IStateChangedEvent> scev = aEvent;
    797             Assert(scev);
    798             MachineState_T machineState;
    799             scev->COMGETTER(State)(&machineState);
    800             if (   machineState == MachineState_Running
    801                    || machineState == MachineState_Teleporting
    802                    || machineState == MachineState_LiveSnapshotting
    803                    )
    804             {
    805                 LogRelFlowFunc(("Machine is running.\n"));
    806 
    807                 mfMachineRunning = true;
    808 
    809 #ifdef VBOX_WITH_CROGL
    810                 crOglWindowsShow(true);
    811 #endif
    812             }
    813             else
    814             {
    815                 mfMachineRunning = false;
    816 
    817 #ifdef VBOX_WITH_CROGL
    818                 if (machineState == MachineState_Paused)
    819                     crOglWindowsShow(false);
    820 #endif
    821             }
    822             break;
    823         }
    824         default:
    825             AssertFailed();
    826     }
    827 
    828     return S_OK;
    829 }
    830 
    831785// public methods only for internal purposes
    832786/////////////////////////////////////////////////////////////////////////////
    833787
    834 int Display::notifyCroglResize(const PVBVAINFOVIEW pView, const PVBVAINFOSCREEN pScreen, void *pvVRAM)
     788int Display::i_notifyCroglResize(const PVBVAINFOVIEW pView, const PVBVAINFOSCREEN pScreen, void *pvVRAM)
    835789{
    836790#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     
    850804            {
    851805                VBOXCRCMDCTL_HGCM *pCtl =
    852                     (VBOXCRCMDCTL_HGCM*)RTMemAlloc(sizeof (CRVBOXHGCMDEVRESIZE) + sizeof (VBOXCRCMDCTL_HGCM));
     806                    (VBOXCRCMDCTL_HGCM*)RTMemAlloc(sizeof(CRVBOXHGCMDEVRESIZE) + sizeof(VBOXCRCMDCTL_HGCM));
    853807                if (pCtl)
    854808                {
     
    861815                    pCtl->aParms[0].type = VBOX_HGCM_SVC_PARM_PTR;
    862816                    pCtl->aParms[0].u.pointer.addr = pData;
    863                     pCtl->aParms[0].u.pointer.size = sizeof (*pData);
    864 
    865                     rc = crCtlSubmit(&pCtl->Hdr, sizeof (*pCtl), displayCrCmdFree, pCtl);
     817                    pCtl->aParms[0].u.pointer.size = sizeof(*pData);
     818
     819                    rc = i_crCtlSubmit(&pCtl->Hdr, sizeof(*pCtl), i_displayCrCmdFree, pCtl);
    866820                    if (!RT_SUCCESS(rc))
    867821                    {
     
    889843 *  @thread EMT
    890844 */
    891 int Display::handleDisplayResize (unsigned uScreenId, uint32_t bpp, void *pvVRAM,
    892                                   uint32_t cbLine, uint32_t w, uint32_t h, uint16_t flags)
     845int Display::i_handleDisplayResize(unsigned uScreenId, uint32_t bpp, void *pvVRAM,
     846                                   uint32_t cbLine, uint32_t w, uint32_t h, uint16_t flags)
    893847{
    894848    LogRel(("Display::handleDisplayResize(): uScreenId = %d, pvVRAM=%p "
     
    918872    if (uScreenId == VBOX_VIDEO_PRIMARY_SCREEN)
    919873    {
    920         Assert(!vbvaLockIsOwner());
     874        Assert(!i_vbvaLockIsOwner());
    921875        mpDrv->pUpPort->pfnSetRenderVRAM(mpDrv->pUpPort, false);
    922876
     
    937891    }
    938892
    939     handleResizeCompletedEMT(uScreenId, TRUE);
     893    i_handleResizeCompletedEMT(uScreenId, TRUE);
    940894
    941895    return VINF_SUCCESS;
     
    948902 *  @thread EMT
    949903 */
    950 void Display::handleResizeCompletedEMT(unsigned uScreenId, BOOL fResizeContext)
     904void Display::i_handleResizeCompletedEMT(unsigned uScreenId, BOOL fResizeContext)
    951905{
    952906    LogRelFlowFunc(("\n"));
     
    1003957
    1004958                if (fResizeContext)
    1005                     crCtlSubmitAsyncCmdCopy(&data.Hdr, sizeof (data));
     959                    i_crCtlSubmitAsyncCmdCopy(&data.Hdr, sizeof(data));
    1006960                else
    1007                     crCtlSubmitSync(&data.Hdr, sizeof (data));
     961                    i_crCtlSubmitSync(&data.Hdr, sizeof(data));
    1008962            }
    1009963        }
     
    1012966}
    1013967
    1014 static void checkCoordBounds (int *px, int *py, int *pw, int *ph, int cx, int cy)
     968static void i_checkCoordBounds(int *px, int *py, int *pw, int *ph, int cx, int cy)
    1015969{
    1016970    /* Correct negative x and y coordinates. */
     
    10831037 *  @thread EMT
    10841038 */
    1085 void Display::handleDisplayUpdateLegacy (int x, int y, int w, int h)
     1039void Display::i_handleDisplayUpdateLegacy(int x, int y, int w, int h)
    10861040{
    10871041    unsigned uScreenId = mapCoordsToScreen(maFramebuffers, mcMonitors, &x, &y, &w, &h);
     
    10911045#endif /* DEBUG_sunlover */
    10921046
    1093     handleDisplayUpdate (uScreenId, x, y, w, h);
    1094 }
    1095 
    1096 void Display::handleDisplayUpdate (unsigned uScreenId, int x, int y, int w, int h)
     1047    i_handleDisplayUpdate(uScreenId, x, y, w, h);
     1048}
     1049
     1050void Display::i_handleDisplayUpdate(unsigned uScreenId, int x, int y, int w, int h)
    10971051{
    10981052    /*
     
    11111065
    11121066    if (uScreenId == VBOX_VIDEO_PRIMARY_SCREEN)
    1113         checkCoordBounds (&x, &y, &w, &h, mpDrv->IConnector.cx, mpDrv->IConnector.cy);
     1067        i_checkCoordBounds (&x, &y, &w, &h, mpDrv->IConnector.cx, mpDrv->IConnector.cy);
    11141068    else
    1115         checkCoordBounds (&x, &y, &w, &h, maFramebuffers[uScreenId].w,
     1069        i_checkCoordBounds (&x, &y, &w, &h, maFramebuffers[uScreenId].w,
    11161070                                          maFramebuffers[uScreenId].h);
    11171071
     
    11751129 * and the origin is (0, 0), not (1, 1) like the GUI returns.
    11761130 */
    1177 void Display::getFramebufferDimensions(int32_t *px1, int32_t *py1,
    1178                                        int32_t *px2, int32_t *py2)
     1131void Display::i_getFramebufferDimensions(int32_t *px1, int32_t *py1,
     1132                                         int32_t *px2, int32_t *py2)
    11791133{
    11801134    int32_t x1 = 0, y1 = 0, x2 = 0, y2 = 0;
     
    12211175{
    12221176    /* Initialize result to an empty record. */
    1223     memset (prectResult, 0, sizeof (RTRECT));
     1177    memset(prectResult, 0, sizeof(RTRECT));
    12241178
    12251179    int xLeftResult = RT_MAX(prect1->xLeft, prect2->xLeft);
     
    12491203}
    12501204
    1251 int Display::handleSetVisibleRegion(uint32_t cRect, PRTRECT pRect)
     1205int Display::i_handleSetVisibleRegion(uint32_t cRect, PRTRECT pRect)
    12521206{
    12531207    RTRECT *pVisibleRegion = (RTRECT *)RTMemTmpAlloc(  RT_MAX(cRect, 1)
    1254                                                      * sizeof (RTRECT));
     1208                                                     * sizeof(RTRECT));
    12551209    if (!pVisibleRegion)
    12561210    {
     
    13201274        if (mhCrOglSvc)
    13211275        {
    1322             VBOXCRCMDCTL_HGCM *pCtl = (VBOXCRCMDCTL_HGCM*)RTMemAlloc(RT_MAX(cRect, 1) * sizeof (RTRECT)
    1323                     + sizeof (VBOXCRCMDCTL_HGCM));
     1276            VBOXCRCMDCTL_HGCM *pCtl = (VBOXCRCMDCTL_HGCM*)RTMemAlloc(RT_MAX(cRect, 1) * sizeof(RTRECT)
     1277                    + sizeof(VBOXCRCMDCTL_HGCM));
    13241278            if (pCtl)
    13251279            {
    13261280                RTRECT *pRectsCopy = (RTRECT*)(pCtl+1);
    1327                 memcpy(pRectsCopy, pRect, cRect * sizeof (RTRECT));
     1281                memcpy(pRectsCopy, pRect, cRect * sizeof(RTRECT));
    13281282
    13291283                pCtl->Hdr.enmType = VBOXCRCMDCTL_TYPE_HGCM;
     
    13321286                pCtl->aParms[0].type = VBOX_HGCM_SVC_PARM_PTR;
    13331287                pCtl->aParms[0].u.pointer.addr = pRectsCopy;
    1334                 pCtl->aParms[0].u.pointer.size = cRect * sizeof (RTRECT);
    1335 
    1336                 int rc = crCtlSubmit(&pCtl->Hdr, sizeof (*pCtl), displayCrCmdFree, pCtl);
     1288                pCtl->aParms[0].u.pointer.size = cRect * sizeof(RTRECT);
     1289
     1290                int rc = i_crCtlSubmit(&pCtl->Hdr, sizeof(*pCtl), i_displayCrCmdFree, pCtl);
    13371291                if (!RT_SUCCESS(rc))
    13381292                {
     
    13541308}
    13551309
    1356 int Display::handleQueryVisibleRegion(uint32_t *pcRect, PRTRECT pRect)
     1310int Display::i_handleQueryVisibleRegion(uint32_t *pcRect, PRTRECT pRect)
    13571311{
    13581312    // @todo Currently not used by the guest and is not implemented in framebuffers. Remove?
     
    13701324} VBVADIRTYREGION;
    13711325
    1372 static void vbvaRgnInit (VBVADIRTYREGION *prgn, DISPLAYFBINFO *paFramebuffers, unsigned cMonitors,
    1373                          Display *pd, PPDMIDISPLAYPORT pp)
     1326static void vbvaRgnInit(VBVADIRTYREGION *prgn, DISPLAYFBINFO *paFramebuffers, unsigned cMonitors,
     1327                        Display *pd, PPDMIDISPLAYPORT pp)
    13741328{
    13751329    prgn->paFramebuffers = paFramebuffers;
     
    13871341}
    13881342
    1389 static void vbvaRgnDirtyRect (VBVADIRTYREGION *prgn, unsigned uScreenId, VBVACMDHDR *phdr)
     1343static void vbvaRgnDirtyRect(VBVADIRTYREGION *prgn, unsigned uScreenId, VBVACMDHDR *phdr)
    13901344{
    13911345    LogSunlover(("x = %d, y = %d, w = %d, h = %d\n",
     
    14451399    {
    14461400        //@todo pfnUpdateDisplayRect must take the vram offset parameter for the framebuffer
    1447         prgn->pPort->pfnUpdateDisplayRect (prgn->pPort, phdr->x, phdr->y, phdr->w, phdr->h);
    1448         prgn->pDisplay->handleDisplayUpdateLegacy (phdr->x + pFBInfo->xOrigin,
    1449                                              phdr->y + pFBInfo->yOrigin, phdr->w, phdr->h);
     1401        prgn->pPort->pfnUpdateDisplayRect(prgn->pPort, phdr->x, phdr->y, phdr->w, phdr->h);
     1402        prgn->pDisplay->i_handleDisplayUpdateLegacy(phdr->x + pFBInfo->xOrigin,
     1403                                                    phdr->y + pFBInfo->yOrigin, phdr->w, phdr->h);
    14501404    }
    14511405
     
    14531407}
    14541408
    1455 static void vbvaRgnUpdateFramebuffer (VBVADIRTYREGION *prgn, unsigned uScreenId)
     1409static void vbvaRgnUpdateFramebuffer(VBVADIRTYREGION *prgn, unsigned uScreenId)
    14561410{
    14571411    DISPLAYFBINFO *pFBInfo = &prgn->paFramebuffers[uScreenId];
     
    14631417    {
    14641418        //@todo pfnUpdateDisplayRect must take the vram offset parameter for the framebuffer
    1465         prgn->pPort->pfnUpdateDisplayRect (prgn->pPort, pFBInfo->dirtyRect.xLeft, pFBInfo->dirtyRect.yTop, w, h);
    1466         prgn->pDisplay->handleDisplayUpdateLegacy (pFBInfo->dirtyRect.xLeft + pFBInfo->xOrigin,
    1467                                              pFBInfo->dirtyRect.yTop + pFBInfo->yOrigin, w, h);
    1468     }
    1469 }
    1470 
    1471 static void vbvaSetMemoryFlags (VBVAMEMORY *pVbvaMemory,
    1472                                 bool fVideoAccelEnabled,
    1473                                 bool fVideoAccelVRDP,
    1474                                 uint32_t fu32SupportedOrders,
    1475                                 DISPLAYFBINFO *paFBInfos,
    1476                                 unsigned cFBInfos)
     1419        prgn->pPort->pfnUpdateDisplayRect(prgn->pPort, pFBInfo->dirtyRect.xLeft, pFBInfo->dirtyRect.yTop, w, h);
     1420        prgn->pDisplay->i_handleDisplayUpdateLegacy(pFBInfo->dirtyRect.xLeft + pFBInfo->xOrigin,
     1421                                                    pFBInfo->dirtyRect.yTop + pFBInfo->yOrigin, w, h);
     1422    }
     1423}
     1424
     1425static void i_vbvaSetMemoryFlags(VBVAMEMORY *pVbvaMemory,
     1426                                 bool fVideoAccelEnabled,
     1427                                 bool fVideoAccelVRDP,
     1428                                 uint32_t fu32SupportedOrders,
     1429                                 DISPLAYFBINFO *paFBInfos,
     1430                                 unsigned cFBInfos)
    14771431{
    14781432    if (pVbvaMemory)
     
    15071461
    15081462#ifdef VBOX_WITH_HGSMI
    1509 static void vbvaSetMemoryFlagsHGSMI (unsigned uScreenId,
    1510                                      uint32_t fu32SupportedOrders,
    1511                                      bool fVideoAccelVRDP,
    1512                                      DISPLAYFBINFO *pFBInfo)
     1463static void vbvaSetMemoryFlagsHGSMI(unsigned uScreenId,
     1464                                    uint32_t fu32SupportedOrders,
     1465                                    bool fVideoAccelVRDP,
     1466                                    DISPLAYFBINFO *pFBInfo)
    15131467{
    15141468    LogRelFlowFunc(("HGSMI[%d]: %p\n", uScreenId, pFBInfo->pVBVAHostFlags));
     
    15351489}
    15361490
    1537 static void vbvaSetMemoryFlagsAllHGSMI (uint32_t fu32SupportedOrders,
    1538                                         bool fVideoAccelVRDP,
    1539                                         DISPLAYFBINFO *paFBInfos,
    1540                                         unsigned cFBInfos)
     1491static void vbvaSetMemoryFlagsAllHGSMI(uint32_t fu32SupportedOrders,
     1492                                       bool fVideoAccelVRDP,
     1493                                       DISPLAYFBINFO *paFBInfos,
     1494                                       unsigned cFBInfos)
    15411495{
    15421496    unsigned uScreenId;
     
    15491503#endif /* VBOX_WITH_HGSMI */
    15501504
    1551 bool Display::VideoAccelAllowed (void)
     1505bool Display::i_VideoAccelAllowed(void)
    15521506{
    15531507    return true;
    15541508}
    15551509
    1556 int Display::vbvaLock(void)
     1510int Display::i_vbvaLock(void)
    15571511{
    15581512    return RTCritSectEnter(&mVBVALock);
    15591513}
    15601514
    1561 void Display::vbvaUnlock(void)
     1515void Display::i_vbvaUnlock(void)
    15621516{
    15631517    RTCritSectLeave(&mVBVALock);
    15641518}
    15651519
    1566 bool Display::vbvaLockIsOwner(void)
     1520bool Display::i_vbvaLockIsOwner(void)
    15671521{
    15681522    return RTCritSectIsOwner(&mVBVALock);
     
    15721526 * @thread EMT
    15731527 */
    1574 int Display::VideoAccelEnable (bool fEnable, VBVAMEMORY *pVbvaMemory)
     1528int Display::i_VideoAccelEnable(bool fEnable, VBVAMEMORY *pVbvaMemory)
    15751529{
    15761530    int rc;
    1577 
    15781531    if (fEnable)
    15791532    {
    15801533        /* Process any pending VGA device changes, resize. */
    1581         Assert(!vbvaLockIsOwner());
     1534        Assert(!i_vbvaLockIsOwner());
    15821535        mpDrv->pUpPort->pfnUpdateDisplayAll(mpDrv->pUpPort, /* fFailOnResize = */ false);
    15831536    }
    15841537
    1585     vbvaLock();
    1586     rc = videoAccelEnable (fEnable, pVbvaMemory);
    1587     vbvaUnlock();
     1538    i_vbvaLock();
     1539    rc = i_videoAccelEnable(fEnable, pVbvaMemory);
     1540    i_vbvaUnlock();
    15881541
    15891542    if (!fEnable)
    15901543    {
    1591         Assert(!vbvaLockIsOwner());
     1544        Assert(!i_vbvaLockIsOwner());
    15921545        mpDrv->pUpPort->pfnUpdateDisplayAll(mpDrv->pUpPort, /* fFailOnResize = */ false);
    15931546    }
     
    15961549}
    15971550
    1598 int Display::videoAccelEnable (bool fEnable, VBVAMEMORY *pVbvaMemory)
    1599 {
    1600     Assert(vbvaLockIsOwner());
     1551int Display::i_videoAccelEnable(bool fEnable, VBVAMEMORY *pVbvaMemory)
     1552{
     1553    Assert(i_vbvaLockIsOwner());
    16011554
    16021555    int rc = VINF_SUCCESS;
    1603 
    16041556    /* Called each time the guest wants to use acceleration,
    16051557     * or when the VGA device disables acceleration,
     
    16181570    Assert((fEnable && pVbvaMemory) || (!fEnable && pVbvaMemory == NULL));
    16191571
    1620     if (!VideoAccelAllowed ())
     1572    if (!i_VideoAccelAllowed ())
    16211573        return VERR_NOT_SUPPORTED;
    16221574
     
    16471599    {
    16481600        /* Process any pending orders and empty the VBVA ring buffer. */
    1649         videoAccelFlush ();
     1601        i_videoAccelFlush ();
    16501602    }
    16511603
     
    16761628
    16771629        /* Initialize the hardware memory. */
    1678         vbvaSetMemoryFlags(mpVbvaMemory, mfVideoAccelEnabled, mfVideoAccelVRDP, mfu32SupportedOrders, maFramebuffers, mcMonitors);
     1630        i_vbvaSetMemoryFlags(mpVbvaMemory, mfVideoAccelEnabled, mfVideoAccelVRDP,
     1631                             mfu32SupportedOrders, maFramebuffers, mcMonitors);
    16791632        mpVbvaMemory->off32Data = 0;
    16801633        mpVbvaMemory->off32Free = 0;
    16811634
    1682         memset(mpVbvaMemory->aRecords, 0, sizeof (mpVbvaMemory->aRecords));
     1635        memset(mpVbvaMemory->aRecords, 0, sizeof(mpVbvaMemory->aRecords));
    16831636        mpVbvaMemory->indexRecordFirst = 0;
    16841637        mpVbvaMemory->indexRecordFree = 0;
     
    17001653/* Called always by one VRDP server thread. Can be thread-unsafe.
    17011654 */
    1702 void Display::VideoAccelVRDP (bool fEnable)
     1655void Display::i_VideoAccelVRDP(bool fEnable)
    17031656{
    17041657    LogRelFlowFunc(("fEnable = %d\n", fEnable));
    17051658
    1706     vbvaLock();
     1659    i_vbvaLock();
    17071660
    17081661    int c = fEnable?
    1709                 ASMAtomicIncS32 (&mcVideoAccelVRDPRefs):
    1710                 ASMAtomicDecS32 (&mcVideoAccelVRDPRefs);
     1662                ASMAtomicIncS32(&mcVideoAccelVRDPRefs):
     1663                ASMAtomicDecS32(&mcVideoAccelVRDPRefs);
    17111664
    17121665    Assert (c >= 0);
     
    17221675        mfu32SupportedOrders = 0;
    17231676
    1724         vbvaSetMemoryFlags (mpVbvaMemory, mfVideoAccelEnabled, mfVideoAccelVRDP, mfu32SupportedOrders,
    1725                             maFramebuffers, mcMonitors);
     1677        i_vbvaSetMemoryFlags(mpVbvaMemory, mfVideoAccelEnabled, mfVideoAccelVRDP, mfu32SupportedOrders,
     1678                             maFramebuffers, mcMonitors);
    17261679#ifdef VBOX_WITH_HGSMI
    17271680        /* Here is VRDP-IN thread. Process the request in vbvaUpdateBegin under DevVGA lock on an EMT. */
     
    17421695        mfu32SupportedOrders = ~0;
    17431696
    1744         vbvaSetMemoryFlags (mpVbvaMemory, mfVideoAccelEnabled, mfVideoAccelVRDP, mfu32SupportedOrders,
    1745                             maFramebuffers, mcMonitors);
     1697        i_vbvaSetMemoryFlags(mpVbvaMemory, mfVideoAccelEnabled, mfVideoAccelVRDP, mfu32SupportedOrders,
     1698                             maFramebuffers, mcMonitors);
    17461699#ifdef VBOX_WITH_HGSMI
    17471700        /* Here is VRDP-IN thread. Process the request in vbvaUpdateBegin under DevVGA lock on an EMT. */
     
    17561709         * accel state. It remains enabled.
    17571710         */
    1758         Assert (mfVideoAccelVRDP == true);
    1759     }
    1760     vbvaUnlock();
    1761 }
    1762 
    1763 static bool vbvaVerifyRingBuffer (VBVAMEMORY *pVbvaMemory)
     1711        Assert(mfVideoAccelVRDP == true);
     1712    }
     1713    i_vbvaUnlock();
     1714}
     1715
     1716static bool i_vbvaVerifyRingBuffer(VBVAMEMORY *pVbvaMemory)
    17641717{
    17651718    return true;
    17661719}
    17671720
    1768 static void vbvaFetchBytes (VBVAMEMORY *pVbvaMemory, uint8_t *pu8Dst, uint32_t cbDst)
     1721static void i_vbvaFetchBytes(VBVAMEMORY *pVbvaMemory, uint8_t *pu8Dst, uint32_t cbDst)
    17691722{
    17701723    if (cbDst >= VBVA_RING_BUFFER_SIZE)
    17711724    {
    1772         AssertMsgFailed (("cbDst = 0x%08X, ring buffer size 0x%08X\n", cbDst, VBVA_RING_BUFFER_SIZE));
     1725        AssertMsgFailed(("cbDst = 0x%08X, ring buffer size 0x%08X\n", cbDst, VBVA_RING_BUFFER_SIZE));
    17731726        return;
    17741727    }
     
    17861739    {
    17871740        /* Chunk crosses buffer boundary. */
    1788         memcpy (pu8Dst, src, u32BytesTillBoundary);
    1789         memcpy (pu8Dst + u32BytesTillBoundary, &pVbvaMemory->au8RingBuffer[0], i32Diff);
     1741        memcpy(pu8Dst, src, u32BytesTillBoundary);
     1742        memcpy(pu8Dst + u32BytesTillBoundary, &pVbvaMemory->au8RingBuffer[0], i32Diff);
    17901743    }
    17911744
     
    17971750
    17981751
    1799 static bool vbvaPartialRead (uint8_t **ppu8, uint32_t *pcb, uint32_t cbRecord, VBVAMEMORY *pVbvaMemory)
     1752static bool i_vbvaPartialRead(uint8_t **ppu8, uint32_t *pcb, uint32_t cbRecord, VBVAMEMORY *pVbvaMemory)
    18001753{
    18011754    uint8_t *pu8New;
     
    18071760    {
    18081761        Assert (*pcb);
    1809         pu8New = (uint8_t *)RTMemRealloc (*ppu8, cbRecord);
     1762        pu8New = (uint8_t *)RTMemRealloc(*ppu8, cbRecord);
    18101763    }
    18111764    else
    18121765    {
    18131766        Assert (!*pcb);
    1814         pu8New = (uint8_t *)RTMemAlloc (cbRecord);
     1767        pu8New = (uint8_t *)RTMemAlloc(cbRecord);
    18151768    }
    18161769
     
    18231776        if (*ppu8)
    18241777        {
    1825             RTMemFree (*ppu8);
     1778            RTMemFree(*ppu8);
    18261779        }
    18271780
     
    18331786
    18341787    /* Fetch data from the ring buffer. */
    1835     vbvaFetchBytes (pVbvaMemory, pu8New + *pcb, cbRecord - *pcb);
     1788    i_vbvaFetchBytes(pVbvaMemory, pu8New + *pcb, cbRecord - *pcb);
    18361789
    18371790    *ppu8 = pu8New;
     
    18441797 * For crossing boundary - allocate a buffer from heap.
    18451798 */
    1846 bool Display::vbvaFetchCmd (VBVACMDHDR **ppHdr, uint32_t *pcbCmd)
     1799bool Display::i_vbvaFetchCmd(VBVACMDHDR **ppHdr, uint32_t *pcbCmd)
    18471800{
    18481801    uint32_t indexRecordFirst = mpVbvaMemory->indexRecordFirst;
     
    18541807#endif /* DEBUG_sunlover */
    18551808
    1856     if (!vbvaVerifyRingBuffer (mpVbvaMemory))
     1809    if (!i_vbvaVerifyRingBuffer(mpVbvaMemory))
    18571810    {
    18581811        return false;
     
    18771830        /* There is a partial read in process. Continue with it. */
    18781831
    1879         Assert (mpu8VbvaPartial);
     1832        Assert(mpu8VbvaPartial);
    18801833
    18811834        LogFlowFunc(("continue partial record mcbVbvaPartial = %d cbRecord 0x%08X, first = %d, free = %d\n",
     
    18851838        {
    18861839            /* New data has been added to the record. */
    1887             if (!vbvaPartialRead (&mpu8VbvaPartial, &mcbVbvaPartial, cbRecord, mpVbvaMemory))
     1840            if (!i_vbvaPartialRead(&mpu8VbvaPartial, &mcbVbvaPartial, cbRecord, mpVbvaMemory))
    18881841            {
    18891842                return false;
     
    19051858#ifdef DEBUG_sunlover
    19061859            LogFlowFunc(("partial done ok, data = %d, free = %d\n",
    1907                           mpVbvaMemory->off32Data, mpVbvaMemory->off32Free));
     1860                         mpVbvaMemory->off32Data, mpVbvaMemory->off32Free));
    19081861#endif /* DEBUG_sunlover */
    19091862        }
     
    19191872        {
    19201873            /* Partial read must be started. */
    1921             if (!vbvaPartialRead (&mpu8VbvaPartial, &mcbVbvaPartial, cbRecord, mpVbvaMemory))
     1874            if (!i_vbvaPartialRead(&mpu8VbvaPartial, &mcbVbvaPartial, cbRecord, mpVbvaMemory))
    19221875            {
    19231876                return false;
     
    19551908        {
    19561909            /* The command crosses buffer boundary. Rare case, so not optimized. */
    1957             uint8_t *dst = (uint8_t *)RTMemAlloc (cbRecord);
     1910            uint8_t *dst = (uint8_t *)RTMemAlloc(cbRecord);
    19581911
    19591912            if (!dst)
     
    19641917            }
    19651918
    1966             vbvaFetchBytes (mpVbvaMemory, dst, cbRecord);
     1919            i_vbvaFetchBytes(mpVbvaMemory, dst, cbRecord);
    19671920
    19681921            *ppHdr = (VBVACMDHDR *)dst;
     
    19871940}
    19881941
    1989 void Display::vbvaReleaseCmd (VBVACMDHDR *pHdr, int32_t cbCmd)
     1942void Display::i_vbvaReleaseCmd(VBVACMDHDR *pHdr, int32_t cbCmd)
    19901943{
    19911944    uint8_t *au8RingBuffer = mpVbvaMemory->au8RingBuffer;
     
    19951948    {
    19961949        /* The pointer is inside ring buffer. Must be continuous chunk. */
    1997         Assert (VBVA_RING_BUFFER_SIZE - ((uint8_t *)pHdr - au8RingBuffer) >= cbCmd);
     1950        Assert(VBVA_RING_BUFFER_SIZE - ((uint8_t *)pHdr - au8RingBuffer) >= cbCmd);
    19981951
    19991952        /* Do nothing. */
    20001953
    2001         Assert (!mpu8VbvaPartial && mcbVbvaPartial == 0);
     1954        Assert(!mpu8VbvaPartial && mcbVbvaPartial == 0);
    20021955    }
    20031956    else
     
    20161969        else
    20171970        {
    2018             Assert (!mpu8VbvaPartial && mcbVbvaPartial == 0);
    2019         }
    2020 
    2021         RTMemFree (pHdr);
     1971            Assert(!mpu8VbvaPartial && mcbVbvaPartial == 0);
     1972        }
     1973
     1974        RTMemFree(pHdr);
    20221975    }
    20231976
     
    20321985 * @thread EMT
    20331986 */
    2034 void Display::VideoAccelFlush (void)
    2035 {
    2036     vbvaLock();
    2037     int rc = videoAccelFlush();
     1987void Display::i_VideoAccelFlush(void)
     1988{
     1989    i_vbvaLock();
     1990    int rc = i_videoAccelFlush();
    20381991    if (RT_FAILURE(rc))
    20391992    {
    20401993        /* Disable on errors. */
    2041         videoAccelEnable(false, NULL);
    2042     }
    2043     vbvaUnlock();
     1994        i_videoAccelEnable(false, NULL);
     1995    }
     1996    i_vbvaUnlock();
    20441997
    20451998    if (RT_FAILURE(rc))
    20461999    {
    20472000        /* VideoAccel was disabled because of a failure, switching back to VGA updates. Redraw the screen. */
    2048         Assert(!vbvaLockIsOwner());
     2001        Assert(!i_vbvaLockIsOwner());
    20492002        mpDrv->pUpPort->pfnUpdateDisplayAll(mpDrv->pUpPort, /* fFailOnResize = */ false);
    20502003    }
    20512004}
    20522005
    2053 int Display::videoAccelFlush (void)
    2054 {
    2055     Assert(vbvaLockIsOwner());
     2006int Display::i_videoAccelFlush(void)
     2007{
     2008    Assert(i_vbvaLockIsOwner());
    20562009
    20572010#ifdef DEBUG_sunlover_2
     
    20852038    /* Initialize dirty rectangles accumulator. */
    20862039    VBVADIRTYREGION rgn;
    2087     vbvaRgnInit (&rgn, maFramebuffers, mcMonitors, this, mpDrv->pUpPort);
     2040    vbvaRgnInit(&rgn, maFramebuffers, mcMonitors, this, mpDrv->pUpPort);
    20882041
    20892042    for (;;)
     
    20932046
    20942047        /* Fetch the command data. */
    2095         if (!vbvaFetchCmd (&phdr, &cbCmd))
     2048        if (!i_vbvaFetchCmd(&phdr, &cbCmd))
    20962049        {
    20972050            Log(("Display::VideoAccelFlush: unable to fetch command. off32Data = %d, off32Free = %d. Disabling VBVA!!!\n",
     
    21422095
    21432096            /* Accumulate the update. */
    2144             vbvaRgnDirtyRect (&rgn, uScreenId, phdr);
     2097            vbvaRgnDirtyRect(&rgn, uScreenId, phdr);
    21452098
    21462099            /* Forward the command to VRDP server. */
    2147             mParent->i_consoleVRDPServer()->SendUpdate (uScreenId, phdr, cbCmd);
     2100            mParent->i_consoleVRDPServer()->SendUpdate(uScreenId, phdr, cbCmd);
    21482101
    21492102            *phdr = hdrSaved;
    21502103        }
    21512104
    2152         vbvaReleaseCmd (phdr, cbCmd);
     2105        i_vbvaReleaseCmd(phdr, cbCmd);
    21532106    }
    21542107
     
    21562109    {
    21572110        /* Draw the framebuffer. */
    2158         vbvaRgnUpdateFramebuffer (&rgn, uScreenId);
     2111        vbvaRgnUpdateFramebuffer(&rgn, uScreenId);
    21592112    }
    21602113    return VINF_SUCCESS;
    21612114}
    21622115
    2163 int Display::videoAccelRefreshProcess(void)
     2116int Display::i_videoAccelRefreshProcess(void)
    21642117{
    21652118    int rc = VWRN_INVALID_STATE; /* Default is to do a display update in VGA device. */
    21662119
    2167     vbvaLock();
     2120    i_vbvaLock();
    21682121
    21692122    if (ASMAtomicCmpXchgU32(&mfu32PendingVideoAccelDisable, false, true))
    21702123    {
    2171         videoAccelEnable (false, NULL);
     2124        i_videoAccelEnable(false, NULL);
    21722125    }
    21732126    else if (mfPendingVideoAccelEnable)
     
    21842137        if (mfMachineRunning)
    21852138        {
    2186             videoAccelEnable (mfPendingVideoAccelEnable,
    2187                               mpPendingVbvaMemory);
     2139            i_videoAccelEnable(mfPendingVideoAccelEnable,
     2140                               mpPendingVbvaMemory);
    21882141
    21892142            /* Reset the pending state. */
     
    22012154        {
    22022155            Assert(mpVbvaMemory);
    2203             rc = videoAccelFlush();
     2156            rc = i_videoAccelFlush();
    22042157            if (RT_FAILURE(rc))
    22052158            {
    22062159                /* Disable on errors. */
    2207                 videoAccelEnable(false, NULL);
     2160                i_videoAccelEnable(false, NULL);
    22082161                rc = VWRN_INVALID_STATE; /* Do a display update in VGA device. */
    22092162            }
     
    22152168    }
    22162169
    2217     vbvaUnlock();
     2170    i_vbvaUnlock();
    22182171
    22192172    return rc;
    22202173}
    22212174
    2222 void Display::notifyPowerDown(void)
     2175void Display::i_notifyPowerDown(void)
    22232176{
    22242177    LogRelFlowFunc(("\n"));
     
    22382191        if (!pFBInfo->fDisabled)
    22392192        {
    2240             handleDisplayResize(uScreenId, 32,
    2241                                 pFBInfo->pu8FramebufferVRAM,
    2242                                 pFBInfo->u32LineSize,
    2243                                 pFBInfo->w,
    2244                                 pFBInfo->h,
    2245                                 pFBInfo->flags);
    2246         }
    2247     }
    2248 }
    2249 
    2250 // IDisplay methods
     2193            i_handleDisplayResize(uScreenId, 32,
     2194                                  pFBInfo->pu8FramebufferVRAM,
     2195                                  pFBInfo->u32LineSize,
     2196                                  pFBInfo->w,
     2197                                  pFBInfo->h,
     2198                                  pFBInfo->flags);
     2199        }
     2200    }
     2201}
     2202
     2203// Wrapped IDisplay methods
    22512204/////////////////////////////////////////////////////////////////////////////
    2252 STDMETHODIMP Display::GetScreenResolution(ULONG aScreenId,
    2253                                           ULONG *aWidth, ULONG *aHeight, ULONG *aBitsPerPixel,
    2254                                           LONG *aXOrigin, LONG *aYOrigin)
     2205HRESULT Display::getScreenResolution(ULONG aScreenId, ULONG *aWidth, ULONG *aHeight, ULONG *aBitsPerPixel,
     2206                                     LONG *aXOrigin, LONG *aYOrigin)
    22552207{
    22562208    LogRelFlowFunc(("aScreenId=%RU32\n", aScreenId));
    2257 
    2258     AutoCaller autoCaller(this);
    2259     if (FAILED(autoCaller.rc())) return autoCaller.rc();
    22602209
    22612210    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    22762225            alock.release();
    22772226
    2278             Assert(!vbvaLockIsOwner());
     2227            Assert(!i_vbvaLockIsOwner());
    22792228            int rc = mpDrv->pUpPort->pfnQueryColorDepth(mpDrv->pUpPort, &u32BitsPerPixel);
    22802229            AssertRC(rc);
     
    23112260}
    23122261
    2313 STDMETHODIMP Display::AttachFramebuffer(ULONG aScreenId,
    2314                                         IFramebuffer *aFramebuffer)
     2262
     2263HRESULT Display::attachFramebuffer(ULONG aScreenId, const ComPtr<IFramebuffer> &aFramebuffer)
    23152264{
    23162265    LogRelFlowFunc(("aScreenId = %d\n", aScreenId));
    2317 
    2318     CheckComArgPointerValid(aFramebuffer);
    2319 
    2320     AutoCaller autoCaller(this);
    2321     if (FAILED(autoCaller.rc()))
    2322         return autoCaller.rc();
    23232266
    23242267    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    23412284    {
    23422285        /* Setup the new framebuffer. */
    2343         handleDisplayResize(aScreenId, pFBInfo->u16BitsPerPixel,
    2344                             pFBInfo->pu8FramebufferVRAM,
    2345                             pFBInfo->u32LineSize,
    2346                             pFBInfo->w,
    2347                             pFBInfo->h,
    2348                             pFBInfo->flags);
     2286        i_handleDisplayResize(aScreenId, pFBInfo->u16BitsPerPixel,
     2287                              pFBInfo->pu8FramebufferVRAM,
     2288                              pFBInfo->u32LineSize,
     2289                              pFBInfo->w,
     2290                              pFBInfo->h,
     2291                              pFBInfo->flags);
    23492292    }
    23502293
     
    23662309            data.aParms[0].u.uint32 = aScreenId;
    23672310
    2368             int vrc = crCtlSubmitSync(&data.Hdr, sizeof(data));
     2311            int vrc = i_crCtlSubmitSync(&data.Hdr, sizeof(data));
    23692312            AssertRC(vrc);
    23702313        }
    23712314#endif /* defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL) */
    23722315
    2373         VMR3ReqCallNoWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::InvalidateAndUpdateEMT,
     2316        VMR3ReqCallNoWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::i_InvalidateAndUpdateEMT,
    23742317                           3, this, aScreenId, false);
    23752318    }
     
    23792322}
    23802323
    2381 STDMETHODIMP Display::DetachFramebuffer(ULONG aScreenId)
     2324HRESULT Display::detachFramebuffer(ULONG aScreenId)
    23822325{
    23832326    LogRelFlowFunc(("aScreenId = %d\n", aScreenId));
    2384 
    2385     AutoCaller autoCaller(this);
    2386     if (FAILED(autoCaller.rc()))
    2387         return autoCaller.rc();
    23882327
    23892328    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    24162355            data.aParms[0].u.uint32 = aScreenId;
    24172356
    2418             int vrc = crCtlSubmitSync(&data.Hdr, sizeof(data));
     2357            int vrc = i_crCtlSubmitSync(&data.Hdr, sizeof(data));
    24192358            AssertRC(vrc);
    24202359        }
     
    24252364}
    24262365
    2427 STDMETHODIMP Display::QueryFramebuffer(ULONG aScreenId,
    2428                                        IFramebuffer **aFramebuffer)
     2366HRESULT Display::queryFramebuffer(ULONG aScreenId, ComPtr<IFramebuffer> &aFramebuffer)
    24292367{
    24302368    LogRelFlowFunc(("aScreenId = %d\n", aScreenId));
    2431 
    2432     CheckComArgOutPointerValid(aFramebuffer);
    2433 
    2434     AutoCaller autoCaller(this);
    2435     if (FAILED(autoCaller.rc()))
    2436         return autoCaller.rc();
    24372369
    24382370    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    24442376    DISPLAYFBINFO *pFBInfo = &maFramebuffers[aScreenId];
    24452377
    2446     *aFramebuffer = pFBInfo->pFramebuffer;
    2447     if (!pFBInfo->pFramebuffer.isNull())
    2448         pFBInfo->pFramebuffer->AddRef();
     2378    pFBInfo->pFramebuffer.queryInterfaceTo(aFramebuffer.asOutParam());
    24492379
    24502380    return S_OK;
    24512381}
    24522382
    2453 STDMETHODIMP Display::SetVideoModeHint(ULONG aDisplay, BOOL aEnabled,
    2454                                        BOOL aChangeOrigin, LONG aOriginX, LONG aOriginY,
    2455                                        ULONG aWidth, ULONG aHeight, ULONG aBitsPerPixel)
    2456 {
    2457     AutoCaller autoCaller(this);
    2458     if (FAILED(autoCaller.rc())) return autoCaller.rc();
    2459 
     2383HRESULT Display::setVideoModeHint(ULONG aDisplay, BOOL aEnabled,
     2384                                  BOOL aChangeOrigin, LONG aOriginX, LONG aOriginY,
     2385                                  ULONG aWidth, ULONG aHeight, ULONG aBitsPerPixel)
     2386{
    24602387    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
    24612388
     
    24772404
    24782405        uint32_t cBits = 0;
    2479         Assert(!vbvaLockIsOwner());
     2406        Assert(!i_vbvaLockIsOwner());
    24802407        int rc = mpDrv->pUpPort->pfnQueryColorDepth(mpDrv->pUpPort, &cBits);
    24812408        AssertRC(rc);
     
    25122439}
    25132440
    2514 STDMETHODIMP Display::SetSeamlessMode (BOOL enabled)
    2515 {
    2516     AutoCaller autoCaller(this);
    2517     if (FAILED(autoCaller.rc())) return autoCaller.rc();
    2518 
     2441HRESULT Display::setSeamlessMode(BOOL enabled)
     2442{
    25192443    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
    25202444
     
    25402464        if (is3denabled && vmmDev)
    25412465        {
    2542             VBOXCRCMDCTL_HGCM *pData = (VBOXCRCMDCTL_HGCM*)RTMemAlloc(sizeof (VBOXCRCMDCTL_HGCM));
     2466            VBOXCRCMDCTL_HGCM *pData = (VBOXCRCMDCTL_HGCM*)RTMemAlloc(sizeof(VBOXCRCMDCTL_HGCM));
    25432467            if (!pData)
    25442468            {
     
    25542478            pData->aParms[0].u.pointer.size = 0; /* <- means null rects, NULL pRects address and 0 rects means "disable" */
    25552479
    2556             int rc = crCtlSubmit(&pData->Hdr, sizeof (*pData), displayCrCmdFree, pData);
     2480            int rc = i_crCtlSubmit(&pData->Hdr, sizeof(*pData), i_displayCrCmdFree, pData);
    25572481            if (!RT_SUCCESS(rc))
    25582482            {
     
    25672491
    25682492#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    2569 BOOL Display::displayCheckTakeScreenshotCrOgl(Display *pDisplay, ULONG aScreenId, uint8_t *pu8Data,
    2570                                               uint32_t u32Width, uint32_t u32Height)
     2493BOOL Display::i_displayCheckTakeScreenshotCrOgl(Display *pDisplay, ULONG aScreenId, uint8_t *pu8Data,
     2494                                                uint32_t u32Width, uint32_t u32Height)
    25712495{
    25722496    BOOL is3denabled;
     
    25772501        if (pVMMDev)
    25782502        {
    2579             CRVBOXHGCMTAKESCREENSHOT *pScreenshot = (CRVBOXHGCMTAKESCREENSHOT*)RTMemAlloc(sizeof (*pScreenshot));
     2503            CRVBOXHGCMTAKESCREENSHOT *pScreenshot = (CRVBOXHGCMTAKESCREENSHOT*)RTMemAlloc(sizeof(*pScreenshot));
    25802504            if (pScreenshot)
    25812505            {
     
    25972521                data.aParms[0].type = VBOX_HGCM_SVC_PARM_PTR;
    25982522                data.aParms[0].u.pointer.addr = pScreenshot;
    2599                 data.aParms[0].u.pointer.size = sizeof (*pScreenshot);
    2600 
    2601                 int rc = pDisplay->crCtlSubmitSync(&data.Hdr, sizeof (data));
     2523                data.aParms[0].u.pointer.size = sizeof(*pScreenshot);
     2524
     2525                int rc = pDisplay->i_crCtlSubmitSync(&data.Hdr, sizeof(data));
    26022526
    26032527                RTMemFree(pScreenshot);
     
    26172541#endif
    26182542
    2619 int Display::displayTakeScreenshotEMT(Display *pDisplay, ULONG aScreenId, uint8_t **ppu8Data, size_t *pcbData,
    2620                                       uint32_t *pu32Width, uint32_t *pu32Height)
     2543int Display::i_displayTakeScreenshotEMT(Display *pDisplay, ULONG aScreenId, uint8_t **ppu8Data, size_t *pcbData,
     2544                                        uint32_t *pu32Width, uint32_t *pu32Height)
    26212545{
    26222546    int rc;
     
    26252549        && pDisplay->maFramebuffers[aScreenId].fVBVAEnabled == false) /* A non-VBVA mode. */
    26262550    {
    2627         Assert(!pDisplay->vbvaLockIsOwner());
     2551        Assert(!pDisplay->i_vbvaLockIsOwner());
    26282552        rc = pDisplay->mpDrv->pUpPort->pfnTakeScreenshot(pDisplay->mpDrv->pUpPort, ppu8Data, pcbData, pu32Width, pu32Height);
    26292553    }
     
    26652589                uint32_t u32DstBitsPerPixel = 32;
    26662590
    2667                 Assert(!pDisplay->vbvaLockIsOwner());
     2591                Assert(!pDisplay->i_vbvaLockIsOwner());
    26682592                rc = pDisplay->mpDrv->pUpPort->pfnCopyRect(pDisplay->mpDrv->pUpPort,
    26692593                                                           width, height,
     
    26912615                        && aScreenId == VBOX_VIDEO_PRIMARY_SCREEN)
    26922616                    {
    2693                         Assert(!pDisplay->vbvaLockIsOwner());
     2617                        Assert(!pDisplay->i_vbvaLockIsOwner());
    26942618                        rc = pDisplay->mpDrv->pUpPort->pfnTakeScreenshot(pDisplay->mpDrv->pUpPort,
    26952619                                                                         ppu8Data, pcbData, pu32Width, pu32Height);
     
    27162640}
    27172641
    2718 static int displayTakeScreenshot(PUVM pUVM, Display *pDisplay, struct DRVMAINDISPLAY *pDrv, ULONG aScreenId,
    2719                                  BYTE *address, ULONG width, ULONG height)
     2642static int i_displayTakeScreenshot(PUVM pUVM, Display *pDisplay, struct DRVMAINDISPLAY *pDrv, ULONG aScreenId,
     2643                                   BYTE *address, ULONG width, ULONG height)
    27202644{
    27212645    uint8_t *pu8Data = NULL;
     
    27262650
    27272651# if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    2728     if (Display::displayCheckTakeScreenshotCrOgl(pDisplay, aScreenId, (uint8_t*)address, width, height))
     2652    if (Display::i_displayCheckTakeScreenshotCrOgl(pDisplay, aScreenId, (uint8_t*)address, width, height))
    27292653        return VINF_SUCCESS;
    27302654#endif
     
    27372661                 it would be nice to have an accurate screenshot for the bug
    27382662                 report if the VM deadlocks. */
    2739         vrc = VMR3ReqPriorityCallWaitU(pUVM, VMCPUID_ANY, (PFNRT)Display::displayTakeScreenshotEMT, 6,
     2663        vrc = VMR3ReqPriorityCallWaitU(pUVM, VMCPUID_ANY, (PFNRT)Display::i_displayTakeScreenshotEMT, 6,
    27402664                                       pDisplay, aScreenId, &pu8Data, &cbData, &cx, &cy);
    27412665        if (vrc != VERR_TRY_AGAIN)
     
    27772701        {
    27782702            /* This can be called from any thread. */
    2779             Assert(!pDisplay->vbvaLockIsOwner());
     2703            Assert(!pDisplay->i_vbvaLockIsOwner());
    27802704            pDrv->pUpPort->pfnFreeScreenshot(pDrv->pUpPort, pu8Data);
    27812705        }
     
    27892713}
    27902714
    2791 STDMETHODIMP Display::TakeScreenShot(ULONG aScreenId, BYTE *address, ULONG width, ULONG height)
     2715HRESULT Display::takeScreenShot(ULONG aScreenId, BYTE *aAddress, ULONG aWidth, ULONG aHeight)
    27922716{
    27932717    /// @todo (r=dmik) this function may take too long to complete if the VM
     
    27982722
    27992723    LogRelFlowFunc(("address=%p, width=%d, height=%d\n",
    2800                     address, width, height));
    2801 
    2802     CheckComArgNotNull(address);
    2803     CheckComArgExpr(width, width != 0);
    2804     CheckComArgExpr(height, height != 0);
     2724                    aAddress, aWidth, aHeight));
     2725
     2726    CheckComArgExpr(aWidth, aWidth != 0);
     2727    CheckComArgExpr(aHeight, aHeight != 0);
    28052728
    28062729    /* Do not allow too large screenshots. This also filters out negative
    28072730     * values passed as either 'width' or 'height'.
    28082731     */
    2809     CheckComArgExpr(width, width <= 32767);
    2810     CheckComArgExpr(height, height <= 32767);
    2811 
    2812     AutoCaller autoCaller(this);
    2813     if (FAILED(autoCaller.rc())) return autoCaller.rc();
     2732    CheckComArgExpr(aWidth, aWidth <= 32767);
     2733    CheckComArgExpr(aHeight, aHeight <= 32767);
    28142734
    28152735    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    28332753    alock.release();
    28342754
    2835     int vrc = displayTakeScreenshot(ptrVM.rawUVM(), this, mpDrv, aScreenId, address, width, height);
     2755    int vrc = i_displayTakeScreenshot(ptrVM.rawUVM(), this, mpDrv, aScreenId, aAddress, aWidth, aHeight);
    28362756
    28372757    if (vrc == VERR_NOT_IMPLEMENTED)
     
    28492769}
    28502770
    2851 STDMETHODIMP Display::TakeScreenShotToArray(ULONG aScreenId, ULONG width, ULONG height,
    2852                                             ComSafeArrayOut(BYTE, aScreenData))
    2853 {
    2854     LogRelFlowFunc(("width=%d, height=%d\n", width, height));
    2855 
    2856     CheckComArgOutSafeArrayPointerValid(aScreenData);
    2857     CheckComArgExpr(width, width != 0);
    2858     CheckComArgExpr(height, height != 0);
     2771HRESULT Display::takeScreenShotToArray(ULONG aScreenId, ULONG aWidth, ULONG aHeight, std::vector<BYTE> &aScreenData)
     2772
     2773{
     2774    LogRelFlowFunc(("width=%d, height=%d\n", aWidth, aHeight));
     2775
     2776    CheckComArgExpr(aWidth, aWidth != 0);
     2777    CheckComArgExpr(raHeight, aHeight != 0);
    28592778
    28602779    /* Do not allow too large screenshots. This also filters out negative
    28612780     * values passed as either 'width' or 'height'.
    28622781     */
    2863     CheckComArgExpr(width, width <= 32767);
    2864     CheckComArgExpr(height, height <= 32767);
    2865 
    2866     AutoCaller autoCaller(this);
    2867     if (FAILED(autoCaller.rc())) return autoCaller.rc();
     2782    CheckComArgExpr(aWidth, aWidth <= 32767);
     2783    CheckComArgExpr(aHeight, aHeight <= 32767);
    28682784
    28692785    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    28872803    alock.release();
    28882804
    2889     size_t cbData = width * 4 * height;
     2805    size_t cbData = aWidth * 4 * aHeight;
    28902806    uint8_t *pu8Data = (uint8_t *)RTMemAlloc(cbData);
    28912807
     
    28932809        return E_OUTOFMEMORY;
    28942810
    2895     int vrc = displayTakeScreenshot(ptrVM.rawUVM(), this, mpDrv, aScreenId, pu8Data, width, height);
     2811    int vrc = i_displayTakeScreenshot(ptrVM.rawUVM(), this, mpDrv, aScreenId, pu8Data, aWidth, aHeight);
    28962812
    28972813    if (RT_SUCCESS(vrc))
    28982814    {
    2899         /* Convert pixels to format expected by the API caller: [0] R, [1] G, [2] B, [3] A. */
     2815        aScreenData.resize(cbData);
     2816
     2817        /* Convert pixels to format expected by the API caller: [0] R, [1] G, [2] B, [3] A
     2818         * and copy to the output buffer.
     2819         */
     2820        size_t i = 0;
    29002821        uint8_t *pu8 = pu8Data;
    2901         unsigned cPixels = width * height;
     2822        unsigned cPixels = aWidth * aHeight;
    29022823        while (cPixels)
    29032824        {
    2904             uint8_t u8 = pu8[0];
    2905             pu8[0] = pu8[2];
    2906             pu8[2] = u8;
    2907             pu8[3] = 0xff;
     2825            aScreenData[i++] = pu8[2];
     2826            aScreenData[i++] = pu8[1];
     2827            aScreenData[i++] = pu8[0];
     2828            aScreenData[i++] = 0xff;
     2829
    29082830            cPixels--;
    29092831            pu8 += 4;
    29102832        }
    2911 
    2912         com::SafeArray<BYTE> screenData(cbData);
    2913         screenData.initFrom(pu8Data, cbData);
    2914         screenData.detachTo(ComSafeArrayOutArg(aScreenData));
    29152833    }
    29162834    else if (vrc == VERR_NOT_IMPLEMENTED)
     
    29272845}
    29282846
    2929 STDMETHODIMP Display::TakeScreenShotPNGToArray(ULONG aScreenId, ULONG width, ULONG height,
    2930                                                ComSafeArrayOut(BYTE, aScreenData))
    2931 {
    2932     LogRelFlowFunc(("width=%d, height=%d\n", width, height));
    2933 
    2934     CheckComArgOutSafeArrayPointerValid(aScreenData);
    2935     CheckComArgExpr(width, width != 0);
    2936     CheckComArgExpr(height, height != 0);
     2847HRESULT Display::takeScreenShotPNGToArray(ULONG aScreenId, ULONG aWidth, ULONG aHeight, std::vector<BYTE> &aScreenData)
     2848{
     2849    LogRelFlowFunc(("width=%d, height=%d\n", aWidth, aHeight));
     2850
     2851    CheckComArgExpr(aWidth, aWidth != 0);
     2852    CheckComArgExpr(aHeight, aHeight != 0);
    29372853
    29382854    /* Do not allow too large screenshots. This also filters out negative
    29392855     * values passed as either 'width' or 'height'.
    29402856     */
    2941     CheckComArgExpr(width, width <= 32767);
    2942     CheckComArgExpr(height, height <= 32767);
    2943 
    2944     AutoCaller autoCaller(this);
    2945     if (FAILED(autoCaller.rc())) return autoCaller.rc();
     2857    CheckComArgExpr(aWidth, aWidth <= 32767);
     2858    CheckComArgExpr(aHeight, aHeight <= 32767);
    29462859
    29472860    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    29642877    alock.release();
    29652878
    2966     size_t cbData = width * 4 * height;
     2879    size_t cbData = aWidth * 4 * aHeight;
    29672880    uint8_t *pu8Data = (uint8_t *)RTMemAlloc(cbData);
    29682881
     
    29702883        return E_OUTOFMEMORY;
    29712884
    2972     int vrc = displayTakeScreenshot(ptrVM.rawUVM(), this, mpDrv, aScreenId, pu8Data, width, height);
     2885    int vrc = i_displayTakeScreenshot(ptrVM.rawUVM(), this, mpDrv, aScreenId, pu8Data, aWidth, aHeight);
    29732886
    29742887    if (RT_SUCCESS(vrc))
     
    29792892        uint32_t cyPNG = 0;
    29802893
    2981         vrc = DisplayMakePNG(pu8Data, width, height, &pu8PNG, &cbPNG, &cxPNG, &cyPNG, 0);
     2894        vrc = DisplayMakePNG(pu8Data, aWidth, aHeight, &pu8PNG, &cbPNG, &cxPNG, &cyPNG, 0);
    29822895        if (RT_SUCCESS(vrc))
    29832896        {
    2984             com::SafeArray<BYTE> screenData(cbPNG);
    2985             screenData.initFrom(pu8PNG, cbPNG);
     2897            aScreenData.resize(cbPNG);
     2898            memcpy(&aScreenData.front(), pu8PNG, cbPNG);
    29862899            if (pu8PNG)
    29872900                RTMemFree(pu8PNG);
    2988 
    2989             screenData.detachTo(ComSafeArrayOutArg(aScreenData));
    29902901        }
    29912902        else
     
    30102921}
    30112922
    3012 int Display::VideoCaptureEnableScreens(ComSafeArrayIn(BOOL, aScreens))
     2923
     2924int Display::i_VideoCaptureEnableScreens(ComSafeArrayIn(BOOL, aScreens))
    30132925{
    30142926#ifdef VBOX_WITH_VPX
     
    30252937 * Start video capturing. Does nothing if capturing is already active.
    30262938 */
    3027 int Display::VideoCaptureStart()
     2939int Display::i_VideoCaptureStart()
    30282940{
    30292941#ifdef VBOX_WITH_VPX
     
    31243036 * Stop video capturing. Does nothing if video capturing is not active.
    31253037 */
    3126 void Display::VideoCaptureStop()
     3038void Display::i_VideoCaptureStop()
    31273039{
    31283040#ifdef VBOX_WITH_VPX
     
    31343046}
    31353047
    3136 int Display::drawToScreenEMT(Display *pDisplay, ULONG aScreenId, BYTE *address,
    3137                              ULONG x, ULONG y, ULONG width, ULONG height)
     3048int Display::i_drawToScreenEMT(Display *pDisplay, ULONG aScreenId, BYTE *address,
     3049                               ULONG x, ULONG y, ULONG width, ULONG height)
    31383050{
    31393051    int rc = VINF_SUCCESS;
     
    31433055    if (aScreenId == VBOX_VIDEO_PRIMARY_SCREEN)
    31443056    {
    3145         Assert(!pDisplay->vbvaLockIsOwner());
     3057        Assert(!pDisplay->i_vbvaLockIsOwner());
    31463058        rc = pDisplay->mpDrv->pUpPort->pfnDisplayBlt(pDisplay->mpDrv->pUpPort, address, x, y, width, height);
    31473059    }
     
    31653077        uint32_t u32DstBitsPerPixel = pFBInfo->u16BitsPerPixel;
    31663078
    3167         Assert(!pDisplay->vbvaLockIsOwner());
     3079        Assert(!pDisplay->i_vbvaLockIsOwner());
    31683080        rc = pDisplay->mpDrv->pUpPort->pfnCopyRect(pDisplay->mpDrv->pUpPort,
    31693081                                                   width, height,
     
    32183130                        u32DstBitsPerPixel = 32;
    32193131
    3220                         Assert(!pDisplay->vbvaLockIsOwner());
     3132                        Assert(!pDisplay->i_vbvaLockIsOwner());
    32213133                        pDisplay->mpDrv->pUpPort->pfnCopyRect(pDisplay->mpDrv->pUpPort,
    32223134                                                              width, height,
     
    32333145            }
    32343146
    3235             pDisplay->handleDisplayUpdate(aScreenId, x, y, width, height);
     3147            pDisplay->i_handleDisplayUpdate(aScreenId, x, y, width, height);
    32363148        }
    32373149    }
     
    32473159}
    32483160
    3249 STDMETHODIMP Display::DrawToScreen(ULONG aScreenId, BYTE *address,
    3250                                    ULONG x, ULONG y, ULONG width, ULONG height)
     3161HRESULT Display::drawToScreen(ULONG aScreenId, BYTE *aAddress, ULONG aX, ULONG aY, ULONG aWidth, ULONG aHeight)
    32513162{
    32523163    /// @todo (r=dmik) this function may take too long to complete if the VM
     
    32563167    //  within the Console lock to make it atomic).
    32573168
    3258     LogRelFlowFunc(("address=%p, x=%d, y=%d, width=%d, height=%d\n",
    3259                   (void *)address, x, y, width, height));
    3260 
    3261     CheckComArgNotNull(address);
    3262     CheckComArgExpr(width, width != 0);
    3263     CheckComArgExpr(height, height != 0);
    3264 
    3265     AutoCaller autoCaller(this);
    3266     if (FAILED(autoCaller.rc())) return autoCaller.rc();
     3169    LogRelFlowFunc(("aAddress=%p, x=%d, y=%d, width=%d, height=%d\n",
     3170                   (void *)aAddress, aX, aY, aWidth, aHeight));
     3171
     3172    CheckComArgExpr(aWidth, aWidth != 0);
     3173    CheckComArgExpr(aHeight, aHeight != 0);
    32673174
    32683175    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    32813188     * dirty conversion work.
    32823189     */
    3283     int rcVBox = VMR3ReqCallWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::drawToScreenEMT, 7,
    3284                                   this, aScreenId, address, x, y, width, height);
     3190    int rcVBox = VMR3ReqCallWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::i_drawToScreenEMT, 7,
     3191                                  this, aScreenId, aAddress, aX, aY, aWidth, aHeight);
    32853192
    32863193    /*
     
    33083215}
    33093216
    3310 void Display::InvalidateAndUpdateEMT(Display *pDisplay, unsigned uId, bool fUpdateAll)
     3217void Display::i_InvalidateAndUpdateEMT(Display *pDisplay, unsigned uId, bool fUpdateAll)
    33113218{
    33123219    unsigned uScreenId;
     
    33183225            && uScreenId == VBOX_VIDEO_PRIMARY_SCREEN)
    33193226        {
    3320             Assert(!pDisplay->vbvaLockIsOwner());
     3227            Assert(!pDisplay->i_vbvaLockIsOwner());
    33213228            pDisplay->mpDrv->pUpPort->pfnUpdateDisplayAll(pDisplay->mpDrv->pUpPort, /* fFailOnResize = */ true);
    33223229        }
     
    33713278                        if (ulWidth == pFBInfo->w && ulHeight == pFBInfo->h)
    33723279                        {
    3373 
    3374                             Assert(!pDisplay->vbvaLockIsOwner());
     3280                            Assert(!pDisplay->i_vbvaLockIsOwner());
    33753281                            pDisplay->mpDrv->pUpPort->pfnCopyRect(pDisplay->mpDrv->pUpPort,
    33763282                                                                  width, height,
     
    33873293                }
    33883294
    3389                 pDisplay->handleDisplayUpdate (uScreenId, 0, 0, pFBInfo->w, pFBInfo->h);
     3295                pDisplay->i_handleDisplayUpdate(uScreenId, 0, 0, pFBInfo->w, pFBInfo->h);
    33903296            }
    33913297        }
     
    34013307 * @returns COM status code
    34023308 */
    3403 STDMETHODIMP Display::InvalidateAndUpdate()
     3309
     3310HRESULT Display::invalidateAndUpdate()
    34043311{
    34053312    LogRelFlowFunc(("\n"));
    3406 
    3407     AutoCaller autoCaller(this);
    3408     if (FAILED(autoCaller.rc())) return autoCaller.rc();
    34093313
    34103314    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     
    34243328
    34253329    /* pdm.h says that this has to be called from the EMT thread */
    3426     int rcVBox = VMR3ReqCallVoidWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::InvalidateAndUpdateEMT,
     3330    int rcVBox = VMR3ReqCallVoidWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::i_InvalidateAndUpdateEMT,
    34273331                                      3, this, 0, true);
    34283332    alock.acquire();
     
    34363340}
    34373341
    3438 STDMETHODIMP Display::CompleteVHWACommand(BYTE *pCommand)
     3342HRESULT Display::completeVHWACommand(BYTE *aCommand)
    34393343{
    34403344#ifdef VBOX_WITH_VIDEOHWACCEL
    3441     mpDrv->pVBVACallbacks->pfnVHWACommandCompleteAsync(mpDrv->pVBVACallbacks, (PVBOXVHWACMD)pCommand);
     3345    mpDrv->pVBVACallbacks->pfnVHWACommandCompleteAsync(mpDrv->pVBVACallbacks, (PVBOXVHWACMD)aCommand);
    34423346    return S_OK;
    34433347#else
     
    34463350}
    34473351
    3448 STDMETHODIMP Display::ViewportChanged(ULONG aScreenId, ULONG x, ULONG y, ULONG width, ULONG height)
     3352HRESULT Display::viewportChanged(ULONG aScreenId, ULONG aX, ULONG aY, ULONG aWidth, ULONG aHeight)
    34493353{
    34503354#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
     
    34613365    if (is3denabled)
    34623366    {
    3463         int rc = crViewportNotify(aScreenId, x, y, width, height);
     3367        int rc = i_crViewportNotify(aScreenId, aX, aY, aWidth, aHeight);
    34643368        if (RT_FAILURE(rc))
    34653369        {
    34663370            DISPLAYFBINFO *pFb = &maFramebuffers[aScreenId];
    34673371            pFb->pendingViewportInfo.fPending = true;
    3468             pFb->pendingViewportInfo.x = x;
    3469             pFb->pendingViewportInfo.y = y;
    3470             pFb->pendingViewportInfo.width = width;
    3471             pFb->pendingViewportInfo.height = height;
     3372            pFb->pendingViewportInfo.x = aX;
     3373            pFb->pendingViewportInfo.y = aY;
     3374            pFb->pendingViewportInfo.width = aWidth;
     3375            pFb->pendingViewportInfo.height = aHeight;
    34723376        }
    34733377    }
     
    34763380}
    34773381
    3478 STDMETHODIMP Display::QuerySourceBitmap(ULONG aScreenId,
    3479                                         IDisplaySourceBitmap **aDisplaySourceBitmap)
     3382HRESULT Display::querySourceBitmap(ULONG aScreenId,
     3383                                   ComPtr<IDisplaySourceBitmap> &aDisplaySourceBitmap)
    34803384{
    34813385    LogRelFlowFunc(("aScreenId = %d\n", aScreenId));
    3482 
    3483     AutoCaller autoCaller(this);
    3484     if (FAILED(autoCaller.rc())) return autoCaller.rc();
    34853386
    34863387    Console::SafeVMPtr ptrVM(mParent);
     
    34993400    if (!mfSourceBitmapEnabled)
    35003401    {
    3501         *aDisplaySourceBitmap = NULL;
     3402        aDisplaySourceBitmap = NULL;
    35023403        return E_FAIL;
    35033404    }
     
    35123413        hr = obj.createObject();
    35133414        if (SUCCEEDED(hr))
    3514         {
    35153415            hr = obj->init(this, aScreenId, pFBInfo);
    3516         }
    35173416
    35183417        if (SUCCEEDED(hr))
    35193418        {
    3520             bool fDefaultFormat = !obj->usesVRAM();
     3419            bool fDefaultFormat = !obj->i_usesVRAM();
    35213420
    35223421            if (aScreenId == VBOX_VIDEO_PRIMARY_SCREEN)
     
    35563455    if (SUCCEEDED(hr))
    35573456    {
    3558         pFBInfo->pSourceBitmap->AddRef();
    3559         *aDisplaySourceBitmap = pFBInfo->pSourceBitmap;
     3457        pFBInfo->pSourceBitmap.queryInterfaceTo(aDisplaySourceBitmap.asOutParam());
    35603458    }
    35613459
     
    35673465        if (fSetRenderVRAM)
    35683466        {
    3569             Assert(!vbvaLockIsOwner());
     3467            Assert(!i_vbvaLockIsOwner());
    35703468            mpDrv->pUpPort->pfnSetRenderVRAM(mpDrv->pUpPort, true);
    35713469        }
    35723470
    35733471        if (fInvalidate)
    3574             VMR3ReqCallWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::InvalidateAndUpdateEMT,
     3472            VMR3ReqCallWaitU(ptrVM.rawUVM(), VMCPUID_ANY, (PFNRT)Display::i_InvalidateAndUpdateEMT,
    35753473                             3, this, aScreenId, false);
    35763474    }
     
    35803478}
    35813479
    3582 STDMETHODIMP Display::SetFramebufferUpdateMode(ULONG aScreenId,
    3583                                                FramebufferUpdateMode_T aFramebufferUpdateMode)
     3480HRESULT Display::setFramebufferUpdateMode(ULONG aScreenId, FramebufferUpdateMode_T aFramebufferUpdateMode)
    35843481{
    35853482    LogRelFlowFunc(("aScreenId %d, aFramebufferUpdateMode %d\n", aScreenId, aFramebufferUpdateMode));
    3586 
    3587     AutoCaller autoCaller(this);
    3588     if (FAILED(autoCaller.rc())) return autoCaller.rc();
    35893483
    35903484    HRESULT hr = S_OK;
     
    36423536}
    36433537
     3538// wrapped IEventListener method
     3539HRESULT Display::handleEvent(const ComPtr<IEvent> &aEvent)
     3540{
     3541    VBoxEventType_T aType = VBoxEventType_Invalid;
     3542
     3543    aEvent->COMGETTER(Type)(&aType);
     3544    switch (aType)
     3545    {
     3546        case VBoxEventType_OnStateChanged:
     3547        {
     3548            ComPtr<IStateChangedEvent> scev = aEvent;
     3549            Assert(scev);
     3550            MachineState_T machineState;
     3551            scev->COMGETTER(State)(&machineState);
     3552            if (   machineState == MachineState_Running
     3553                || machineState == MachineState_Teleporting
     3554                || machineState == MachineState_LiveSnapshotting
     3555                || machineState == MachineState_DeletingSnapshotOnline
     3556                   )
     3557            {
     3558                LogRelFlowFunc(("Machine is running.\n"));
     3559
     3560                mfMachineRunning = true;
     3561
     3562#ifdef VBOX_WITH_CROGL
     3563                i_crOglWindowsShow(true);
     3564#endif
     3565            }
     3566            else
     3567            {
     3568                mfMachineRunning = false;
     3569
     3570#ifdef VBOX_WITH_CROGL
     3571                if (machineState == MachineState_Paused)
     3572                    i_crOglWindowsShow(false);
     3573#endif
     3574            }
     3575            break;
     3576        }
     3577        default:
     3578            AssertFailed();
     3579    }
     3580
     3581    return S_OK;
     3582}
     3583
    36443584
    36453585// private methods
     
    36473587
    36483588#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    3649 int Display::crViewportNotify(ULONG aScreenId, ULONG x, ULONG y, ULONG width, ULONG height)
     3589int Display::i_crViewportNotify(ULONG aScreenId, ULONG x, ULONG y, ULONG width, ULONG height)
    36503590{
    36513591    VMMDev *pVMMDev = mParent->i_getVMMDev();
     
    36743614    pData->aParms[4].u.uint32 = height;
    36753615
    3676     return crCtlSubmitSyncIfHasDataForScreen(aScreenId, &pData->Hdr, (uint32_t)cbData);
     3616    return i_crCtlSubmitSyncIfHasDataForScreen(aScreenId, &pData->Hdr, (uint32_t)cbData);
    36773617}
    36783618#endif
    36793619
    36803620#ifdef VBOX_WITH_CRHGSMI
    3681 void Display::setupCrHgsmiData(void)
     3621void Display::i_setupCrHgsmiData(void)
    36823622{
    36833623    VMMDev *pVMMDev = mParent->i_getVMMDev();
     
    36973637        VBOXVDMACMD_CHROMIUM_CTL_CRHGSMI_SETUP_MAINCB Completion;
    36983638        Completion.Hdr.enmType = VBOXVDMACMD_CHROMIUM_CTL_TYPE_CRHGSMI_SETUP_MAINCB;
    3699         Completion.Hdr.cbCmd = sizeof (Completion);
     3639        Completion.Hdr.cbCmd = sizeof(Completion);
    37003640        Completion.hCompletion = mpDrv->pVBVACallbacks;
    37013641        Completion.pfnCompletion = mpDrv->pVBVACallbacks->pfnCrHgsmiCommandCompleteAsync;
     
    37193659}
    37203660
    3721 void Display::destructCrHgsmiData(void)
     3661void Display::i_destructCrHgsmiData(void)
    37223662{
    37233663    int rc = RTCritSectRwEnterExcl(&mCrOglLock);
     
    37333673 * @see PDMIDISPLAYCONNECTOR::pfnResize
    37343674 */
    3735 DECLCALLBACK(int) Display::displayResizeCallback(PPDMIDISPLAYCONNECTOR pInterface,
    3736                                                  uint32_t bpp, void *pvVRAM, uint32_t cbLine, uint32_t cx, uint32_t cy)
     3675DECLCALLBACK(int) Display::i_displayResizeCallback(PPDMIDISPLAYCONNECTOR pInterface,
     3676                                                   uint32_t bpp, void *pvVRAM, uint32_t cbLine, uint32_t cx, uint32_t cy)
    37373677{
    37383678    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    37553695    }
    37563696
    3757     int rc = pThis->handleDisplayResize(VBOX_VIDEO_PRIMARY_SCREEN, bpp, pvVRAM, cbLine, cx, cy, VBVA_SCREEN_F_ACTIVE);
     3697    int rc = pThis->i_handleDisplayResize(VBOX_VIDEO_PRIMARY_SCREEN, bpp, pvVRAM, cbLine, cx, cy, VBVA_SCREEN_F_ACTIVE);
    37583698
    37593699    /* Restore the flag.  */
     
    37693709 * @see PDMIDISPLAYCONNECTOR::pfnUpdateRect
    37703710 */
    3771 DECLCALLBACK(void) Display::displayUpdateCallback(PPDMIDISPLAYCONNECTOR pInterface,
    3772                                                   uint32_t x, uint32_t y, uint32_t cx, uint32_t cy)
     3711DECLCALLBACK(void) Display::i_displayUpdateCallback(PPDMIDISPLAYCONNECTOR pInterface,
     3712                                                    uint32_t x, uint32_t y, uint32_t cx, uint32_t cy)
    37733713{
    37743714    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    37843724     */
    37853725
    3786     pDrv->pDisplay->handleDisplayUpdate(VBOX_VIDEO_PRIMARY_SCREEN, x, y, cx, cy);
     3726    pDrv->pDisplay->i_handleDisplayUpdate(VBOX_VIDEO_PRIMARY_SCREEN, x, y, cx, cy);
    37873727}
    37883728
     
    37933733 * @thread EMT
    37943734 */
    3795 DECLCALLBACK(void) Display::displayRefreshCallback(PPDMIDISPLAYCONNECTOR pInterface)
     3735DECLCALLBACK(void) Display::i_displayRefreshCallback(PPDMIDISPLAYCONNECTOR pInterface)
    37963736{
    37973737    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    38053745    unsigned uScreenId;
    38063746
    3807     int rc = pDisplay->videoAccelRefreshProcess();
     3747    int rc = pDisplay->i_videoAccelRefreshProcess();
    38083748    if (rc != VINF_TRY_AGAIN) /* Means 'do nothing' here. */
    38093749    {
     
    38123752            /* No VBVA do a display update. */
    38133753            DISPLAYFBINFO *pFBInfo = &pDisplay->maFramebuffers[VBOX_VIDEO_PRIMARY_SCREEN];
    3814             Assert(!pDisplay->vbvaLockIsOwner());
     3754            Assert(!pDisplay->i_vbvaLockIsOwner());
    38153755            pDrv->pUpPort->pfnUpdateDisplay(pDrv->pUpPort);
    38163756        }
     
    38263766            DISPLAYFBINFO *pFBInfo = &pDisplay->maFramebuffers[uScreenId];
    38273767
    3828             Assert (pDisplay->mParent && pDisplay->mParent->i_consoleVRDPServer());
    3829             pDisplay->mParent->i_consoleVRDPServer()->SendUpdate (uScreenId, NULL, 0);
     3768            Assert(pDisplay->mParent && pDisplay->mParent->i_consoleVRDPServer());
     3769            pDisplay->mParent->i_consoleVRDPServer()->SendUpdate(uScreenId, NULL, 0);
    38303770        }
    38313771    }
     
    38523792                        pData->aParms[0].type = VBOX_HGCM_SVC_PARM_PTR;
    38533793                        pData->aParms[0].u.pointer.addr = &pDisplay->mCrOglScreenshotData;
    3854                         pData->aParms[0].u.pointer.size = sizeof (pDisplay->mCrOglScreenshotData);
    3855                         rc = pDisplay->crCtlSubmit(&pData->Hdr, sizeof (*pData), displayCrCmdFree, pData);
     3794                        pData->aParms[0].u.pointer.size = sizeof(pDisplay->mCrOglScreenshotData);
     3795                        rc = pDisplay->i_crCtlSubmit(&pData->Hdr, sizeof(*pData), i_displayCrCmdFree, pData);
    38563796                        if (!RT_SUCCESS(rc))
    38573797                            AssertMsgFailed(("crCtlSubmit failed rc %d\n", rc));
     
    39173857 * @see PDMIDISPLAYCONNECTOR::pfnReset
    39183858 */
    3919 DECLCALLBACK(void) Display::displayResetCallback(PPDMIDISPLAYCONNECTOR pInterface)
     3859DECLCALLBACK(void) Display::i_displayResetCallback(PPDMIDISPLAYCONNECTOR pInterface)
    39203860{
    39213861    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    39243864
    39253865   /* Disable VBVA mode. */
    3926     pDrv->pDisplay->VideoAccelEnable (false, NULL);
     3866    pDrv->pDisplay->i_VideoAccelEnable(false, NULL);
    39273867}
    39283868
     
    39323872 * @see PDMIDISPLAYCONNECTOR::pfnLFBModeChange
    39333873 */
    3934 DECLCALLBACK(void) Display::displayLFBModeChangeCallback(PPDMIDISPLAYCONNECTOR pInterface, bool fEnabled)
     3874DECLCALLBACK(void) Display::i_displayLFBModeChangeCallback(PPDMIDISPLAYCONNECTOR pInterface, bool fEnabled)
    39353875{
    39363876    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    39503890 * @see PDMIDISPLAYCONNECTOR::pfnProcessAdapterData
    39513891 */
    3952 DECLCALLBACK(void) Display::displayProcessAdapterDataCallback(PPDMIDISPLAYCONNECTOR pInterface, void *pvVRAM,
    3953                                                               uint32_t u32VRAMSize)
     3892DECLCALLBACK(void) Display::i_displayProcessAdapterDataCallback(PPDMIDISPLAYCONNECTOR pInterface, void *pvVRAM,
     3893                                                                uint32_t u32VRAMSize)
    39543894{
    39553895    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    39813921         {
    39823922             pHdr = (VBOXVIDEOINFOHDR *)pu8;
    3983              pu8 += sizeof (VBOXVIDEOINFOHDR);
     3923             pu8 += sizeof(VBOXVIDEOINFOHDR);
    39843924
    39853925             if (pu8 >= pu8End)
     
    39913931             if (pHdr->u8Type == VBOX_VIDEO_INFO_TYPE_DISPLAY)
    39923932             {
    3993                  if (pHdr->u16Length != sizeof (VBOXVIDEOINFODISPLAY))
     3933                 if (pHdr->u16Length != sizeof(VBOXVIDEOINFODISPLAY))
    39943934                 {
    39953935                     LogRel(("VBoxVideo: Guest adapter information %s invalid length %d!!!\n", "DISPLAY", pHdr->u16Length));
     
    40163956             else if (pHdr->u8Type == VBOX_VIDEO_INFO_TYPE_QUERY_CONF32)
    40173957             {
    4018                  if (pHdr->u16Length != sizeof (VBOXVIDEOINFOQUERYCONF32))
     3958                 if (pHdr->u16Length != sizeof(VBOXVIDEOINFOQUERYCONF32))
    40193959                 {
    40203960                     LogRel(("VBoxVideo: Guest adapter information %s invalid length %d!!!\n", "CONF32", pHdr->u16Length));
     
    40684008 * @see PDMIDISPLAYCONNECTOR::pfnProcessDisplayData
    40694009 */
    4070 DECLCALLBACK(void) Display::displayProcessDisplayDataCallback(PPDMIDISPLAYCONNECTOR pInterface, void *pvVRAM, unsigned uScreenId)
     4010DECLCALLBACK(void) Display::i_displayProcessDisplayDataCallback(PPDMIDISPLAYCONNECTOR pInterface,
     4011                                                                void *pvVRAM, unsigned uScreenId)
    40714012{
    40724013    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    40924033    {
    40934034        pHdr = (VBOXVIDEOINFOHDR *)pu8;
    4094         pu8 += sizeof (VBOXVIDEOINFOHDR);
     4035        pu8 += sizeof(VBOXVIDEOINFOHDR);
    40954036
    40964037        if (pu8 >= pu8End)
     
    41024043        if (pHdr->u8Type == VBOX_VIDEO_INFO_TYPE_SCREEN)
    41034044        {
    4104             if (pHdr->u16Length != sizeof (VBOXVIDEOINFOSCREEN))
     4045            if (pHdr->u16Length != sizeof(VBOXVIDEOINFOSCREEN))
    41054046            {
    41064047                LogRel(("VBoxVideo: Guest display information %s invalid length %d!!!\n", "SCREEN", pHdr->u16Length));
     
    41334074                }
    41344075
    4135                 pDrv->pDisplay->handleDisplayResize(uScreenId, pScreen->bitsPerPixel,
    4136                                                     (uint8_t *)pvVRAM + pFBInfo->u32Offset,
    4137                                                     pScreen->u32LineSize,
    4138                                                     pScreen->u16Width, pScreen->u16Height,
    4139                                                     VBVA_SCREEN_F_ACTIVE);
     4076                pDrv->pDisplay->i_handleDisplayResize(uScreenId, pScreen->bitsPerPixel,
     4077                                                      (uint8_t *)pvVRAM + pFBInfo->u32Offset,
     4078                                                      pScreen->u32LineSize,
     4079                                                      pScreen->u16Width, pScreen->u16Height,
     4080                                                      VBVA_SCREEN_F_ACTIVE);
    41404081            }
    41414082        }
     
    41524093        else if (pHdr->u8Type == VBOX_VIDEO_INFO_TYPE_HOST_EVENTS)
    41534094        {
    4154             if (pHdr->u16Length != sizeof (VBOXVIDEOINFOHOSTEVENTS))
     4095            if (pHdr->u16Length != sizeof(VBOXVIDEOINFOHOSTEVENTS))
    41554096            {
    41564097                LogRel(("VBoxVideo: Guest display information %s invalid length %d!!!\n", "HOST_EVENTS", pHdr->u16Length));
     
    41674108        else if (pHdr->u8Type == VBOX_VIDEO_INFO_TYPE_LINK)
    41684109        {
    4169             if (pHdr->u16Length != sizeof (VBOXVIDEOINFOLINK))
     4110            if (pHdr->u16Length != sizeof(VBOXVIDEOINFOLINK))
    41704111            {
    41714112                LogRel(("VBoxVideo: Guest adapter information %s invalid length %d!!!\n", "LINK", pHdr->u16Length));
     
    41914132#endif
    41924133
    4193 int Display::handleVHWACommandProcess(PVBOXVHWACMD pCommand)
     4134int Display::i_handleVHWACommandProcess(PVBOXVHWACMD pCommand)
    41944135{
    41954136    unsigned id = (unsigned)pCommand->iDisplay;
     
    42184159}
    42194160
    4220 DECLCALLBACK(int) Display::displayVHWACommandProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVHWACMD pCommand)
     4161DECLCALLBACK(int) Display::i_displayVHWACommandProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVHWACMD pCommand)
    42214162{
    42224163    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
    42234164
    4224     return pDrv->pDisplay->handleVHWACommandProcess(pCommand);
     4165    return pDrv->pDisplay->i_handleVHWACommandProcess(pCommand);
    42254166}
    42264167#endif
    42274168
    42284169#ifdef VBOX_WITH_CRHGSMI
    4229 void Display::handleCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam)
     4170void Display::i_handleCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam)
    42304171{
    42314172    mpDrv->pVBVACallbacks->pfnCrHgsmiCommandCompleteAsync(mpDrv->pVBVACallbacks,
     
    42334174}
    42344175
    4235 void Display::handleCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam)
     4176void Display::i_handleCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam)
    42364177{
    42374178    PVBOXVDMACMD_CHROMIUM_CTL pCtl = (PVBOXVDMACMD_CHROMIUM_CTL)pParam->u.pointer.addr;
     
    42394180}
    42404181
    4241 void Display::handleCrHgsmiCommandProcess(PVBOXVDMACMD_CHROMIUM_CMD pCmd, uint32_t cbCmd)
     4182void Display::i_handleCrHgsmiCommandProcess(PVBOXVDMACMD_CHROMIUM_CMD pCmd, uint32_t cbCmd)
    42424183{
    42434184    int rc = VERR_NOT_SUPPORTED;
     
    42644205
    42654206    /* we are here because something went wrong with command processing, complete it */
    4266     handleCrHgsmiCommandCompletion(rc, SHCRGL_HOST_FN_CRHGSMI_CMD, &parm);
    4267 }
    4268 
    4269 void Display::handleCrHgsmiControlProcess(PVBOXVDMACMD_CHROMIUM_CTL pCtl, uint32_t cbCtl)
     4207    i_handleCrHgsmiCommandCompletion(rc, SHCRGL_HOST_FN_CRHGSMI_CMD, &parm);
     4208}
     4209
     4210void Display::i_handleCrHgsmiControlProcess(PVBOXVDMACMD_CHROMIUM_CTL pCtl, uint32_t cbCtl)
    42704211{
    42714212    int rc = VERR_NOT_SUPPORTED;
     
    42824223            bool fCheckPendingViewport = (pCtl->enmType == VBOXVDMACMD_CHROMIUM_CTL_TYPE_CRHGSMI_SETUP);
    42834224            rc = pVMMDev->hgcmHostFastCallAsync(mhCrOglSvc, SHCRGL_HOST_FN_CRHGSMI_CTL, &parm,
    4284                                                 Display::displayCrHgsmiControlCompletion, this);
     4225                                                Display::i_displayCrHgsmiControlCompletion, this);
    42854226            AssertRC(rc);
    42864227            if (RT_SUCCESS(rc))
     
    42954236                            continue;
    42964237
    4297                         rc = crViewportNotify(ul, pFb->pendingViewportInfo.x, pFb->pendingViewportInfo.y,
     4238                        rc = i_crViewportNotify(ul, pFb->pendingViewportInfo.x, pFb->pendingViewportInfo.y,
    42984239                                              pFb->pendingViewportInfo.width, pFb->pendingViewportInfo.height);
    42994240                        if (RT_SUCCESS(rc))
     
    43144255
    43154256    /* we are here because something went wrong with command processing, complete it */
    4316     handleCrHgsmiControlCompletion(rc, SHCRGL_HOST_FN_CRHGSMI_CTL, &parm);
    4317 }
    4318 
    4319 DECLCALLBACK(void) Display::displayCrHgsmiCommandProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVDMACMD_CHROMIUM_CMD pCmd,
    4320                                                          uint32_t cbCmd)
     4257    i_handleCrHgsmiControlCompletion(rc, SHCRGL_HOST_FN_CRHGSMI_CTL, &parm);
     4258}
     4259
     4260DECLCALLBACK(void) Display::i_displayCrHgsmiCommandProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVDMACMD_CHROMIUM_CMD pCmd,
     4261                                                           uint32_t cbCmd)
    43214262{
    43224263    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
    43234264
    4324     pDrv->pDisplay->handleCrHgsmiCommandProcess(pCmd, cbCmd);
    4325 }
    4326 
    4327 DECLCALLBACK(void) Display::displayCrHgsmiControlProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVDMACMD_CHROMIUM_CTL pCmd,
    4328                                                          uint32_t cbCmd)
     4265    pDrv->pDisplay->i_handleCrHgsmiCommandProcess(pCmd, cbCmd);
     4266}
     4267
     4268DECLCALLBACK(void) Display::i_displayCrHgsmiControlProcess(PPDMIDISPLAYCONNECTOR pInterface, PVBOXVDMACMD_CHROMIUM_CTL pCmd,
     4269                                                           uint32_t cbCmd)
    43294270{
    43304271    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
    43314272
    4332     pDrv->pDisplay->handleCrHgsmiControlProcess(pCmd, cbCmd);
    4333 }
    4334 
    4335 DECLCALLBACK(void) Display::displayCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
    4336                                                             void *pvContext)
     4273    pDrv->pDisplay->i_handleCrHgsmiControlProcess(pCmd, cbCmd);
     4274}
     4275
     4276DECLCALLBACK(void) Display::i_displayCrHgsmiCommandCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
     4277                                                              void *pvContext)
    43374278{
    43384279    AssertMsgFailed(("not expected!"));
    43394280    Display *pDisplay = (Display *)pvContext;
    4340     pDisplay->handleCrHgsmiCommandCompletion(result, u32Function, pParam);
    4341 }
    4342 
    4343 DECLCALLBACK(void) Display::displayCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
    4344                                                             void *pvContext)
     4281    pDisplay->i_handleCrHgsmiCommandCompletion(result, u32Function, pParam);
     4282}
     4283
     4284DECLCALLBACK(void) Display::i_displayCrHgsmiControlCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
     4285                                                              void *pvContext)
    43454286{
    43464287    Display *pDisplay = (Display *)pvContext;
    4347     pDisplay->handleCrHgsmiControlCompletion(result, u32Function, pParam);
     4288    pDisplay->i_handleCrHgsmiControlCompletion(result, u32Function, pParam);
    43484289
    43494290}
     
    43514292
    43524293#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    4353 DECLCALLBACK(void)  Display::displayCrHgcmCtlSubmitCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
    4354                                                               void *pvContext)
     4294DECLCALLBACK(void)  Display::i_displayCrHgcmCtlSubmitCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam,
     4295                                                                void *pvContext)
    43554296{
    43564297    VBOXCRCMDCTL *pCmd = (VBOXCRCMDCTL*)pParam->u.pointer.addr;
     
    43594300}
    43604301
    4361 int  Display::handleCrHgcmCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
     4302int  Display::i_handleCrHgcmCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
    43624303                                    PFNCRCTLCOMPLETION pfnCompletion,
    43634304                                    void *pvCompletion)
     
    43774318
    43784319    pCmd->u.pfnInternal = (void(*)())pfnCompletion;
    4379     int rc = pVMMDev->hgcmHostFastCallAsync(mhCrOglSvc, SHCRGL_HOST_FN_CTL, &parm, displayCrHgcmCtlSubmitCompletion,
     4320    int rc = pVMMDev->hgcmHostFastCallAsync(mhCrOglSvc, SHCRGL_HOST_FN_CTL, &parm, i_displayCrHgcmCtlSubmitCompletion,
    43804321                                            pvCompletion);
    43814322    if (!RT_SUCCESS(rc))
     
    43854326}
    43864327
    4387 DECLCALLBACK(int)  Display::displayCrHgcmCtlSubmit(PPDMIDISPLAYCONNECTOR pInterface,
    4388                                     struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
    4389                                     PFNCRCTLCOMPLETION pfnCompletion,
    4390                                     void *pvCompletion)
     4328DECLCALLBACK(int)  Display::i_displayCrHgcmCtlSubmit(PPDMIDISPLAYCONNECTOR pInterface,
     4329                                                     struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd,
     4330                                                     PFNCRCTLCOMPLETION pfnCompletion,
     4331                                                     void *pvCompletion)
    43914332{
    43924333    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
    43934334    Display *pThis = pDrv->pDisplay;
    4394     return pThis->handleCrHgcmCtlSubmit(pCmd, cbCmd, pfnCompletion, pvCompletion);
    4395 }
    4396 
    4397 int Display::crCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, PFNCRCTLCOMPLETION pfnCompletion, void *pvCompletion)
     4335    return pThis->i_handleCrHgcmCtlSubmit(pCmd, cbCmd, pfnCompletion, pvCompletion);
     4336}
     4337
     4338int Display::i_crCtlSubmit(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd, PFNCRCTLCOMPLETION pfnCompletion, void *pvCompletion)
    43984339{
    43994340    int rc = RTCritSectRwEnterShared(&mCrOglLock);
     
    44104351}
    44114352
    4412 int Display::crCtlSubmitSync(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd)
     4353int Display::i_crCtlSubmitSync(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd)
    44134354{
    44144355    int rc = RTCritSectRwEnterShared(&mCrOglLock);
     
    44254366}
    44264367
    4427 int Display::crCtlSubmitAsyncCmdCopy(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd)
     4368int Display::i_crCtlSubmitAsyncCmdCopy(struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd)
    44284369{
    44294370    VBOXCRCMDCTL* pCmdCopy = (VBOXCRCMDCTL*)RTMemAlloc(cbCmd);
     
    44364377    memcpy(pCmdCopy, pCmd, cbCmd);
    44374378
    4438     int rc = crCtlSubmit(pCmdCopy, cbCmd, displayCrCmdFree, pCmdCopy);
     4379    int rc = i_crCtlSubmit(pCmdCopy, cbCmd, i_displayCrCmdFree, pCmdCopy);
    44394380    if (RT_FAILURE(rc))
    44404381    {
     
    44474388}
    44484389
    4449 int Display::crCtlSubmitSyncIfHasDataForScreen(uint32_t u32ScreenID, struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd)
     4390int Display::i_crCtlSubmitSyncIfHasDataForScreen(uint32_t u32ScreenID, struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd)
    44504391{
    44514392    int rc = RTCritSectRwEnterShared(&mCrOglLock);
     
    44534394
    44544395    if (mCrOglCallbacks.pfnHasDataForScreen && mCrOglCallbacks.pfnHasDataForScreen(u32ScreenID))
    4455         rc = crCtlSubmitSync(pCmd, cbCmd);
     4396        rc = i_crCtlSubmitSync(pCmd, cbCmd);
    44564397    else
    4457         rc = crCtlSubmitAsyncCmdCopy(pCmd, cbCmd);
     4398        rc = i_crCtlSubmitAsyncCmdCopy(pCmd, cbCmd);
    44584399
    44594400    RTCritSectRwLeaveShared(&mCrOglLock);
     
    44624403}
    44634404
    4464 bool  Display::handleCrVRecScreenshotBegin(uint32_t uScreen, uint64_t u64TimeStamp)
     4405bool  Display::i_handleCrVRecScreenshotBegin(uint32_t uScreen, uint64_t u64TimeStamp)
    44654406{
    44664407# if VBOX_WITH_VPX
     
    44714412}
    44724413
    4473 void  Display::handleCrVRecScreenshotEnd(uint32_t uScreen, uint64_t u64TimeStamp)
    4474 {
    4475 }
    4476 
    4477 void  Display::handleCrVRecScreenshotPerform(uint32_t uScreen,
    4478                                              uint32_t x, uint32_t y, uint32_t uPixelFormat,
    4479                                              uint32_t uBitsPerPixel, uint32_t uBytesPerLine,
    4480                                              uint32_t uGuestWidth, uint32_t uGuestHeight,
    4481                                              uint8_t *pu8BufferAddress, uint64_t u64TimeStamp)
     4414void  Display::i_handleCrVRecScreenshotEnd(uint32_t uScreen, uint64_t u64TimeStamp)
     4415{
     4416}
     4417
     4418void  Display::i_handleCrVRecScreenshotPerform(uint32_t uScreen,
     4419                                               uint32_t x, uint32_t y, uint32_t uPixelFormat,
     4420                                               uint32_t uBitsPerPixel, uint32_t uBytesPerLine,
     4421                                               uint32_t uGuestWidth, uint32_t uGuestHeight,
     4422                                               uint8_t *pu8BufferAddress, uint64_t u64TimeStamp)
    44824423{
    44834424    Assert(mfCrOglVideoRecState == CRVREC_STATE_SUBMITTED);
     
    44924433}
    44934434
    4494 void  Display::handleVRecCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext)
     4435void  Display::i_handleVRecCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext)
    44954436{
    44964437    Assert(mfCrOglVideoRecState == CRVREC_STATE_SUBMITTED);
     
    44984439}
    44994440
    4500 DECLCALLBACK(void) Display::displayCrVRecScreenshotPerform(void *pvCtx, uint32_t uScreen,
    4501                                                            uint32_t x, uint32_t y,
    4502                                                            uint32_t uBitsPerPixel, uint32_t uBytesPerLine,
    4503                                                            uint32_t uGuestWidth, uint32_t uGuestHeight,
    4504                                                            uint8_t *pu8BufferAddress, uint64_t u64TimeStamp)
     4441DECLCALLBACK(void) Display::i_displayCrVRecScreenshotPerform(void *pvCtx, uint32_t uScreen,
     4442                                                             uint32_t x, uint32_t y,
     4443                                                             uint32_t uBitsPerPixel, uint32_t uBytesPerLine,
     4444                                                             uint32_t uGuestWidth, uint32_t uGuestHeight,
     4445                                                             uint8_t *pu8BufferAddress, uint64_t u64TimeStamp)
    45054446{
    45064447    Display *pDisplay = (Display *)pvCtx;
    4507     pDisplay->handleCrVRecScreenshotPerform(uScreen,
    4508                                             x, y, FramebufferPixelFormat_FOURCC_RGB, uBitsPerPixel,
    4509                                             uBytesPerLine, uGuestWidth, uGuestHeight,
    4510                                             pu8BufferAddress, u64TimeStamp);
    4511 }
    4512 
    4513 DECLCALLBACK(bool) Display::displayCrVRecScreenshotBegin(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp)
     4448    pDisplay->i_handleCrVRecScreenshotPerform(uScreen,
     4449                                              x, y, FramebufferPixelFormat_FOURCC_RGB, uBitsPerPixel,
     4450                                              uBytesPerLine, uGuestWidth, uGuestHeight,
     4451                                              pu8BufferAddress, u64TimeStamp);
     4452}
     4453
     4454DECLCALLBACK(bool) Display::i_displayCrVRecScreenshotBegin(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp)
    45144455{
    45154456    Display *pDisplay = (Display *)pvCtx;
    4516     return pDisplay->handleCrVRecScreenshotBegin(uScreen, u64TimeStamp);
    4517 }
    4518 
    4519 DECLCALLBACK(void) Display::displayCrVRecScreenshotEnd(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp)
     4457    return pDisplay->i_handleCrVRecScreenshotBegin(uScreen, u64TimeStamp);
     4458}
     4459
     4460DECLCALLBACK(void) Display::i_displayCrVRecScreenshotEnd(void *pvCtx, uint32_t uScreen, uint64_t u64TimeStamp)
    45204461{
    45214462    Display *pDisplay = (Display *)pvCtx;
    4522     pDisplay->handleCrVRecScreenshotEnd(uScreen, u64TimeStamp);
    4523 }
    4524 
    4525 DECLCALLBACK(void)  Display::displayVRecCompletion(int32_t result, uint32_t u32Function, PVBOXHGCMSVCPARM pParam, void *pvContext)
     4463    pDisplay->i_handleCrVRecScreenshotEnd(uScreen, u64TimeStamp);
     4464}
     4465
     4466DECLCALLBACK(void) Display::i_displayVRecCompletion(int32_t result, uint32_t u32Function,
     4467                                                    PVBOXHGCMSVCPARM pParam, void *pvContext)
    45264468{
    45274469    Display *pDisplay = (Display *)pvContext;
    4528     pDisplay->handleVRecCompletion(result, u32Function, pParam, pvContext);
     4470    pDisplay->i_handleVRecCompletion(result, u32Function, pParam, pvContext);
    45294471}
    45304472
     
    45334475
    45344476#ifdef VBOX_WITH_HGSMI
    4535 DECLCALLBACK(int) Display::displayVBVAEnable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, PVBVAHOSTFLAGS pHostFlags, bool fRenderThreadMode)
     4477DECLCALLBACK(int) Display::i_displayVBVAEnable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, PVBVAHOSTFLAGS pHostFlags,
     4478                                               bool fRenderThreadMode)
    45364479{
    45374480    LogRelFlowFunc(("uScreenId %d\n", uScreenId));
     
    45594502}
    45604503
    4561 DECLCALLBACK(void) Display::displayVBVADisable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId)
     4504DECLCALLBACK(void) Display::i_displayVBVADisable(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId)
    45624505{
    45634506    LogRelFlowFunc(("uScreenId %d\n", uScreenId));
     
    45974540    {
    45984541        /* Force full screen update, because VGA device must take control, do resize, etc. */
    4599         Assert(!pThis->vbvaLockIsOwner());
     4542        Assert(!pThis->i_vbvaLockIsOwner());
    46004543        pThis->mpDrv->pUpPort->pfnUpdateDisplayAll(pThis->mpDrv->pUpPort, /* fFailOnResize = */ false);
    46014544    }
    46024545}
    46034546
    4604 DECLCALLBACK(void) Display::displayVBVAUpdateBegin(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId)
     4547DECLCALLBACK(void) Display::i_displayVBVAUpdateBegin(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId)
    46054548{
    46064549    LogFlowFunc(("uScreenId %d\n", uScreenId));
     
    46184561}
    46194562
    4620 DECLCALLBACK(void) Display::displayVBVAUpdateProcess(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId,
    4621                                                      const PVBVACMDHDR pCmd, size_t cbCmd)
     4563DECLCALLBACK(void) Display::i_displayVBVAUpdateProcess(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId,
     4564                                                       const PVBVACMDHDR pCmd, size_t cbCmd)
    46224565{
    46234566    LogFlowFunc(("uScreenId %d pCmd %p cbCmd %d, @%d,%d %dx%d\n", uScreenId, pCmd, cbCmd, pCmd->x, pCmd->y, pCmd->w, pCmd->h));
     
    46334576            && !pFBInfo->fDisabled)
    46344577        {
    4635             Assert(!pThis->vbvaLockIsOwner());
    4636             pDrv->pUpPort->pfnUpdateDisplayRect (pDrv->pUpPort, pCmd->x, pCmd->y, pCmd->w, pCmd->h);
     4578            Assert(!pThis->i_vbvaLockIsOwner());
     4579            pDrv->pUpPort->pfnUpdateDisplayRect(pDrv->pUpPort, pCmd->x, pCmd->y, pCmd->w, pCmd->h);
    46374580        }
    46384581        else if (   !pFBInfo->pSourceBitmap.isNull()
     
    46744617                uint32_t u32DstBitsPerPixel = 32;
    46754618
    4676                 Assert(!pThis->vbvaLockIsOwner());
     4619                Assert(!pThis->i_vbvaLockIsOwner());
    46774620                pDrv->pUpPort->pfnCopyRect(pDrv->pUpPort,
    46784621                                           width, height,
     
    46974640
    46984641    /* @todo new SendUpdate entry which can get a separate cmd header or coords. */
    4699     pThis->mParent->i_consoleVRDPServer()->SendUpdate (uScreenId, pCmd, (uint32_t)cbCmd);
     4642    pThis->mParent->i_consoleVRDPServer()->SendUpdate(uScreenId, pCmd, (uint32_t)cbCmd);
    47004643
    47014644    *pHdrUnconst = hdrSaved;
    47024645}
    47034646
    4704 DECLCALLBACK(void) Display::displayVBVAUpdateEnd(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, int32_t x, int32_t y,
    4705                                                  uint32_t cx, uint32_t cy)
     4647DECLCALLBACK(void) Display::i_displayVBVAUpdateEnd(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, int32_t x, int32_t y,
     4648                                                   uint32_t cx, uint32_t cy)
    47064649{
    47074650    LogFlowFunc(("uScreenId %d %d,%d %dx%d\n", uScreenId, x, y, cx, cy));
     
    47164659     *                                cx, cy);
    47174660     */
    4718     pThis->handleDisplayUpdate(uScreenId, x - pFBInfo->xOrigin, y - pFBInfo->yOrigin, cx, cy);
     4661    pThis->i_handleDisplayUpdate(uScreenId, x - pFBInfo->xOrigin, y - pFBInfo->yOrigin, cx, cy);
    47194662}
    47204663
     
    47904733#endif /* DEBUG_sunlover */
    47914734
    4792 DECLCALLBACK(int) Display::displayVBVAResize(PPDMIDISPLAYCONNECTOR pInterface, const PVBVAINFOVIEW pView,
    4793                                              const PVBVAINFOSCREEN pScreen, void *pvVRAM)
     4735DECLCALLBACK(int) Display::i_displayVBVAResize(PPDMIDISPLAYCONNECTOR pInterface, const PVBVAINFOVIEW pView,
     4736                                               const PVBVAINFOSCREEN pScreen, void *pvVRAM)
    47944737{
    47954738    LogRelFlowFunc(("pScreen %p, pvVRAM %p\n", pScreen, pvVRAM));
     
    48024745    if (pScreen->u16Flags & VBVA_SCREEN_F_DISABLED)
    48034746    {
    4804         pThis->notifyCroglResize(pView, pScreen, pvVRAM);
     4747        pThis->i_notifyCroglResize(pView, pScreen, pvVRAM);
    48054748
    48064749        pFBInfo->fDisabled = true;
     
    48124755        uint32_t u32Width = pFBInfo->w ? pFBInfo->w : 640;
    48134756        uint32_t u32Height = pFBInfo->h ? pFBInfo->h : 480;
    4814         pThis->handleDisplayResize(pScreen->u32ViewIndex, 0, (uint8_t *)NULL, 0,
    4815                                    u32Width, u32Height, pScreen->u16Flags);
     4757        pThis->i_handleDisplayResize(pScreen->u32ViewIndex, 0, (uint8_t *)NULL, 0,
     4758                                     u32Width, u32Height, pScreen->u16Flags);
    48164759
    48174760        fireGuestMonitorChangedEvent(pThis->mParent->i_getEventSource(),
     
    48484791
    48494792    if (fNewOrigin || fResize)
    4850         pThis->notifyCroglResize(pView, pScreen, pvVRAM);
     4793        pThis->i_notifyCroglResize(pView, pScreen, pvVRAM);
    48514794
    48524795    if (pFBInfo->fDisabled)
     
    48994842
    49004843    /* Do a regular resize. */
    4901     return pThis->handleDisplayResize(pScreen->u32ViewIndex, pScreen->u16BitsPerPixel,
    4902                                       (uint8_t *)pvVRAM + pScreen->u32StartOffset,
    4903                                       pScreen->u32LineSize, pScreen->u32Width, pScreen->u32Height, pScreen->u16Flags);
    4904 }
    4905 
    4906 DECLCALLBACK(int) Display::displayVBVAMousePointerShape(PPDMIDISPLAYCONNECTOR pInterface, bool fVisible, bool fAlpha,
    4907                                                         uint32_t xHot, uint32_t yHot,
    4908                                                         uint32_t cx, uint32_t cy,
    4909                                                         const void *pvShape)
     4844    return pThis->i_handleDisplayResize(pScreen->u32ViewIndex, pScreen->u16BitsPerPixel,
     4845                                        (uint8_t *)pvVRAM + pScreen->u32StartOffset,
     4846                                        pScreen->u32LineSize, pScreen->u32Width, pScreen->u32Height, pScreen->u16Flags);
     4847}
     4848
     4849DECLCALLBACK(int) Display::i_displayVBVAMousePointerShape(PPDMIDISPLAYCONNECTOR pInterface, bool fVisible, bool fAlpha,
     4850                                                          uint32_t xHot, uint32_t yHot,
     4851                                                          uint32_t cx, uint32_t cy,
     4852                                                          const void *pvShape)
    49104853{
    49114854    LogFlowFunc(("\n"));
     
    49374880 * @interface_method_impl{PDMIBASE,pfnQueryInterface}
    49384881 */
    4939 DECLCALLBACK(void *)  Display::drvQueryInterface(PPDMIBASE pInterface, const char *pszIID)
     4882DECLCALLBACK(void *)  Display::i_drvQueryInterface(PPDMIBASE pInterface, const char *pszIID)
    49404883{
    49414884    PPDMDRVINS pDrvIns = PDMIBASE_2_PDMDRV(pInterface);
     
    49534896 * @param   pDrvIns     The driver instance data.
    49544897 */
    4955 DECLCALLBACK(void) Display::drvDestruct(PPDMDRVINS pDrvIns)
     4898DECLCALLBACK(void) Display::i_drvDestruct(PPDMDRVINS pDrvIns)
    49564899{
    49574900    PDMDRV_CHECK_VERSIONS_RETURN_VOID(pDrvIns);
     
    49604903
    49614904    if (pThis->pDisplay)
    4962         Assert(!pThis->pDisplay->vbvaLockIsOwner());
     4905        Assert(!pThis->pDisplay->i_vbvaLockIsOwner());
    49634906
    49644907    pThis->pUpPort->pfnSetRenderVRAM(pThis->pUpPort, false);
     
    49744917        AutoWriteLock displayLock(pThis->pDisplay COMMA_LOCKVAL_SRC_POS);
    49754918#ifdef VBOX_WITH_VPX
    4976         pThis->pDisplay->VideoCaptureStop();
     4919        pThis->pDisplay->i_VideoCaptureStop();
    49774920#endif
    49784921#ifdef VBOX_WITH_CRHGSMI
    4979         pThis->pDisplay->destructCrHgsmiData();
     4922        pThis->pDisplay->i_destructCrHgsmiData();
    49804923#endif
    49814924        pThis->pDisplay->mpDrv = NULL;
     
    49904933 * @copydoc FNPDMDRVCONSTRUCT
    49914934 */
    4992 DECLCALLBACK(int) Display::drvConstruct(PPDMDRVINS pDrvIns, PCFGMNODE pCfg, uint32_t fFlags)
     4935DECLCALLBACK(int) Display::i_drvConstruct(PPDMDRVINS pDrvIns, PCFGMNODE pCfg, uint32_t fFlags)
    49934936{
    49944937    PDMDRV_CHECK_VERSIONS_RETURN(pDrvIns);
     
    50084951     * Init Interfaces.
    50094952     */
    5010     pDrvIns->IBase.pfnQueryInterface           = Display::drvQueryInterface;
    5011 
    5012     pThis->IConnector.pfnResize                = Display::displayResizeCallback;
    5013     pThis->IConnector.pfnUpdateRect            = Display::displayUpdateCallback;
    5014     pThis->IConnector.pfnRefresh               = Display::displayRefreshCallback;
    5015     pThis->IConnector.pfnReset                 = Display::displayResetCallback;
    5016     pThis->IConnector.pfnLFBModeChange         = Display::displayLFBModeChangeCallback;
    5017     pThis->IConnector.pfnProcessAdapterData    = Display::displayProcessAdapterDataCallback;
    5018     pThis->IConnector.pfnProcessDisplayData    = Display::displayProcessDisplayDataCallback;
     4953    pDrvIns->IBase.pfnQueryInterface           = Display::i_drvQueryInterface;
     4954
     4955    pThis->IConnector.pfnResize                = Display::i_displayResizeCallback;
     4956    pThis->IConnector.pfnUpdateRect            = Display::i_displayUpdateCallback;
     4957    pThis->IConnector.pfnRefresh               = Display::i_displayRefreshCallback;
     4958    pThis->IConnector.pfnReset                 = Display::i_displayResetCallback;
     4959    pThis->IConnector.pfnLFBModeChange         = Display::i_displayLFBModeChangeCallback;
     4960    pThis->IConnector.pfnProcessAdapterData    = Display::i_displayProcessAdapterDataCallback;
     4961    pThis->IConnector.pfnProcessDisplayData    = Display::i_displayProcessDisplayDataCallback;
    50194962#ifdef VBOX_WITH_VIDEOHWACCEL
    5020     pThis->IConnector.pfnVHWACommandProcess    = Display::displayVHWACommandProcess;
     4963    pThis->IConnector.pfnVHWACommandProcess    = Display::i_displayVHWACommandProcess;
    50214964#endif
    50224965#ifdef VBOX_WITH_CRHGSMI
    5023     pThis->IConnector.pfnCrHgsmiCommandProcess = Display::displayCrHgsmiCommandProcess;
    5024     pThis->IConnector.pfnCrHgsmiControlProcess = Display::displayCrHgsmiControlProcess;
     4966    pThis->IConnector.pfnCrHgsmiCommandProcess = Display::i_displayCrHgsmiCommandProcess;
     4967    pThis->IConnector.pfnCrHgsmiControlProcess = Display::i_displayCrHgsmiControlProcess;
    50254968#endif
    50264969#if defined(VBOX_WITH_HGCM) && defined(VBOX_WITH_CROGL)
    5027     pThis->IConnector.pfnCrHgcmCtlSubmit       = Display::displayCrHgcmCtlSubmit;
     4970    pThis->IConnector.pfnCrHgcmCtlSubmit       = Display::i_displayCrHgcmCtlSubmit;
    50284971#endif
    50294972#ifdef VBOX_WITH_HGSMI
    5030     pThis->IConnector.pfnVBVAEnable            = Display::displayVBVAEnable;
    5031     pThis->IConnector.pfnVBVADisable           = Display::displayVBVADisable;
    5032     pThis->IConnector.pfnVBVAUpdateBegin       = Display::displayVBVAUpdateBegin;
    5033     pThis->IConnector.pfnVBVAUpdateProcess     = Display::displayVBVAUpdateProcess;
    5034     pThis->IConnector.pfnVBVAUpdateEnd         = Display::displayVBVAUpdateEnd;
    5035     pThis->IConnector.pfnVBVAResize            = Display::displayVBVAResize;
    5036     pThis->IConnector.pfnVBVAMousePointerShape = Display::displayVBVAMousePointerShape;
     4973    pThis->IConnector.pfnVBVAEnable            = Display::i_displayVBVAEnable;
     4974    pThis->IConnector.pfnVBVADisable           = Display::i_displayVBVADisable;
     4975    pThis->IConnector.pfnVBVAUpdateBegin       = Display::i_displayVBVAUpdateBegin;
     4976    pThis->IConnector.pfnVBVAUpdateProcess     = Display::i_displayVBVAUpdateProcess;
     4977    pThis->IConnector.pfnVBVAUpdateEnd         = Display::i_displayVBVAUpdateEnd;
     4978    pThis->IConnector.pfnVBVAResize            = Display::i_displayVBVAResize;
     4979    pThis->IConnector.pfnVBVAMousePointerShape = Display::i_displayVBVAMousePointerShape;
    50374980#endif
    50384981
     
    50695012
    50705013    /* Disable VRAM to a buffer copy initially. */
    5071     Assert(!pDisplay->vbvaLockIsOwner());
    5072     pThis->pUpPort->pfnSetRenderVRAM (pThis->pUpPort, false);
     5014    Assert(!pDisplay->i_vbvaLockIsOwner());
     5015    pThis->pUpPort->pfnSetRenderVRAM(pThis->pUpPort, false);
    50735016    pThis->IConnector.cBits = 32; /* DevVGA does nothing otherwise. */
    50745017
     
    50765019     * Start periodic screen refreshes
    50775020     */
    5078     Assert(!pDisplay->vbvaLockIsOwner());
     5021    Assert(!pDisplay->i_vbvaLockIsOwner());
    50795022    pThis->pUpPort->pfnSetRefreshRate(pThis->pUpPort, 20);
    50805023
    50815024#ifdef VBOX_WITH_CRHGSMI
    5082     pDisplay->setupCrHgsmiData();
     5025    pDisplay->i_setupCrHgsmiData();
    50835026#endif
    50845027
     
    50905033    if (fEnabled)
    50915034    {
    5092         rc = pDisplay->VideoCaptureStart();
     5035        rc = pDisplay->i_VideoCaptureStart();
    50935036        fireVideoCaptureChangedEvent(pDisplay->mParent->i_getEventSource());
    50945037    }
     
    51235066    sizeof(DRVMAINDISPLAY),
    51245067    /* pfnConstruct */
    5125     Display::drvConstruct,
     5068    Display::i_drvConstruct,
    51265069    /* pfnDestruct */
    5127     Display::drvDestruct,
     5070    Display::i_drvDestruct,
    51285071    /* pfnRelocate */
    51295072    NULL,
     
    51495092    PDM_DRVREG_VERSION
    51505093};
     5094
    51515095/* vi: set tabstop=4 shiftwidth=4 expandtab: */
  • trunk/src/VBox/Main/src-client/GuestDnDPrivate.cpp

    r51612 r52064  
    476476        return hr;
    477477
     478    ULONG dummy;
    478479    LONG xShift, yShift;
    479     hr = pDisplay->GetScreenResolution(uScreenId, NULL, NULL, NULL,
     480    hr = pDisplay->GetScreenResolution(uScreenId, &dummy, &dummy, &dummy,
    480481                                       &xShift, &yShift);
    481482    if (FAILED(hr))
  • trunk/src/VBox/Main/src-client/MouseImpl.cpp

    r51612 r52064  
    554554    {
    555555        ULONG displayWidth, displayHeight;
     556        ULONG ulDummy;
     557        LONG lDummy;
    556558        /* Takes the display lock */
    557         HRESULT rc = pDisplay->getScreenResolution(0, &displayWidth,
    558                                                    &displayHeight, NULL, NULL, NULL);
     559        HRESULT rc = pDisplay->i_getScreenResolution(0, &displayWidth,
     560                                                     &displayHeight, &ulDummy, &lDummy, &lDummy);
    559561        if (FAILED(rc))
    560562            return rc;
     
    569571        int32_t x1, y1, x2, y2;
    570572        /* Takes the display lock */
    571         pDisplay->getFramebufferDimensions(&x1, &y1, &x2, &y2);
     573        pDisplay->i_getFramebufferDimensions(&x1, &y1, &x2, &y2);
    572574        *pxAdj = x1 < x2 ?   ((x - x1) * VMMDEV_MOUSE_RANGE + ADJUST_RANGE)
    573575                           / (x2 - x1) : 0;
     
    710712    ULONG cWidth  = 0;
    711713    ULONG cHeight = 0;
     714    ULONG cBPP    = 0;
    712715    LONG  xOrigin = 0;
    713716    LONG  yOrigin = 0;
    714     HRESULT rc = pDisplay->getScreenResolution(uScreenId, &cWidth, &cHeight, NULL, &xOrigin, &yOrigin);
     717    HRESULT rc = pDisplay->i_getScreenResolution(uScreenId, &cWidth, &cHeight, &cBPP, &xOrigin, &yOrigin);
     718    NOREF(cBPP);
    715719    ComAssertComRCRetRC(rc);
    716720
  • trunk/src/VBox/Main/src-client/VMMDevInterface.cpp

    r51642 r52064  
    369369    {
    370370        LogSunlover(("MAIN::VMMDevInterface::iface_VideoAccelEnable: %d, %p\n", fEnable, pVbvaMemory));
    371         return display->VideoAccelEnable(fEnable, pVbvaMemory);
     371        return display->i_VideoAccelEnable(fEnable, pVbvaMemory);
    372372    }
    373373
     
    384384    {
    385385        LogSunlover(("MAIN::VMMDevInterface::iface_VideoAccelFlush\n"));
    386         display->VideoAccelFlush ();
     386        display->i_VideoAccelFlush();
    387387    }
    388388}
     
    451451
    452452    /* Forward to Display, which calls corresponding framebuffers. */
    453     pConsole->i_getDisplay()->handleSetVisibleRegion(cRect, pRect);
     453    pConsole->i_getDisplay()->i_handleSetVisibleRegion(cRect, pRect);
    454454
    455455    return VINF_SUCCESS;
     
    462462
    463463    /* Forward to Display, which calls corresponding framebuffers. */
    464     pConsole->i_getDisplay()->handleQueryVisibleRegion(pcRect, pRect);
     464    pConsole->i_getDisplay()->i_handleQueryVisibleRegion(pcRect, pRect);
    465465
    466466    return VINF_SUCCESS;
  • trunk/src/VBox/Main/src-client/xpcom/module.cpp

    r51613 r52064  
    7070NS_DECL_CLASSINFO(Keyboard)
    7171NS_IMPL_THREADSAFE_ISUPPORTS1_CI(Keyboard, IKeyboard)
    72 NS_DECL_CLASSINFO(Display)
    73 NS_IMPL_THREADSAFE_ISUPPORTS2_CI(Display, IDisplay, IEventListener)
    7472NS_DECL_CLASSINFO(RemoteUSBDevice)
    7573NS_IMPL_THREADSAFE_ISUPPORTS2_CI(RemoteUSBDevice, IHostUSBDevice, IUSBDevice)
  • trunk/src/VBox/Main/testcase/tstMouseImpl.cpp

    r51616 r52064  
    55
    66/*
    7  * Copyright (C) 2011-2013 Oracle Corporation
     7 * Copyright (C) 2011-2014 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    4040class TestDisplay : public DisplayMouseInterface
    4141{
    42     void getFramebufferDimensions(int32_t *px1, int32_t *py1,
    43                                   int32_t *px2, int32_t *py2);
    44     int getScreenResolution(uint32_t cScreen, ULONG *pcx, ULONG *pcy,
    45                             ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin);
     42    virtual HRESULT i_getScreenResolution(ULONG cScreen, ULONG *pcx, ULONG *pcy,
     43                                          ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin);
     44    virtual void i_getFramebufferDimensions(int32_t *px1, int32_t *py1,
     45                                            int32_t *px2, int32_t *py2);
    4646};
    4747
     
    233233}
    234234
    235 void TestDisplay::getFramebufferDimensions(int32_t *px1, int32_t *py1,
    236                                            int32_t *px2, int32_t *py2)
     235void TestDisplay::i_getFramebufferDimensions(int32_t *px1, int32_t *py1,
     236                                             int32_t *px2, int32_t *py2)
    237237{
    238238    if (px1)
     
    246246}
    247247
    248 int TestDisplay::getScreenResolution(uint32_t cScreen, ULONG *pcx,
    249                                      ULONG *pcy, ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin)
     248HRESULT TestDisplay::i_getScreenResolution(ULONG cScreen, ULONG *pcx,
     249                                           ULONG *pcy, ULONG *pcBPP, LONG *pXOrigin, LONG *pYOrigin)
    250250{
    251251    NOREF(cScreen);
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