Lines Matching defs:u32Target

60 int VBoxVModesAdd(VBOX_VMODES *pModes, uint32_t u32Target, uint64_t u64)
62 if (u32Target >= pModes->cTargets)
68 return CrSaAdd(&pModes->aTargets[u32Target], u64);
71 int VBoxVModesRemove(VBOX_VMODES *pModes, uint32_t u32Target, uint64_t u64)
73 if (u32Target >= pModes->cTargets)
79 return CrSaRemove(&pModes->aTargets[u32Target], u64);
124 int vboxWddmVModesRemove(PVBOXMP_DEVEXT pExt, VBOXWDDM_VMODES *pModes, uint32_t u32Target, const RTRECTSIZE *pResolution)
132 if (u32Target >= pModes->Modes.cTargets)
138 if (CR_RSIZE2U64(*pResolution) == pModes->aTransientResolutions[u32Target])
139 pModes->aTransientResolutions[u32Target] = 0;
141 if (vboxVModesRMatch(pResolution, &pExt->aTargets[u32Target].Size))
143 if (CR_RSIZE2U64(*pResolution) == pModes->aPendingRemoveCurResolutions[u32Target])
146 if (pModes->aPendingRemoveCurResolutions[u32Target])
148 VBoxVModesRemove(&pModes->Modes, u32Target, pModes->aPendingRemoveCurResolutions[u32Target]);
149 pModes->aPendingRemoveCurResolutions[u32Target] = 0;
152 pModes->aPendingRemoveCurResolutions[u32Target] = CR_RSIZE2U64(*pResolution);
155 else if (CR_RSIZE2U64(*pResolution) == pModes->aPendingRemoveCurResolutions[u32Target])
156 pModes->aPendingRemoveCurResolutions[u32Target] = 0;
158 int rc = VBoxVModesRemove(&pModes->Modes, u32Target, CR_RSIZE2U64(*pResolution));
171 static void vboxWddmVModesSaveTransient(PVBOXMP_DEVEXT pExt, uint32_t u32Target, const RTRECTSIZE *pResolution)
179 if (u32Target==0)
192 swprintf(keyname, L"CustomXRes%d", u32Target);
195 swprintf(keyname, L"CustomYRes%d", u32Target);
198 swprintf(keyname, L"CustomBPP%d", u32Target);
207 int vboxWddmVModesAdd(PVBOXMP_DEVEXT pExt, VBOXWDDM_VMODES *pModes, uint32_t u32Target, const RTRECTSIZE *pResolution, BOOLEAN fTransient)
215 if (u32Target >= pModes->Modes.cTargets)
243 if (!VBoxLikesVideoMode(u32Target, pResolution->cx, pResolution->cy, 32))
246 if (pModes->aTransientResolutions[u32Target] == CR_RSIZE2U64(*pResolution))
249 pModes->aTransientResolutions[u32Target] = 0;
255 if (pModes->aPendingRemoveCurResolutions[u32Target] == CR_RSIZE2U64(*pResolution))
258 pModes->aPendingRemoveCurResolutions[u32Target] = 0;
264 rc = VBoxVModesAdd(&pModes->Modes, u32Target, CR_RSIZE2U64(*pResolution));
277 if (pModes->aTransientResolutions[u32Target])
280 RTRECTSIZE size = CR_U642RSIZE(pModes->aTransientResolutions[u32Target]);
281 int tmpRc = vboxWddmVModesRemove(pExt, pModes, u32Target, &size);
288 Assert(!pModes->aTransientResolutions[u32Target]);
290 pModes->aTransientResolutions[u32Target] = CR_RSIZE2U64(*pResolution);
291 vboxWddmVModesSaveTransient(pExt, u32Target, pResolution);
297 int voxWddmVModesInitForTarget(PVBOXMP_DEVEXT pExt, VBOXWDDM_VMODES *pModes, uint32_t u32Target)
301 vboxWddmVModesAdd(pExt, pModes, u32Target, &g_VBoxBuiltinResolutions[i], FALSE);
304 if (pExt->aTargets[u32Target].Size.cx)
306 vboxWddmVModesAdd(pExt, pModes, u32Target, &pExt->aTargets[u32Target].Size, TRUE);
325 if (u32Target == 0)
336 swprintf(keyname, L"CustomXRes%d", u32Target);
339 swprintf(keyname, L"CustomYRes%d", u32Target);
344 LOG(("got stored custom resolution[%d] %dx%dx", u32Target, CustomXRes, CustomYRes));
349 CustomXRes = pExt->aTargets[u32Target].Size.cx ? pExt->aTargets[u32Target].Size.cx : 800;
351 CustomYRes = pExt->aTargets[u32Target].Size.cy ? pExt->aTargets[u32Target].Size.cy : 600;
354 vboxWddmVModesAdd(pExt, pModes, u32Target, &Resolution, TRUE);
382 vboxWddmVModesAdd(pExt, pModes, u32Target, &Resolution, FALSE);
420 const CR_SORTARRAY* VBoxWddmVModesGet(PVBOXMP_DEVEXT pExt, uint32_t u32Target)
422 if (u32Target >= (uint32_t)VBoxCommonFromDeviceExt(pExt)->cDisplays)
428 return &g_VBoxWddmVModes.Modes.aTargets[u32Target];
431 int VBoxWddmVModesRemove(PVBOXMP_DEVEXT pExt, uint32_t u32Target, const RTRECTSIZE *pResolution)
433 return vboxWddmVModesRemove(pExt, &g_VBoxWddmVModes, u32Target, pResolution);
436 int VBoxWddmVModesAdd(PVBOXMP_DEVEXT pExt, uint32_t u32Target, const RTRECTSIZE *pResolution, BOOLEAN fTrancient)
438 return vboxWddmVModesAdd(pExt, &g_VBoxWddmVModes, u32Target, pResolution, fTrancient);