Changeset 36843 in vbox for trunk/src/VBox/GuestHost/OpenGL/include/cr_server.h
- Timestamp:
- Apr 26, 2011 8:33:19 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/GuestHost/OpenGL/include/cr_server.h
r36052 r36843 35 35 36 36 typedef DECLCALLBACKPTR(void, PFNCRSERVERPRESENTFBO) (void *data, int32_t screenId, int32_t x, int32_t y, uint32_t w, uint32_t h); 37 38 /* Callbacks for output of the rendered frames. 39 * 40 * This allows to pass rendered frames to an external component rather than draw them on screen. 41 * 42 * An external component registers the redirection callbacks using crVBoxServerOutputRedirectSet. 43 * 44 * The list of formats supported by the caller is obtained using CRORContextProperty. 45 * The actual format choosed by the service is passed as a CRORBegin parameter. 46 */ 47 typedef struct { 48 const void *pvContext; /* Supplied by crVBoxServerOutputRedirectSet. */ 49 DECLR3CALLBACKMEMBER(void, CRORBegin, (const void *pvContext, void **ppvInstance, 50 const char *pszFormat)); 51 DECLR3CALLBACKMEMBER(void, CRORGeometry, (void *pvInstance, 52 int32_t x, int32_t y, uint32_t w, uint32_t h)); 53 DECLR3CALLBACKMEMBER(void, CRORVisibleRegion, (void *pvInstance, 54 uint32_t cRects, RTRECT *paRects)); 55 DECLR3CALLBACKMEMBER(void, CRORFrame, (void *pvInstance, 56 void *pvData, uint32_t cbData)); 57 DECLR3CALLBACKMEMBER(void, CROREnd, (void *pvInstance)); 58 DECLR3CALLBACKMEMBER(int, CRORContextProperty, (const void *pvContext, uint32_t index, 59 void *pvBuffer, uint32_t cbBuffer, uint32_t *pcbOut)); 60 } CROutputRedirect; 37 61 38 62 typedef struct { … … 71 95 GLuint fboWidth, fboHeight; 72 96 GLuint idPBO; 97 98 void *pvOutputRedirectInstance; 73 99 } CRMuralInfo; 74 100 … … 233 259 *using callback above to update vbox framebuffers*/ 234 260 GLboolean bUsePBOForReadback; /*Use PBO's for data readback*/ 261 262 GLboolean bUseOutputRedirect; /* Whether the output redirect was set. */ 263 CROutputRedirect outputRedirect; 235 264 } CRServer; 236 265 … … 265 294 extern DECLEXPORT(int32_t) crVBoxServerSetOffscreenRendering(GLboolean value); 266 295 296 extern DECLEXPORT(int32_t) crVBoxServerOutputRedirectSet(const CROutputRedirect *pCallbacks); 297 267 298 #ifdef __cplusplus 268 299 }
Note:
See TracChangeset
for help on using the changeset viewer.