Changeset 34525 in vbox
- Timestamp:
- Nov 30, 2010 3:26:54 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/RemoteDesktop/VRDE.h
r33540 r34525 77 77 /** Decode number of bytes per sample. */ 78 78 #define VRDE_AUDIO_FMT_BYTES_PER_SAMPLE(a) ((VRDE_AUDIO_FMT_BITS_PER_SAMPLE(a) + 7) / 8) 79 80 81 /* 82 * Audio input. 83 */ 84 85 /* Audion notifications. */ 86 #define VRDE_AUDIOIN_BEGIN 1 87 #define VRDE_AUDIOIN_DATA 2 88 #define VRDE_AUDIOIN_END 3 89 79 90 80 91 /* … … 567 578 #define VRDE_INTERFACE_VERSION_1 (1) 568 579 #define VRDE_INTERFACE_VERSION_2 (2) 580 #define VRDE_INTERFACE_VERSION_3 (3) 569 581 570 582 /** The header that does not change when the interface changes. */ … … 934 946 } VRDEENTRYPOINTS_2; 935 947 948 /** The VRDE server entry points. Interface version 3. 949 * A new entry point VRDE has been added relative to version 2. 950 */ 951 typedef struct _VRDEENTRYPOINTS_3 952 { 953 /* The header. */ 954 VRDEINTERFACEHDR header; 955 956 /* 957 * Same as version 2. 958 */ 959 960 DECLR3CALLBACKMEMBER(void, VRDEDestroy,(HVRDESERVER hServer)); 961 962 DECLR3CALLBACKMEMBER(int, VRDEEnableConnections,(HVRDESERVER hServer, 963 bool fEnable)); 964 965 DECLR3CALLBACKMEMBER(void, VRDEDisconnect,(HVRDESERVER hServer, 966 uint32_t u32ClientId, 967 bool fReconnect)); 968 969 DECLR3CALLBACKMEMBER(void, VRDEResize,(HVRDESERVER hServer)); 970 971 DECLR3CALLBACKMEMBER(void, VRDEUpdate,(HVRDESERVER hServer, 972 unsigned uScreenId, 973 void *pvUpdate, 974 uint32_t cbUpdate)); 975 976 DECLR3CALLBACKMEMBER(void, VRDEColorPointer,(HVRDESERVER hServer, 977 const VRDECOLORPOINTER *pPointer)); 978 979 DECLR3CALLBACKMEMBER(void, VRDEHidePointer,(HVRDESERVER hServer)); 980 981 DECLR3CALLBACKMEMBER(void, VRDEAudioSamples,(HVRDESERVER hServer, 982 const void *pvSamples, 983 uint32_t cSamples, 984 VRDEAUDIOFORMAT format)); 985 986 DECLR3CALLBACKMEMBER(void, VRDEAudioVolume,(HVRDESERVER hServer, 987 uint16_t u16Left, 988 uint16_t u16Right)); 989 990 DECLR3CALLBACKMEMBER(void, VRDEUSBRequest,(HVRDESERVER hServer, 991 uint32_t u32ClientId, 992 void *pvParm, 993 uint32_t cbParm)); 994 995 DECLR3CALLBACKMEMBER(void, VRDEClipboard,(HVRDESERVER hServer, 996 uint32_t u32Function, 997 uint32_t u32Format, 998 void *pvData, 999 uint32_t cbData, 1000 uint32_t *pcbActualRead)); 1001 1002 DECLR3CALLBACKMEMBER(void, VRDEQueryInfo,(HVRDESERVER hServer, 1003 uint32_t index, 1004 void *pvBuffer, 1005 uint32_t cbBuffer, 1006 uint32_t *pcbOut)); 1007 1008 DECLR3CALLBACKMEMBER(void, VRDERedirect,(HVRDESERVER hServer, 1009 uint32_t u32ClientId, 1010 const char *pszServer, 1011 const char *pszUser, 1012 const char *pszDomain, 1013 const char *pszPassword, 1014 uint32_t u32SessionId, 1015 const char *pszCookie)); 1016 1017 /* 1018 * New for version 3. 1019 */ 1020 1021 /** 1022 * Audio input open request. 1023 * 1024 * @param hServer Handle of VRDE server instance. 1025 * @param u32ClientId An identifier that allows the server to find the corresponding client. 1026 * @param pvCtx To be used in VRDECallbackAudioIn. 1027 * @param audioFormat Requested format of audio data. 1028 * 1029 * @note Initialized to NULL when the VRDECallbackAudioIn callback is NULL. 1030 */ 1031 DECLR3CALLBACKMEMBER(void, VRDEAudioInOpen,(HVRDESERVER hServer, 1032 void *pvCtx, 1033 uint32_t u32ClientId, 1034 VRDEAUDIOFORMAT audioFormat)); 1035 1036 /** 1037 * Audio input close request. 1038 * 1039 * @param hServer Handle of VRDE server instance. 1040 * @param u32ClientId An identifier that allows the server to find the corresponding client. 1041 * 1042 * @note Initialized to NULL when the VRDECallbackAudioIn callback is NULL. 1043 */ 1044 DECLR3CALLBACKMEMBER(void, VRDEAudioInClose,(HVRDESERVER hServer, 1045 uint32_t u32ClientId)); 1046 } VRDEENTRYPOINTS_3; 1047 1048 936 1049 #define VRDE_QP_NETWORK_PORT (1) 937 1050 #define VRDE_QP_NETWORK_ADDRESS (2) … … 1174 1287 /* Callbacks are the same for the version 1 and version 2 interfaces. */ 1175 1288 typedef VRDECALLBACKS_1 VRDECALLBACKS_2; 1289 1290 /** The VRDE server callbacks. Interface version 3. */ 1291 typedef struct _VRDECALLBACKS_3 1292 { 1293 /* The header. */ 1294 VRDEINTERFACEHDR header; 1295 1296 /* 1297 * Same as in version 2. 1298 */ 1299 DECLR3CALLBACKMEMBER(int, VRDECallbackProperty,(void *pvCallback, 1300 uint32_t index, 1301 void *pvBuffer, 1302 uint32_t cbBuffer, 1303 uint32_t *pcbOut)); 1304 1305 DECLR3CALLBACKMEMBER(int, VRDECallbackClientLogon,(void *pvCallback, 1306 uint32_t u32ClientId, 1307 const char *pszUser, 1308 const char *pszPassword, 1309 const char *pszDomain)); 1310 1311 DECLR3CALLBACKMEMBER(void, VRDECallbackClientConnect,(void *pvCallback, 1312 uint32_t u32ClientId)); 1313 1314 DECLR3CALLBACKMEMBER(void, VRDECallbackClientDisconnect,(void *pvCallback, 1315 uint32_t u32ClientId, 1316 uint32_t fu32Intercepted)); 1317 DECLR3CALLBACKMEMBER(int, VRDECallbackIntercept,(void *pvCallback, 1318 uint32_t u32ClientId, 1319 uint32_t fu32Intercept, 1320 void **ppvIntercept)); 1321 1322 DECLR3CALLBACKMEMBER(int, VRDECallbackUSB,(void *pvCallback, 1323 void *pvIntercept, 1324 uint32_t u32ClientId, 1325 uint8_t u8Code, 1326 const void *pvRet, 1327 uint32_t cbRet)); 1328 1329 DECLR3CALLBACKMEMBER(int, VRDECallbackClipboard,(void *pvCallback, 1330 void *pvIntercept, 1331 uint32_t u32ClientId, 1332 uint32_t u32Function, 1333 uint32_t u32Format, 1334 const void *pvData, 1335 uint32_t cbData)); 1336 1337 DECLR3CALLBACKMEMBER(bool, VRDECallbackFramebufferQuery,(void *pvCallback, 1338 unsigned uScreenId, 1339 VRDEFRAMEBUFFERINFO *pInfo)); 1340 1341 DECLR3CALLBACKMEMBER(void, VRDECallbackFramebufferLock,(void *pvCallback, 1342 unsigned uScreenId)); 1343 1344 DECLR3CALLBACKMEMBER(void, VRDECallbackFramebufferUnlock,(void *pvCallback, 1345 unsigned uScreenId)); 1346 1347 DECLR3CALLBACKMEMBER(void, VRDECallbackInput,(void *pvCallback, 1348 int type, 1349 const void *pvInput, 1350 unsigned cbInput)); 1351 1352 DECLR3CALLBACKMEMBER(void, VRDECallbackVideoModeHint,(void *pvCallback, 1353 unsigned cWidth, 1354 unsigned cHeight, 1355 unsigned cBitsPerPixel, 1356 unsigned uScreenId)); 1357 1358 /* 1359 * New for version 3. 1360 */ 1361 1362 /** 1363 * Called by the server when something happens with audio input. 1364 * 1365 * @param pvCallback The callback specific pointer. 1366 * @param pvCtx The value passed in VRDEAudioInOpen. 1367 * @param u32ClientId Identifies the client that sent the reply. 1368 * @param u32Event The event code VRDE_AUDIOIN_*. 1369 * @param pvData Points to data received from the client. 1370 * @param cbData Size of the data in bytes. 1371 */ 1372 DECLR3CALLBACKMEMBER(void, VRDECallbackAudioIn,(void *pvCallback, 1373 void *pvCtx, 1374 uint32_t u32ClientId, 1375 uint32_t u32Event, 1376 const void *pvData, 1377 uint32_t cbData)); 1378 } VRDECALLBACKS_3; 1176 1379 1177 1380 /**
Note:
See TracChangeset
for help on using the changeset viewer.