MCPcopy Create free account
hub / github.com/3Shain/dxmt / NvAPI_GPU_GetAdapterIdFromPhysicalGpu

Function NvAPI_GPU_GetAdapterIdFromPhysicalGpu

src/nvapi/nvapi.cpp:738–761  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

736}
737
738NVAPI_INTERFACE
739NvAPI_GPU_GetAdapterIdFromPhysicalGpu(NvPhysicalGpuHandle hPhysicalGpu, void *pOSAdapterId) {
740 if (!pOSAdapterId)
741 return NVAPI_INVALID_ARGUMENT;
742
743 auto registry_id = uint64_t(hPhysicalGpu);
744 auto devices = WMT::CopyAllDevices();
745 auto adapter_count = devices.count();
746 if (adapter_count == 0)
747 return NVAPI_INVALID_ARGUMENT;
748
749 WMT::Device target_device{};
750 for (unsigned i = 0; i < adapter_count; i++) {
751 if (registry_id == devices.object(i).registryID()) {
752 target_device = devices.object(i);
753 break;
754 }
755 }
756 if (!target_device)
757 return NVAPI_INVALID_ARGUMENT;
758
759 *reinterpret_cast<LUID *>(pOSAdapterId) = GetAdapterLuid(target_device);
760 return NVAPI_OK;
761}
762
763NVAPI_INTERFACE
764NvAPI_GPU_GetLogicalGpuInfo(NvLogicalGpuHandle hLogicalGpu, NV_LOGICAL_GPU_DATA *pLogicalGpuData) {

Callers

nothing calls this directly

Calls 5

CopyAllDevicesFunction · 0.85
countMethod · 0.80
registryIDMethod · 0.80
objectMethod · 0.80
GetAdapterLuidFunction · 0.70

Tested by

no test coverage detected