VirtualBox

Ignore:
Timestamp:
Mar 31, 2010 12:57:09 PM (15 years ago)
Author:
vboxsync
Message:

crOpenGL: more code for multiscreen support

Location:
trunk/src/VBox/GuestHost/OpenGL/include
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/GuestHost/OpenGL/include/chromium.h

    r20635 r27889  
    680680#ifndef GL_CR_real_vendor_strings
    681681#define GL_CR_real_vendor_strings 1
    682 #define GL_REAL_VENDOR   0x8B23
    683 #define GL_REAL_VERSION  0x8B24
    684 #define GL_REAL_RENDERER 0x8B25
     682#define GL_REAL_VENDOR     0x8B23
     683#define GL_REAL_VERSION    0x8B24
     684#define GL_REAL_RENDERER   0x8B25
     685#define GL_REAL_EXTENSIONS 0x8B26
    685686#endif
    686687
  • trunk/src/VBox/GuestHost/OpenGL/include/cr_server.h

    r27708 r27889  
    3131/*@todo must match MaxGuestMonitors from SchemaDefs.h*/
    3232#define CR_MAX_GUEST_MONITORS 8
     33
     34typedef DECLCALLBACKPTR(void, PFNCRSERVERPRESENTFBO) (void *data, int32_t screenId, int32_t x, int32_t y, uint32_t w, uint32_t h);
    3335
    3436typedef struct {
     
    4951 */
    5052typedef struct {
    51     int width, height;
    52     CRrecti imagespace;                /**< the whole mural rectangle */
    53     int curExtent;
    54     int numExtents;                    /**< number of tiles */
    55     CRExtent extents[CR_MAX_EXTENTS];  /**< per-tile info */
    56     int maxTileHeight;                 /**< the tallest tile's height */
    57 
    58     /** optimized, hash-based tile bucketing */
    59     int optimizeBucket;
    60     struct BucketingInfo *bucketInfo;
    61 
    62     unsigned int underlyingDisplay[4]; /**< needed for laying out the extents */
    63 
    64     GLboolean viewportValidated;
    65 
    66     int spuWindow;                     /**< the SPU's corresponding window ID */
     53    GLuint width, height;
     54    GLint gX, gY;            /*guest coordinates*/
     55    GLint hX, hY;            /*host coordinates, screenID related*/
     56   
     57    int spuWindow;           /*the SPU's corresponding window ID */
    6758
    6859    int screenId;
     60
     61    GLboolean bVisible;      /*guest window is visible*/
     62    GLboolean bUseFBO;       /*redirect to FBO instead of real host window*/
     63
     64    GLuint idFBO, idColorTex, idDepthStencilRB;
     65    GLuint fboWidth, fboHeight;
    6966} CRMuralInfo;
    7067
     
    8380    GLint contextList[CR_MAX_CONTEXTS];
    8481} CRClient;
    85 
    8682
    8783typedef struct CRPoly_t {
     
    215211
    216212    GLuint currentSerialNo;
     213
     214    PFNCRSERVERPRESENTFBO pfnPresentFBO;
    217215} CRServer;
    218216
     
    241239
    242240extern DECLEXPORT(int32_t) crVBoxServerSetRootVisibleRegion(GLint cRects, GLint *pRects);
     241
     242extern DECLEXPORT(void) crVBoxServerSetPresentFBOCB(PFNCRSERVERPRESENTFBO pfnPresentFBO);
     243
    243244#ifdef __cplusplus
    244245}
  • trunk/src/VBox/GuestHost/OpenGL/include/state/cr_framebuffer.h

    r23694 r27889  
    9292DECLEXPORT(void) STATE_APIENTRY crStateGenerateMipmapEXT(GLenum target);
    9393
     94DECLEXPORT(GLuint) STATE_APIENTRY crStateFBOHWIDtoID(GLuint hwid);
     95DECLEXPORT(GLuint) STATE_APIENTRY crStateRBOHWIDtoID(GLuint hwid);
     96
    9497#ifdef IN_GUEST
    9598DECLEXPORT(GLenum) STATE_APIENTRY crStateCheckFramebufferStatusEXT(GLenum target);
Note: See TracChangeset for help on using the changeset viewer.

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