Added trace logging to ADLWrapper

This commit is contained in:
Terry MacDonald
2021-06-19 19:31:25 +12:00
parent 76c94c76ae
commit a01d5defaa

View File

@ -54,7 +54,7 @@ namespace DisplayMagicianShared.AMD
} }
catch (Exception ex) catch (Exception ex)
{ {
SharedLogger.logger.Error("ADLWrapper/ADLWrapper: Exception intialising ADL library. ADL_Main_Control_Create() caused an exception"); SharedLogger.logger.Error(ex, "ADLWrapper/ADLWrapper: Exception intialising ADL library. ADL_Main_Control_Create() caused an exception");
} }
try try
@ -77,7 +77,7 @@ namespace DisplayMagicianShared.AMD
} }
catch (Exception ex) catch (Exception ex)
{ {
SharedLogger.logger.Error("ADLWrapper/ADLWrapper: Exception intialising ADL2 library. ADL2_Main_Control_Create() caused an exception"); SharedLogger.logger.Error(ex, "ADLWrapper/ADLWrapper: Exception intialising ADL2 library. ADL2_Main_Control_Create() caused an exception");
} }
} }
@ -215,24 +215,24 @@ namespace DisplayMagicianShared.AMD
SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} is active! ({oneAdapter.AdapterName})."); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} is active! ({oneAdapter.AdapterName}).");
Console.WriteLine($"### Adapter Info for Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Adapter Info for Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Adapter AdapterIndex = {oneAdapter.AdapterIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter AdapterIndex = {oneAdapter.AdapterIndex}");
Console.WriteLine($"Adapter AdapterName = {oneAdapter.AdapterName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter AdapterName = {oneAdapter.AdapterName}");
Console.WriteLine($"Adapter BusNumber = {oneAdapter.BusNumber}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter BusNumber = {oneAdapter.BusNumber}");
Console.WriteLine($"Adapter DeviceNumber = {oneAdapter.DeviceNumber}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DeviceNumber = {oneAdapter.DeviceNumber}");
Console.WriteLine($"Adapter DisplayName = {oneAdapter.DisplayName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DisplayName = {oneAdapter.DisplayName}");
Console.WriteLine($"Adapter DriverPath = {oneAdapter.DriverPath}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DriverPath = {oneAdapter.DriverPath}");
Console.WriteLine($"Adapter DriverPathExt = {oneAdapter.DriverPathExt}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DriverPathExt = {oneAdapter.DriverPathExt}");
Console.WriteLine($"Adapter Exist = {oneAdapter.Exist}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Exist = {oneAdapter.Exist}");
Console.WriteLine($"Adapter FunctionNumber = {oneAdapter.FunctionNumber}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter FunctionNumber = {oneAdapter.FunctionNumber}");
Console.WriteLine($"Adapter InfoMask = {oneAdapter.InfoMask}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter InfoMask = {oneAdapter.InfoMask}");
Console.WriteLine($"Adapter InfoValue = {oneAdapter.InfoValue}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter InfoValue = {oneAdapter.InfoValue}");
Console.WriteLine($"Adapter OSDisplayIndex = {oneAdapter.OSDisplayIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter OSDisplayIndex = {oneAdapter.OSDisplayIndex}");
Console.WriteLine($"Adapter PNPString = {oneAdapter.PNPString}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter PNPString = {oneAdapter.PNPString}");
Console.WriteLine($"Adapter Present = {oneAdapter.Present}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Present = {oneAdapter.Present}");
Console.WriteLine($"Adapter Size = {oneAdapter.Size}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Size = {oneAdapter.Size}");
Console.WriteLine($"Adapter UDID = {oneAdapter.UDID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter UDID = {oneAdapter.UDID}");
Console.WriteLine($"Adapter VendorID = {oneAdapter.VendorID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter VendorID = {oneAdapter.VendorID}");
// Get the Adapter Capabilities // Get the Adapter Capabilities
ADLAdapterCapsX2 AdapterCapabilities = new ADLAdapterCapsX2(); ADLAdapterCapsX2 AdapterCapabilities = new ADLAdapterCapsX2();
@ -241,16 +241,15 @@ namespace DisplayMagicianShared.AMD
ADLRet = ADL.ADL2_AdapterX2_Caps(_adlContextHandle, oneAdapter.AdapterIndex, out AdapterCapabilities); ADLRet = ADL.ADL2_AdapterX2_Caps(_adlContextHandle, oneAdapter.AdapterIndex, out AdapterCapabilities);
} }
//ADLAdapterCapsX2 AdapterCapabilities = (ADLAdapterCapsX2)Marshal.PtrToStructure(AdapterCapabilitiesBuffer, typeof(ADLAdapterCapsX2)); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Adapter Capabilities for Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"### Adapter Capabilities for Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter ID = {AdapterCapabilities.AdapterID}");
Console.WriteLine($"Adapter ID = {AdapterCapabilities.AdapterID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Capabilities Mask = {AdapterCapabilities.CapsMask}");
Console.WriteLine($"Adapter Capabilities Mask = {AdapterCapabilities.CapsMask}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Capabilities Value = {AdapterCapabilities.CapsValue}");
Console.WriteLine($"Adapter Capabilities Value = {AdapterCapabilities.CapsValue}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Connectors = {AdapterCapabilities.NumConnectors}");
Console.WriteLine($"Adapter Num of Connectors = {AdapterCapabilities.NumConnectors}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Controllers = {AdapterCapabilities.NumControllers}");
Console.WriteLine($"Adapter Num of Controllers = {AdapterCapabilities.NumControllers}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Displays = {AdapterCapabilities.NumDisplays}");
Console.WriteLine($"Adapter Num of Displays = {AdapterCapabilities.NumDisplays}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of GL Sync Connectors = {AdapterCapabilities.NumOfGLSyncConnectors}");
Console.WriteLine($"Adapter Num of GL Sync Connectors = {AdapterCapabilities.NumOfGLSyncConnectors}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Overlays = {AdapterCapabilities.NumOverlays}");
Console.WriteLine($"Adapter Num of Overlays = {AdapterCapabilities.NumOverlays}");
// Obtain information about displays // Obtain information about displays
ADLDisplayInfoArray displayInfoArray = new ADLDisplayInfoArray(); ADLDisplayInfoArray displayInfoArray = new ADLDisplayInfoArray();
@ -293,38 +292,40 @@ namespace DisplayMagicianShared.AMD
continue; continue;
} }
SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} ({oneAdapter.AdapterName}) AdapterID display ID#{oneDisplayInfo.DisplayID.DisplayLogicalIndex} is connected and mapped in Windows OS");
ADL.ADLDisplayConnectionType displayConnector = (ADL.ADLDisplayConnectionType)oneDisplayInfo.DisplayConnector; ADL.ADLDisplayConnectionType displayConnector = (ADL.ADLDisplayConnectionType)oneDisplayInfo.DisplayConnector;
Console.WriteLine($"### Display Info for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display Info for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display Connector = {displayConnector.ToString("G")}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Connector = {displayConnector.ToString("G")}");
Console.WriteLine($"Display Controller Index = {oneDisplayInfo.DisplayControllerIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Controller Index = {oneDisplayInfo.DisplayControllerIndex}");
Console.WriteLine($"Display Logical Adapter Index = {oneDisplayInfo.DisplayID.DisplayLogicalAdapterIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Logical Adapter Index = {oneDisplayInfo.DisplayID.DisplayLogicalAdapterIndex}");
Console.WriteLine($"Display Logical Index = {oneDisplayInfo.DisplayID.DisplayLogicalIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Logical Index = {oneDisplayInfo.DisplayID.DisplayLogicalIndex}");
Console.WriteLine($"Display Physical Adapter Index = {oneDisplayInfo.DisplayID.DisplayPhysicalAdapterIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Physical Adapter Index = {oneDisplayInfo.DisplayID.DisplayPhysicalAdapterIndex}");
Console.WriteLine($"Display Physical Index = {oneDisplayInfo.DisplayID.DisplayPhysicalIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Physical Index = {oneDisplayInfo.DisplayID.DisplayPhysicalIndex}");
Console.WriteLine($"Display Info Mask = {oneDisplayInfo.DisplayInfoMask}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Mask = {oneDisplayInfo.DisplayInfoMask}");
Console.WriteLine($"Display Info Value = {oneDisplayInfo.DisplayInfoValue}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value = {oneDisplayInfo.DisplayInfoValue}");
Console.WriteLine($"Display Manufacturer Name = {oneDisplayInfo.DisplayManufacturerName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Manufacturer Name = {oneDisplayInfo.DisplayManufacturerName}");
Console.WriteLine($"Display Name = {oneDisplayInfo.DisplayName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Name = {oneDisplayInfo.DisplayName}");
Console.WriteLine($"Display Output Type = {oneDisplayInfo.DisplayOutputType}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Output Type = {oneDisplayInfo.DisplayOutputType}");
Console.WriteLine($"Display Type = {oneDisplayInfo.DisplayType}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Type = {oneDisplayInfo.DisplayType}");
Console.WriteLine($"Display Info Value DISPLAYCONNECTED = {displayInfoValue.DISPLAYCONNECTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value DISPLAYCONNECTED = {displayInfoValue.DISPLAYCONNECTED}");
Console.WriteLine($"Display Info Value DISPLAYMAPPED = {displayInfoValue.DISPLAYMAPPED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value DISPLAYMAPPED = {displayInfoValue.DISPLAYMAPPED}");
Console.WriteLine($"Display Info Value FORCIBLESUPPORTED = {displayInfoValue.FORCIBLESUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value FORCIBLESUPPORTED = {displayInfoValue.FORCIBLESUPPORTED}");
Console.WriteLine($"Display Info Value GENLOCKSUPPORTED = {displayInfoValue.GENLOCKSUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value GENLOCKSUPPORTED = {displayInfoValue.GENLOCKSUPPORTED}");
Console.WriteLine($"Display Info Value LDA_DISPLAY = {displayInfoValue.LDA_DISPLAY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value LDA_DISPLAY = {displayInfoValue.LDA_DISPLAY}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_2HSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2HSTRETCH}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_2HSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2HSTRETCH}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_2VSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2VSTRETCH}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_2VSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2VSTRETCH}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_CLONE = {displayInfoValue.MANNER_SUPPORTED_CLONE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_CLONE = {displayInfoValue.MANNER_SUPPORTED_CLONE}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_EXTENDED = {displayInfoValue.MANNER_SUPPORTED_EXTENDED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_EXTENDED = {displayInfoValue.MANNER_SUPPORTED_EXTENDED}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_NSTRETCH1GPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCH1GPU}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_NSTRETCH1GPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCH1GPU}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_NSTRETCHNGPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCHNGPU}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_NSTRETCHNGPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCHNGPU}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_SINGLE = {displayInfoValue.MANNER_SUPPORTED_SINGLE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_SINGLE = {displayInfoValue.MANNER_SUPPORTED_SINGLE}");
Console.WriteLine($"Display Info Value MODETIMING_OVERRIDESSUPPORTED = {displayInfoValue.MODETIMING_OVERRIDESSUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MODETIMING_OVERRIDESSUPPORTED = {displayInfoValue.MODETIMING_OVERRIDESSUPPORTED}");
Console.WriteLine($"Display Info Value MULTIVPU_SUPPORTED = {displayInfoValue.MULTIVPU_SUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MULTIVPU_SUPPORTED = {displayInfoValue.MULTIVPU_SUPPORTED}");
Console.WriteLine($"Display Info Value NONLOCAL = {displayInfoValue.NONLOCAL}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value NONLOCAL = {displayInfoValue.NONLOCAL}");
Console.WriteLine($"Display Info Value SHOWTYPE_PROJECTOR = {displayInfoValue.SHOWTYPE_PROJECTOR}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value SHOWTYPE_PROJECTOR = {displayInfoValue.SHOWTYPE_PROJECTOR}");
ADL.ADLDisplayConnectionType displayConnectionType = ADL.ADLDisplayConnectionType.Unknown; ADL.ADLDisplayConnectionType displayConnectionType = ADL.ADLDisplayConnectionType.Unknown;
ADLDisplayConfig displayConfig = new ADLDisplayConfig(); ADLDisplayConfig displayConfig = new ADLDisplayConfig();
@ -337,12 +338,16 @@ namespace DisplayMagicianShared.AMD
{ {
displayConnectionType = (ADL.ADLDisplayConnectionType)displayConfig.ConnectorType; displayConnectionType = (ADL.ADLDisplayConnectionType)displayConfig.ConnectorType;
Console.WriteLine($"### Display Device Config for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display Device Config for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display Connector Type = {displayConnectionType.ToString("G")}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Connector Type = {displayConnectionType.ToString("G")}");
Console.WriteLine($"Display Device Data = {displayConfig.DeviceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Device Data = {displayConfig.DeviceData}");
Console.WriteLine($"Display Overridded Device Data = {displayConfig.OverriddedDeviceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Overridded Device Data = {displayConfig.OverriddedDeviceData}");
Console.WriteLine($"Display Reserved Data = {displayConfig.Reserved}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Reserved Data = {displayConfig.Reserved}");
Console.WriteLine($"Display Size = {displayConfig.Size}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Size = {displayConfig.Size}");
}
else
{
SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_DeviceConfig_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
@ -353,7 +358,7 @@ namespace DisplayMagicianShared.AMD
if (ADL.ADL2_Display_DDCInfo2_Get != null) if (ADL.ADL2_Display_DDCInfo2_Get != null)
{ {
// Get the EDID Data from the Display // Get the DDC Data from the Display
ADLRet = ADL.ADL2_Display_DDCInfo2_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID.DisplayPhysicalIndex, out displayDDCInfo2); ADLRet = ADL.ADL2_Display_DDCInfo2_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID.DisplayPhysicalIndex, out displayDDCInfo2);
if (ADLRet == ADL.ADL_OK) if (ADLRet == ADL.ADL_OK)
{ {
@ -364,58 +369,58 @@ namespace DisplayMagicianShared.AMD
// Convert the DDCInfoFlag to something usable using a library function I made // Convert the DDCInfoFlag to something usable using a library function I made
ConvertedSupportedHDR supportedHDR = ADL.ConvertSupportedHDR(displayDDCInfo2.SupportedHDR); ConvertedSupportedHDR supportedHDR = ADL.ConvertSupportedHDR(displayDDCInfo2.SupportedHDR);
Console.WriteLine($"### Display DDCInfo2 for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display DDCInfo2 for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display AvgLuminanceData = {displayDDCInfo2.AvgLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display AvgLuminanceData = {displayDDCInfo2.AvgLuminanceData}");
Console.WriteLine($"Display DDCInfoFlag = {displayDDCInfo2.DDCInfoFlag}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag = {displayDDCInfo2.DDCInfoFlag}");
Console.WriteLine($"Display DiffuseScreenReflectance = {displayDDCInfo2.DiffuseScreenReflectance}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DiffuseScreenReflectance = {displayDDCInfo2.DiffuseScreenReflectance}");
Console.WriteLine($"Display DisplayName = {displayDDCInfo2.DisplayName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DisplayName = {displayDDCInfo2.DisplayName}");
Console.WriteLine($"Display FreesyncFlags = {displayDDCInfo2.FreesyncFlags}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display FreesyncFlags = {displayDDCInfo2.FreesyncFlags}");
Console.WriteLine($"Display ManufacturerID = {displayDDCInfo2.ManufacturerID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display ManufacturerID = {displayDDCInfo2.ManufacturerID}");
Console.WriteLine($"Display MaxBacklightMaxLuminanceData = {displayDDCInfo2.MaxBacklightMaxLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxBacklightMaxLuminanceData = {displayDDCInfo2.MaxBacklightMaxLuminanceData}");
Console.WriteLine($"Display MaxBacklightMinLuminanceData = {displayDDCInfo2.MaxBacklightMinLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxBacklightMinLuminanceData = {displayDDCInfo2.MaxBacklightMinLuminanceData}");
Console.WriteLine($"Display MaxHResolution = {displayDDCInfo2.MaxHResolution}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxHResolution = {displayDDCInfo2.MaxHResolution}");
Console.WriteLine($"Display MaxLuminanceData = {displayDDCInfo2.MaxLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxLuminanceData = {displayDDCInfo2.MaxLuminanceData}");
Console.WriteLine($"Display MaxRefresh = {displayDDCInfo2.MaxRefresh}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxRefresh = {displayDDCInfo2.MaxRefresh}");
Console.WriteLine($"Display MaxVResolution = {displayDDCInfo2.MaxVResolution}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxVResolution = {displayDDCInfo2.MaxVResolution}");
Console.WriteLine($"Display MinBacklightMaxLuminanceData = {displayDDCInfo2.MinBacklightMaxLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinBacklightMaxLuminanceData = {displayDDCInfo2.MinBacklightMaxLuminanceData}");
Console.WriteLine($"Display MinBacklightMinLuminanceData = {displayDDCInfo2.MinBacklightMinLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinBacklightMinLuminanceData = {displayDDCInfo2.MinBacklightMinLuminanceData}");
Console.WriteLine($"Display MinLuminanceData = {displayDDCInfo2.MinLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinLuminanceData = {displayDDCInfo2.MinLuminanceData}");
Console.WriteLine($"Display MinLuminanceNoDimmingData = {displayDDCInfo2.MinLuminanceNoDimmingData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinLuminanceNoDimmingData = {displayDDCInfo2.MinLuminanceNoDimmingData}");
Console.WriteLine($"Display NativeDisplayChromaticityBlueX = {displayDDCInfo2.NativeDisplayChromaticityBlueX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityBlueX = {displayDDCInfo2.NativeDisplayChromaticityBlueX}");
Console.WriteLine($"Display NativeDisplayChromaticityBlueY = {displayDDCInfo2.NativeDisplayChromaticityBlueY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityBlueY = {displayDDCInfo2.NativeDisplayChromaticityBlueY}");
Console.WriteLine($"Display NativeDisplayChromaticityGreenX = {displayDDCInfo2.NativeDisplayChromaticityGreenX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityGreenX = {displayDDCInfo2.NativeDisplayChromaticityGreenX}");
Console.WriteLine($"Display NativeDisplayChromaticityGreenY = {displayDDCInfo2.NativeDisplayChromaticityGreenY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityGreenY = {displayDDCInfo2.NativeDisplayChromaticityGreenY}");
Console.WriteLine($"Display NativeDisplayChromaticityRedX = {displayDDCInfo2.NativeDisplayChromaticityRedX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityRedX = {displayDDCInfo2.NativeDisplayChromaticityRedX}");
Console.WriteLine($"Display NativeDisplayChromaticityRedY = {displayDDCInfo2.NativeDisplayChromaticityRedY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityRedY = {displayDDCInfo2.NativeDisplayChromaticityRedY}");
Console.WriteLine($"Display NativeDisplayChromaticityWhiteX = {displayDDCInfo2.NativeDisplayChromaticityWhiteX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityWhiteX = {displayDDCInfo2.NativeDisplayChromaticityWhiteX}");
Console.WriteLine($"Display NativeDisplayChromaticityWhiteY = {displayDDCInfo2.NativeDisplayChromaticityWhiteY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityWhiteY = {displayDDCInfo2.NativeDisplayChromaticityWhiteY}");
Console.WriteLine($"Display PackedPixelSupported = {displayDDCInfo2.PackedPixelSupported}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PackedPixelSupported = {displayDDCInfo2.PackedPixelSupported}");
Console.WriteLine($"Display PanelPixelFormat = {displayDDCInfo2.PanelPixelFormat}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PanelPixelFormat = {displayDDCInfo2.PanelPixelFormat}");
Console.WriteLine($"Display ProductID = {displayDDCInfo2.ProductID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display ProductID = {displayDDCInfo2.ProductID}");
Console.WriteLine($"Display PTMCx = {displayDDCInfo2.PTMCx}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PTMCx = {displayDDCInfo2.PTMCx}");
Console.WriteLine($"Display PTMCy = {displayDDCInfo2.PTMCy}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PTMCy = {displayDDCInfo2.PTMCy}");
Console.WriteLine($"Display PTMRefreshRate = {displayDDCInfo2.PTMRefreshRate}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PTMRefreshRate = {displayDDCInfo2.PTMRefreshRate}");
Console.WriteLine($"Display SerialID = {displayDDCInfo2.SerialID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SerialID = {displayDDCInfo2.SerialID}");
Console.WriteLine($"Display Size = {displayDDCInfo2.Size}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Size = {displayDDCInfo2.Size}");
Console.WriteLine($"Display SpecularScreenReflectance = {displayDDCInfo2.SpecularScreenReflectance}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SpecularScreenReflectance = {displayDDCInfo2.SpecularScreenReflectance}");
Console.WriteLine($"Display SupportedColorSpace = {displayDDCInfo2.SupportedColorSpace}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedColorSpace = {displayDDCInfo2.SupportedColorSpace}");
Console.WriteLine($"Display SupportedHDR = {displayDDCInfo2.SupportedHDR}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR = {displayDDCInfo2.SupportedHDR}");
Console.WriteLine($"Display SupportedTransferFunction = {displayDDCInfo2.SupportedTransferFunction}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedTransferFunction = {displayDDCInfo2.SupportedTransferFunction}");
Console.WriteLine($"Display SupportsDDC = {displayDDCInfo2.SupportsDDC}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportsDDC = {displayDDCInfo2.SupportsDDC}");
Console.WriteLine($"Display DDCInfoFlag Digital Device = {DDCInfoFlag.DIGITALDEVICE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Digital Device = {DDCInfoFlag.DIGITALDEVICE}");
Console.WriteLine($"Display DDCInfoFlag EDID Extension = {DDCInfoFlag.EDIDEXTENSION}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag EDID Extension = {DDCInfoFlag.EDIDEXTENSION}");
Console.WriteLine($"Display DDCInfoFlag HDMI Audio Device = {DDCInfoFlag.HDMIAUDIODEVICE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag HDMI Audio Device = {DDCInfoFlag.HDMIAUDIODEVICE}");
Console.WriteLine($"Display DDCInfoFlag Projector Device = {DDCInfoFlag.PROJECTORDEVICE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Projector Device = {DDCInfoFlag.PROJECTORDEVICE}");
Console.WriteLine($"Display DDCInfoFlag Supports AI = {DDCInfoFlag.SUPPORTS_AI}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Supports AI = {DDCInfoFlag.SUPPORTS_AI}");
Console.WriteLine($"Display DDCInfoFlag Supports xvYCC601 = {DDCInfoFlag.SUPPORT_xvYCC601}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Supports xvYCC601 = {DDCInfoFlag.SUPPORT_xvYCC601}");
Console.WriteLine($"Display DDCInfoFlag Supports xvYCC709 = {DDCInfoFlag.SUPPORT_xvYCC709}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Supports xvYCC709 = {DDCInfoFlag.SUPPORT_xvYCC709}");
Console.WriteLine($"Display SupportedHDR Supports CEA861_3 = {supportedHDR.CEA861_3}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR Supports CEA861_3 = {supportedHDR.CEA861_3}");
Console.WriteLine($"Display SupportedHDR Supports DOLBYVISION = {supportedHDR.DOLBYVISION}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR Supports DOLBYVISION = {supportedHDR.DOLBYVISION}");
Console.WriteLine($"Display SupportedHDR Supports FREESYNC_HDR = {supportedHDR.FREESYNC_HDR}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR Supports FREESYNC_HDR = {supportedHDR.FREESYNC_HDR}");
} }
else else
{ {
Console.WriteLine($"Error running ADL_vDisplay_EdidData_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}"); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_DDCInfo2_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
@ -427,9 +432,13 @@ namespace DisplayMagicianShared.AMD
ADLRet = ADL.ADL2_Display_HDRState_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID, out HDRSupported, out HDREnabled); ADLRet = ADL.ADL2_Display_HDRState_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID, out HDRSupported, out HDREnabled);
if (ADLRet == ADL.ADL_OK) if (ADLRet == ADL.ADL_OK)
{ {
Console.WriteLine($"### Display HDR State for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display HDR State for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display HDR Supported = {HDRSupported}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display HDR Supported = {HDRSupported}");
Console.WriteLine($"Display HDR Enabled = {HDREnabled}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display HDR Enabled = {HDREnabled}");
}
else
{
SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_HDRState_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
@ -542,19 +551,18 @@ namespace DisplayMagicianShared.AMD
// Add it to the list of display identifiers so we can return it // Add it to the list of display identifiers so we can return it
displayIdentifiers.Add(displayIdentifier); displayIdentifiers.Add(displayIdentifier);
Console.WriteLine($"ProfileRepository/GenerateProfileDisplayIdentifiers: DisplayIdentifier: {displayIdentifier}");
SharedLogger.logger.Debug($"ProfileRepository/GenerateProfileDisplayIdentifiers: DisplayIdentifier: {displayIdentifier}"); SharedLogger.logger.Debug($"ProfileRepository/GenerateProfileDisplayIdentifiers: DisplayIdentifier: {displayIdentifier}");
} }
} }
catch (Exception ex) catch (Exception ex)
{ {
Console.WriteLine("Exception caused trying to access attached displays"); SharedLogger.logger.Warn(ex, $"ProfileRepository/GenerateProfileDisplayIdentifiers: Exception caused trying to access attached displays");
continue; continue;
} }
} }
else else
{ {
Console.WriteLine("ADL_Display_DisplayInfo_Get() returned error code " + ADLRet.ToString()); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_DisplayInfo_Get on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
// Release the memory for the DisplayInfo structure // Release the memory for the DisplayInfo structure
if (IntPtr.Zero != DisplayBuffer) if (IntPtr.Zero != DisplayBuffer)
@ -563,13 +571,13 @@ namespace DisplayMagicianShared.AMD
} }
else else
{ {
Console.WriteLine("ADL_Adapter_Active_Get() returned error code " + ADLRet.ToString()); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Adapter_Active_Get on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
} }
else else
{ {
Console.WriteLine("ADL_Adapter_AdapterInfo_Get() returned error code " + ADLRet.ToString()); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Adapter_AdapterInfoX4_Get on AMD Video card: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
// Release the memory for the AdapterInfo structure // Release the memory for the AdapterInfo structure
@ -583,7 +591,7 @@ namespace DisplayMagicianShared.AMD
} }
else else
{ {
SharedLogger.logger.Error($"ADLWrapper/GenerateProfileDisplayIdentifiers: There were no AMD adapters found by AMD ADL."); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: There were no AMD adapters found by AMD ADL.");
return null; return null;
} }
} }
@ -671,24 +679,24 @@ namespace DisplayMagicianShared.AMD
SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} is active! ({oneAdapter.AdapterName})."); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} is active! ({oneAdapter.AdapterName}).");
Console.WriteLine($"### Adapter Info for Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Adapter Info for Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Adapter AdapterIndex = {oneAdapter.AdapterIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter AdapterIndex = {oneAdapter.AdapterIndex}");
Console.WriteLine($"Adapter AdapterName = {oneAdapter.AdapterName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter AdapterName = {oneAdapter.AdapterName}");
Console.WriteLine($"Adapter BusNumber = {oneAdapter.BusNumber}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter BusNumber = {oneAdapter.BusNumber}");
Console.WriteLine($"Adapter DeviceNumber = {oneAdapter.DeviceNumber}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DeviceNumber = {oneAdapter.DeviceNumber}");
Console.WriteLine($"Adapter DisplayName = {oneAdapter.DisplayName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DisplayName = {oneAdapter.DisplayName}");
Console.WriteLine($"Adapter DriverPath = {oneAdapter.DriverPath}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DriverPath = {oneAdapter.DriverPath}");
Console.WriteLine($"Adapter DriverPathExt = {oneAdapter.DriverPathExt}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter DriverPathExt = {oneAdapter.DriverPathExt}");
Console.WriteLine($"Adapter Exist = {oneAdapter.Exist}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Exist = {oneAdapter.Exist}");
Console.WriteLine($"Adapter FunctionNumber = {oneAdapter.FunctionNumber}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter FunctionNumber = {oneAdapter.FunctionNumber}");
Console.WriteLine($"Adapter InfoMask = {oneAdapter.InfoMask}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter InfoMask = {oneAdapter.InfoMask}");
Console.WriteLine($"Adapter InfoValue = {oneAdapter.InfoValue}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter InfoValue = {oneAdapter.InfoValue}");
Console.WriteLine($"Adapter OSDisplayIndex = {oneAdapter.OSDisplayIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter OSDisplayIndex = {oneAdapter.OSDisplayIndex}");
Console.WriteLine($"Adapter PNPString = {oneAdapter.PNPString}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter PNPString = {oneAdapter.PNPString}");
Console.WriteLine($"Adapter Present = {oneAdapter.Present}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Present = {oneAdapter.Present}");
Console.WriteLine($"Adapter Size = {oneAdapter.Size}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Size = {oneAdapter.Size}");
Console.WriteLine($"Adapter UDID = {oneAdapter.UDID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter UDID = {oneAdapter.UDID}");
Console.WriteLine($"Adapter VendorID = {oneAdapter.VendorID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter VendorID = {oneAdapter.VendorID}");
// Get the Adapter Capabilities // Get the Adapter Capabilities
ADLAdapterCapsX2 AdapterCapabilities = new ADLAdapterCapsX2(); ADLAdapterCapsX2 AdapterCapabilities = new ADLAdapterCapsX2();
@ -697,16 +705,15 @@ namespace DisplayMagicianShared.AMD
ADLRet = ADL.ADL2_AdapterX2_Caps(_adlContextHandle, oneAdapter.AdapterIndex, out AdapterCapabilities); ADLRet = ADL.ADL2_AdapterX2_Caps(_adlContextHandle, oneAdapter.AdapterIndex, out AdapterCapabilities);
} }
//ADLAdapterCapsX2 AdapterCapabilities = (ADLAdapterCapsX2)Marshal.PtrToStructure(AdapterCapabilitiesBuffer, typeof(ADLAdapterCapsX2)); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Adapter Capabilities for Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"### Adapter Capabilities for Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter ID = {AdapterCapabilities.AdapterID}");
Console.WriteLine($"Adapter ID = {AdapterCapabilities.AdapterID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Capabilities Mask = {AdapterCapabilities.CapsMask}");
Console.WriteLine($"Adapter Capabilities Mask = {AdapterCapabilities.CapsMask}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Capabilities Value = {AdapterCapabilities.CapsValue}");
Console.WriteLine($"Adapter Capabilities Value = {AdapterCapabilities.CapsValue}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Connectors = {AdapterCapabilities.NumConnectors}");
Console.WriteLine($"Adapter Num of Connectors = {AdapterCapabilities.NumConnectors}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Controllers = {AdapterCapabilities.NumControllers}");
Console.WriteLine($"Adapter Num of Controllers = {AdapterCapabilities.NumControllers}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Displays = {AdapterCapabilities.NumDisplays}");
Console.WriteLine($"Adapter Num of Displays = {AdapterCapabilities.NumDisplays}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of GL Sync Connectors = {AdapterCapabilities.NumOfGLSyncConnectors}");
Console.WriteLine($"Adapter Num of GL Sync Connectors = {AdapterCapabilities.NumOfGLSyncConnectors}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Adapter Num of Overlays = {AdapterCapabilities.NumOverlays}");
Console.WriteLine($"Adapter Num of Overlays = {AdapterCapabilities.NumOverlays}");
// Obtain information about displays // Obtain information about displays
ADLDisplayInfoArray displayInfoArray = new ADLDisplayInfoArray(); ADLDisplayInfoArray displayInfoArray = new ADLDisplayInfoArray();
@ -736,45 +743,48 @@ namespace DisplayMagicianShared.AMD
// Convert the displayInfoValue to something usable using a library function I made // Convert the displayInfoValue to something usable using a library function I made
ConvertedDisplayInfoValue displayInfoValue = ADL.ConvertDisplayInfoValue(oneDisplayInfo.DisplayInfoValue); ConvertedDisplayInfoValue displayInfoValue = ADL.ConvertDisplayInfoValue(oneDisplayInfo.DisplayInfoValue);
// Skip the non-connected displays, but still show the non-mapped displays (as they are still able to be used with a display config change)
if (!displayInfoValue.DISPLAYCONNECTED) if (!displayInfoValue.DISPLAYCONNECTED)
{ {
SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} ({oneAdapter.AdapterName}) AdapterID display ID#{oneDisplayInfo.DisplayID.DisplayLogicalIndex} is not connected"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} ({oneAdapter.AdapterName}) AdapterID display ID#{oneDisplayInfo.DisplayID.DisplayLogicalIndex} is not connected");
continue; continue;
} }
// We want any display that is connected, but we don't care if they are mapped or not, as we'll be potentially changing the display profile
SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: AMD Adapter #{oneAdapter.AdapterIndex.ToString()} ({oneAdapter.AdapterName}) AdapterID display ID#{oneDisplayInfo.DisplayID.DisplayLogicalIndex} is connected and mapped in Windows OS");
ADL.ADLDisplayConnectionType displayConnector = (ADL.ADLDisplayConnectionType)oneDisplayInfo.DisplayConnector; ADL.ADLDisplayConnectionType displayConnector = (ADL.ADLDisplayConnectionType)oneDisplayInfo.DisplayConnector;
Console.WriteLine($"### Display Info for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display Info for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display Connector = {displayConnector.ToString("G")}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Connector = {displayConnector.ToString("G")}");
Console.WriteLine($"Display Controller Index = {oneDisplayInfo.DisplayControllerIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Controller Index = {oneDisplayInfo.DisplayControllerIndex}");
Console.WriteLine($"Display Logical Adapter Index = {oneDisplayInfo.DisplayID.DisplayLogicalAdapterIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Logical Adapter Index = {oneDisplayInfo.DisplayID.DisplayLogicalAdapterIndex}");
Console.WriteLine($"Display Logical Index = {oneDisplayInfo.DisplayID.DisplayLogicalIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Logical Index = {oneDisplayInfo.DisplayID.DisplayLogicalIndex}");
Console.WriteLine($"Display Physical Adapter Index = {oneDisplayInfo.DisplayID.DisplayPhysicalAdapterIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Physical Adapter Index = {oneDisplayInfo.DisplayID.DisplayPhysicalAdapterIndex}");
Console.WriteLine($"Display Physical Index = {oneDisplayInfo.DisplayID.DisplayPhysicalIndex}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Physical Index = {oneDisplayInfo.DisplayID.DisplayPhysicalIndex}");
Console.WriteLine($"Display Info Mask = {oneDisplayInfo.DisplayInfoMask}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Mask = {oneDisplayInfo.DisplayInfoMask}");
Console.WriteLine($"Display Info Value = {oneDisplayInfo.DisplayInfoValue}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value = {oneDisplayInfo.DisplayInfoValue}");
Console.WriteLine($"Display Manufacturer Name = {oneDisplayInfo.DisplayManufacturerName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Manufacturer Name = {oneDisplayInfo.DisplayManufacturerName}");
Console.WriteLine($"Display Name = {oneDisplayInfo.DisplayName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Name = {oneDisplayInfo.DisplayName}");
Console.WriteLine($"Display Output Type = {oneDisplayInfo.DisplayOutputType}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Output Type = {oneDisplayInfo.DisplayOutputType}");
Console.WriteLine($"Display Type = {oneDisplayInfo.DisplayType}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Type = {oneDisplayInfo.DisplayType}");
Console.WriteLine($"Display Info Value DISPLAYCONNECTED = {displayInfoValue.DISPLAYCONNECTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value DISPLAYCONNECTED = {displayInfoValue.DISPLAYCONNECTED}");
Console.WriteLine($"Display Info Value DISPLAYMAPPED = {displayInfoValue.DISPLAYMAPPED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value DISPLAYMAPPED = {displayInfoValue.DISPLAYMAPPED}");
Console.WriteLine($"Display Info Value FORCIBLESUPPORTED = {displayInfoValue.FORCIBLESUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value FORCIBLESUPPORTED = {displayInfoValue.FORCIBLESUPPORTED}");
Console.WriteLine($"Display Info Value GENLOCKSUPPORTED = {displayInfoValue.GENLOCKSUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value GENLOCKSUPPORTED = {displayInfoValue.GENLOCKSUPPORTED}");
Console.WriteLine($"Display Info Value LDA_DISPLAY = {displayInfoValue.LDA_DISPLAY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value LDA_DISPLAY = {displayInfoValue.LDA_DISPLAY}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_2HSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2HSTRETCH}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_2HSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2HSTRETCH}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_2VSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2VSTRETCH}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_2VSTRETCH = {displayInfoValue.MANNER_SUPPORTED_2VSTRETCH}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_CLONE = {displayInfoValue.MANNER_SUPPORTED_CLONE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_CLONE = {displayInfoValue.MANNER_SUPPORTED_CLONE}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_EXTENDED = {displayInfoValue.MANNER_SUPPORTED_EXTENDED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_EXTENDED = {displayInfoValue.MANNER_SUPPORTED_EXTENDED}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_NSTRETCH1GPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCH1GPU}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_NSTRETCH1GPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCH1GPU}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_NSTRETCHNGPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCHNGPU}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_NSTRETCHNGPU = {displayInfoValue.MANNER_SUPPORTED_NSTRETCHNGPU}");
Console.WriteLine($"Display Info Value MANNER_SUPPORTED_SINGLE = {displayInfoValue.MANNER_SUPPORTED_SINGLE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MANNER_SUPPORTED_SINGLE = {displayInfoValue.MANNER_SUPPORTED_SINGLE}");
Console.WriteLine($"Display Info Value MODETIMING_OVERRIDESSUPPORTED = {displayInfoValue.MODETIMING_OVERRIDESSUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MODETIMING_OVERRIDESSUPPORTED = {displayInfoValue.MODETIMING_OVERRIDESSUPPORTED}");
Console.WriteLine($"Display Info Value MULTIVPU_SUPPORTED = {displayInfoValue.MULTIVPU_SUPPORTED}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value MULTIVPU_SUPPORTED = {displayInfoValue.MULTIVPU_SUPPORTED}");
Console.WriteLine($"Display Info Value NONLOCAL = {displayInfoValue.NONLOCAL}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value NONLOCAL = {displayInfoValue.NONLOCAL}");
Console.WriteLine($"Display Info Value SHOWTYPE_PROJECTOR = {displayInfoValue.SHOWTYPE_PROJECTOR}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Info Value SHOWTYPE_PROJECTOR = {displayInfoValue.SHOWTYPE_PROJECTOR}");
ADL.ADLDisplayConnectionType displayConnectionType = ADL.ADLDisplayConnectionType.Unknown; ADL.ADLDisplayConnectionType displayConnectionType = ADL.ADLDisplayConnectionType.Unknown;
ADLDisplayConfig displayConfig = new ADLDisplayConfig(); ADLDisplayConfig displayConfig = new ADLDisplayConfig();
@ -787,12 +797,16 @@ namespace DisplayMagicianShared.AMD
{ {
displayConnectionType = (ADL.ADLDisplayConnectionType)displayConfig.ConnectorType; displayConnectionType = (ADL.ADLDisplayConnectionType)displayConfig.ConnectorType;
Console.WriteLine($"### Display Device Config for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display Device Config for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display Connector Type = {displayConnectionType.ToString("G")}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Connector Type = {displayConnectionType.ToString("G")}");
Console.WriteLine($"Display Device Data = {displayConfig.DeviceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Device Data = {displayConfig.DeviceData}");
Console.WriteLine($"Display Overridded Device Data = {displayConfig.OverriddedDeviceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Overridded Device Data = {displayConfig.OverriddedDeviceData}");
Console.WriteLine($"Display Reserved Data = {displayConfig.Reserved}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Reserved Data = {displayConfig.Reserved}");
Console.WriteLine($"Display Size = {displayConfig.Size}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Size = {displayConfig.Size}");
}
else
{
SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_DeviceConfig_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
@ -803,7 +817,7 @@ namespace DisplayMagicianShared.AMD
if (ADL.ADL2_Display_DDCInfo2_Get != null) if (ADL.ADL2_Display_DDCInfo2_Get != null)
{ {
// Get the EDID Data from the Display // Get the DDC Data from the Display
ADLRet = ADL.ADL2_Display_DDCInfo2_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID.DisplayPhysicalIndex, out displayDDCInfo2); ADLRet = ADL.ADL2_Display_DDCInfo2_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID.DisplayPhysicalIndex, out displayDDCInfo2);
if (ADLRet == ADL.ADL_OK) if (ADLRet == ADL.ADL_OK)
{ {
@ -814,58 +828,58 @@ namespace DisplayMagicianShared.AMD
// Convert the DDCInfoFlag to something usable using a library function I made // Convert the DDCInfoFlag to something usable using a library function I made
ConvertedSupportedHDR supportedHDR = ADL.ConvertSupportedHDR(displayDDCInfo2.SupportedHDR); ConvertedSupportedHDR supportedHDR = ADL.ConvertSupportedHDR(displayDDCInfo2.SupportedHDR);
Console.WriteLine($"### Display DDCInfo2 for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display DDCInfo2 for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display AvgLuminanceData = {displayDDCInfo2.AvgLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display AvgLuminanceData = {displayDDCInfo2.AvgLuminanceData}");
Console.WriteLine($"Display DDCInfoFlag = {displayDDCInfo2.DDCInfoFlag}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag = {displayDDCInfo2.DDCInfoFlag}");
Console.WriteLine($"Display DiffuseScreenReflectance = {displayDDCInfo2.DiffuseScreenReflectance}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DiffuseScreenReflectance = {displayDDCInfo2.DiffuseScreenReflectance}");
Console.WriteLine($"Display DisplayName = {displayDDCInfo2.DisplayName}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DisplayName = {displayDDCInfo2.DisplayName}");
Console.WriteLine($"Display FreesyncFlags = {displayDDCInfo2.FreesyncFlags}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display FreesyncFlags = {displayDDCInfo2.FreesyncFlags}");
Console.WriteLine($"Display ManufacturerID = {displayDDCInfo2.ManufacturerID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display ManufacturerID = {displayDDCInfo2.ManufacturerID}");
Console.WriteLine($"Display MaxBacklightMaxLuminanceData = {displayDDCInfo2.MaxBacklightMaxLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxBacklightMaxLuminanceData = {displayDDCInfo2.MaxBacklightMaxLuminanceData}");
Console.WriteLine($"Display MaxBacklightMinLuminanceData = {displayDDCInfo2.MaxBacklightMinLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxBacklightMinLuminanceData = {displayDDCInfo2.MaxBacklightMinLuminanceData}");
Console.WriteLine($"Display MaxHResolution = {displayDDCInfo2.MaxHResolution}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxHResolution = {displayDDCInfo2.MaxHResolution}");
Console.WriteLine($"Display MaxLuminanceData = {displayDDCInfo2.MaxLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxLuminanceData = {displayDDCInfo2.MaxLuminanceData}");
Console.WriteLine($"Display MaxRefresh = {displayDDCInfo2.MaxRefresh}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxRefresh = {displayDDCInfo2.MaxRefresh}");
Console.WriteLine($"Display MaxVResolution = {displayDDCInfo2.MaxVResolution}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MaxVResolution = {displayDDCInfo2.MaxVResolution}");
Console.WriteLine($"Display MinBacklightMaxLuminanceData = {displayDDCInfo2.MinBacklightMaxLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinBacklightMaxLuminanceData = {displayDDCInfo2.MinBacklightMaxLuminanceData}");
Console.WriteLine($"Display MinBacklightMinLuminanceData = {displayDDCInfo2.MinBacklightMinLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinBacklightMinLuminanceData = {displayDDCInfo2.MinBacklightMinLuminanceData}");
Console.WriteLine($"Display MinLuminanceData = {displayDDCInfo2.MinLuminanceData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinLuminanceData = {displayDDCInfo2.MinLuminanceData}");
Console.WriteLine($"Display MinLuminanceNoDimmingData = {displayDDCInfo2.MinLuminanceNoDimmingData}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display MinLuminanceNoDimmingData = {displayDDCInfo2.MinLuminanceNoDimmingData}");
Console.WriteLine($"Display NativeDisplayChromaticityBlueX = {displayDDCInfo2.NativeDisplayChromaticityBlueX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityBlueX = {displayDDCInfo2.NativeDisplayChromaticityBlueX}");
Console.WriteLine($"Display NativeDisplayChromaticityBlueY = {displayDDCInfo2.NativeDisplayChromaticityBlueY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityBlueY = {displayDDCInfo2.NativeDisplayChromaticityBlueY}");
Console.WriteLine($"Display NativeDisplayChromaticityGreenX = {displayDDCInfo2.NativeDisplayChromaticityGreenX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityGreenX = {displayDDCInfo2.NativeDisplayChromaticityGreenX}");
Console.WriteLine($"Display NativeDisplayChromaticityGreenY = {displayDDCInfo2.NativeDisplayChromaticityGreenY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityGreenY = {displayDDCInfo2.NativeDisplayChromaticityGreenY}");
Console.WriteLine($"Display NativeDisplayChromaticityRedX = {displayDDCInfo2.NativeDisplayChromaticityRedX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityRedX = {displayDDCInfo2.NativeDisplayChromaticityRedX}");
Console.WriteLine($"Display NativeDisplayChromaticityRedY = {displayDDCInfo2.NativeDisplayChromaticityRedY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityRedY = {displayDDCInfo2.NativeDisplayChromaticityRedY}");
Console.WriteLine($"Display NativeDisplayChromaticityWhiteX = {displayDDCInfo2.NativeDisplayChromaticityWhiteX}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityWhiteX = {displayDDCInfo2.NativeDisplayChromaticityWhiteX}");
Console.WriteLine($"Display NativeDisplayChromaticityWhiteY = {displayDDCInfo2.NativeDisplayChromaticityWhiteY}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display NativeDisplayChromaticityWhiteY = {displayDDCInfo2.NativeDisplayChromaticityWhiteY}");
Console.WriteLine($"Display PackedPixelSupported = {displayDDCInfo2.PackedPixelSupported}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PackedPixelSupported = {displayDDCInfo2.PackedPixelSupported}");
Console.WriteLine($"Display PanelPixelFormat = {displayDDCInfo2.PanelPixelFormat}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PanelPixelFormat = {displayDDCInfo2.PanelPixelFormat}");
Console.WriteLine($"Display ProductID = {displayDDCInfo2.ProductID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display ProductID = {displayDDCInfo2.ProductID}");
Console.WriteLine($"Display PTMCx = {displayDDCInfo2.PTMCx}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PTMCx = {displayDDCInfo2.PTMCx}");
Console.WriteLine($"Display PTMCy = {displayDDCInfo2.PTMCy}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PTMCy = {displayDDCInfo2.PTMCy}");
Console.WriteLine($"Display PTMRefreshRate = {displayDDCInfo2.PTMRefreshRate}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display PTMRefreshRate = {displayDDCInfo2.PTMRefreshRate}");
Console.WriteLine($"Display SerialID = {displayDDCInfo2.SerialID}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SerialID = {displayDDCInfo2.SerialID}");
Console.WriteLine($"Display Size = {displayDDCInfo2.Size}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display Size = {displayDDCInfo2.Size}");
Console.WriteLine($"Display SpecularScreenReflectance = {displayDDCInfo2.SpecularScreenReflectance}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SpecularScreenReflectance = {displayDDCInfo2.SpecularScreenReflectance}");
Console.WriteLine($"Display SupportedColorSpace = {displayDDCInfo2.SupportedColorSpace}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedColorSpace = {displayDDCInfo2.SupportedColorSpace}");
Console.WriteLine($"Display SupportedHDR = {displayDDCInfo2.SupportedHDR}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR = {displayDDCInfo2.SupportedHDR}");
Console.WriteLine($"Display SupportedTransferFunction = {displayDDCInfo2.SupportedTransferFunction}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedTransferFunction = {displayDDCInfo2.SupportedTransferFunction}");
Console.WriteLine($"Display SupportsDDC = {displayDDCInfo2.SupportsDDC}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportsDDC = {displayDDCInfo2.SupportsDDC}");
Console.WriteLine($"Display DDCInfoFlag Digital Device = {DDCInfoFlag.DIGITALDEVICE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Digital Device = {DDCInfoFlag.DIGITALDEVICE}");
Console.WriteLine($"Display DDCInfoFlag EDID Extension = {DDCInfoFlag.EDIDEXTENSION}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag EDID Extension = {DDCInfoFlag.EDIDEXTENSION}");
Console.WriteLine($"Display DDCInfoFlag HDMI Audio Device = {DDCInfoFlag.HDMIAUDIODEVICE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag HDMI Audio Device = {DDCInfoFlag.HDMIAUDIODEVICE}");
Console.WriteLine($"Display DDCInfoFlag Projector Device = {DDCInfoFlag.PROJECTORDEVICE}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Projector Device = {DDCInfoFlag.PROJECTORDEVICE}");
Console.WriteLine($"Display DDCInfoFlag Supports AI = {DDCInfoFlag.SUPPORTS_AI}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Supports AI = {DDCInfoFlag.SUPPORTS_AI}");
Console.WriteLine($"Display DDCInfoFlag Supports xvYCC601 = {DDCInfoFlag.SUPPORT_xvYCC601}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Supports xvYCC601 = {DDCInfoFlag.SUPPORT_xvYCC601}");
Console.WriteLine($"Display DDCInfoFlag Supports xvYCC709 = {DDCInfoFlag.SUPPORT_xvYCC709}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display DDCInfoFlag Supports xvYCC709 = {DDCInfoFlag.SUPPORT_xvYCC709}");
Console.WriteLine($"Display SupportedHDR Supports CEA861_3 = {supportedHDR.CEA861_3}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR Supports CEA861_3 = {supportedHDR.CEA861_3}");
Console.WriteLine($"Display SupportedHDR Supports DOLBYVISION = {supportedHDR.DOLBYVISION}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR Supports DOLBYVISION = {supportedHDR.DOLBYVISION}");
Console.WriteLine($"Display SupportedHDR Supports FREESYNC_HDR = {supportedHDR.FREESYNC_HDR}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display SupportedHDR Supports FREESYNC_HDR = {supportedHDR.FREESYNC_HDR}");
} }
else else
{ {
Console.WriteLine($"Error running ADL_vDisplay_EdidData_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}"); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_DDCInfo2_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
@ -877,9 +891,13 @@ namespace DisplayMagicianShared.AMD
ADLRet = ADL.ADL2_Display_HDRState_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID, out HDRSupported, out HDREnabled); ADLRet = ADL.ADL2_Display_HDRState_Get(_adlContextHandle, oneAdapter.AdapterIndex, oneDisplayInfo.DisplayID, out HDRSupported, out HDREnabled);
if (ADLRet == ADL.ADL_OK) if (ADLRet == ADL.ADL_OK)
{ {
Console.WriteLine($"### Display HDR State for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: ### Display HDR State for Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex} ###");
Console.WriteLine($"Display HDR Supported = {HDRSupported}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display HDR Supported = {HDRSupported}");
Console.WriteLine($"Display HDR Enabled = {HDREnabled}"); SharedLogger.logger.Trace($"ADLWrapper/GenerateProfileDisplayIdentifiers: Display HDR Enabled = {HDREnabled}");
}
else
{
SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_HDRState_Get on Display #{oneDisplayInfo.DisplayID.DisplayLogicalIndex} on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
@ -992,19 +1010,18 @@ namespace DisplayMagicianShared.AMD
// Add it to the list of display identifiers so we can return it // Add it to the list of display identifiers so we can return it
displayIdentifiers.Add(displayIdentifier); displayIdentifiers.Add(displayIdentifier);
Console.WriteLine($"ProfileRepository/GenerateProfileDisplayIdentifiers: DisplayIdentifier: {displayIdentifier}");
SharedLogger.logger.Debug($"ProfileRepository/GenerateProfileDisplayIdentifiers: DisplayIdentifier: {displayIdentifier}"); SharedLogger.logger.Debug($"ProfileRepository/GenerateProfileDisplayIdentifiers: DisplayIdentifier: {displayIdentifier}");
} }
} }
catch (Exception ex) catch (Exception ex)
{ {
Console.WriteLine("Exception caused trying to access attached displays"); SharedLogger.logger.Warn(ex, $"ProfileRepository/GenerateProfileDisplayIdentifiers: Exception caused trying to access attached displays");
continue; continue;
} }
} }
else else
{ {
Console.WriteLine("ADL_Display_DisplayInfo_Get() returned error code " + ADLRet.ToString()); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Display_DisplayInfo_Get on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
// Release the memory for the DisplayInfo structure // Release the memory for the DisplayInfo structure
if (IntPtr.Zero != DisplayBuffer) if (IntPtr.Zero != DisplayBuffer)
@ -1013,13 +1030,13 @@ namespace DisplayMagicianShared.AMD
} }
else else
{ {
Console.WriteLine("ADL_Adapter_Active_Get() returned error code " + ADLRet.ToString()); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Adapter_Active_Get on Adapter #{oneAdapter.AdapterIndex}: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
} }
else else
{ {
Console.WriteLine("ADL_Adapter_AdapterInfo_Get() returned error code " + ADLRet.ToString()); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: Error running ADL2_Adapter_AdapterInfoX4_Get on AMD Video card: {ADL.ConvertADLReturnValueIntoWords(ADLRet)}");
} }
} }
// Release the memory for the AdapterInfo structure // Release the memory for the AdapterInfo structure
@ -1033,7 +1050,7 @@ namespace DisplayMagicianShared.AMD
} }
else else
{ {
SharedLogger.logger.Error($"ADLWrapper/GenerateProfileDisplayIdentifiers: There were no AMD adapters found by AMD ADL."); SharedLogger.logger.Warn($"ADLWrapper/GenerateProfileDisplayIdentifiers: There were no AMD adapters found by AMD ADL.");
return null; return null;
} }
} }