120 #define AMD_AGS_VERSION_MAJOR 6
121 #define AMD_AGS_VERSION_MINOR 2
122 #define AMD_AGS_VERSION_PATCH 0
130 #if defined (AGS_GCC)
133 #define AMD_AGS_API __declspec(dllexport)
136 #define AGS_MAKE_VERSION( major, minor, patch ) ( ( major << 22 ) | ( minor << 12 ) | patch )
137 #define AGS_UNSPECIFIED_VERSION 0xFFFFAD00
138 #define AGS_CURRENT_VERSION AGS_MAKE_VERSION( AMD_AGS_VERSION_MAJOR, AMD_AGS_VERSION_MINOR, AMD_AGS_VERSION_PATCH )
141 #if !defined (AGS_DIRECTX_TYPES_INCLUDED)
144 struct IDXGISwapChain;
145 struct DXGI_SWAP_CHAIN_DESC;
146 enum D3D_DRIVER_TYPE;
147 enum D3D_FEATURE_LEVEL;
148 enum D3D_PRIMITIVE_TOPOLOGY;
152 struct ID3D11DeviceContext;
153 struct ID3D11Resource;
155 struct ID3D11Texture1D;
156 struct ID3D11Texture2D;
157 struct ID3D11Texture3D;
158 struct D3D11_BUFFER_DESC;
159 struct D3D11_TEXTURE1D_DESC;
160 struct D3D11_TEXTURE2D_DESC;
161 struct D3D11_TEXTURE3D_DESC;
162 struct D3D11_SUBRESOURCE_DATA;
164 typedef tagRECT D3D11_RECT;
168 struct ID3D12GraphicsCommandList;
Returned if the driver does not support the requested driver extension.
Definition: amd_ags.h:184
unsigned int uavSlot
The UAV slot reserved for intrinsic support. Refer to the agsDriverExtensionsDX12_CreateDevice docume...
Definition: amd_ags.h:501
unsigned int depthBoundsTest
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:664
Top-of-pipe marker.
Definition: amd_ags.h:900
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_BeginUAVOverlap(AGSContext *context, ID3D11DeviceContext *dxContext)
Function used indicate to the driver the start of the overlap scope.
unsigned int eyefinityPreferredDisplay
The display is the preferred display in the Eyefinity group for displaying the UI.
Definition: amd_ags.h:215
Mode mode
Include/exclude rect region.
Definition: amd_ags.h:1191
double maxFrameAverageLightLevel
The maximum frame average light level in nits (MaxFALL)
Definition: amd_ags.h:371
ID3D11Device * pDevice
The newly created device.
Definition: amd_ags.h:655
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_SetDepthBounds(AGSContext *context, ID3D11DeviceContext *dxContext, bool enabled, float minDepth, float maxDepth)
Function used to set the depth bounds test extension.
unsigned int reservedPadding
Reserved for future use.
Definition: amd_ags.h:280
struct AGSDX12ReturnedParams::ExtensionsSupported ExtensionsSupported
Extensions for DX12.
unsigned int appVersion
Application version.
Definition: amd_ags.h:643
double maxLuminance
The maximum scene luminance in nits.
Definition: amd_ags.h:368
int deviceId
The device id.
Definition: amd_ags.h:283
Number of enumerated ASIC families.
Definition: amd_ags.h:272
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_WriteBreadcrumb(AGSContext *context, const AGSBreadcrumbMarker *marker)
Function to write a breadcrumb marker.
ExtensionsSupported extensionsSupported
List of supported extensions.
Definition: amd_ags.h:683
int adlAdapterIndex
The internally used ADL adapter index.
Definition: amd_ags.h:251
AGS_ALLOC_CALLBACK allocCallback
Optional memory allocation callback. If not supplied, malloc() is used.
Definition: amd_ags.h:323
int memoryBandwidth
Memory bandwidth in MB/s.
Definition: amd_ags.h:292
double maxContentLightLevel
The maximum content light level in nits (MaxCLL)
Definition: amd_ags.h:370
unsigned int getWaveSize
Supported in Radeon Software Version 20.2.1 onwards.
Definition: amd_ags.h:678
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_CREATEBUFFER)(AGSContext *, const D3D11_BUFFER_DESC *, const D3D11_SUBRESOURCE_DATA *, ID3D11Buffer **, AGSAfrTransferType, AGSAfrTransferEngine)
agsDriverExtensionsDX11_CreateBuffer
Definition: amd_ags.h:1342
unsigned int freesync
Freesync is supported on this display.
Definition: amd_ags.h:212
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_IASetPrimitiveTopology(AGSContext *context, D3D_PRIMITIVE_TOPOLOGY topology)
Function used to set the primitive topology.
unsigned int appRegistration
Supported in Radeon Software Version 17.9.1 onwards.
Definition: amd_ags.h:672
int adlAdapterIndex
Internally used index into the ADL list of adapters.
Definition: amd_ags.h:309
Unknown architecture, potentially from another IHV. Check AGSDeviceInfo::vendorId.
Definition: amd_ags.h:261
D3D_FEATURE_LEVEL featureLevel
The feature level supported by the newly created device.
Definition: amd_ags.h:658
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_SetMaxAsyncCompileThreadCount(AGSContext *context, unsigned int numberOfThreads)
This method can be used to limit the maximum number of threads the driver uses for asynchronous shade...
The struct to specify DX12 additional device creation parameters.
Definition: amd_ags.h:495
App controlled GPU to next GPU transfer.
Definition: amd_ags.h:1215
unsigned long long sharedMemoryInBytes
The size of system memory available to the GPU in bytes.
Definition: amd_ags.h:296
Quad list.
Definition: amd_ags.h:931
unsigned int index
The index of the marker. This should be less than the value specified in AGSDX11ExtensionParams::numB...
Definition: amd_ags.h:906
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_IASETPRIMITIVETOPOLOGY)(AGSContext *, enum D3D_PRIMITIVE_TOPOLOGY)
agsDriverExtensionsDX11_IASetPrimitiveTopology
Definition: amd_ags.h:1328
struct AGSDisplaySettings AGSDisplaySettings
The struct to specify the display settings to the driver.
int eyefinityEnabled
Indicates if Eyefinity is active.
Definition: amd_ags.h:302
unsigned int baseInstance
Supported in Radeon Software Version 20.2.1 onwards.
Definition: amd_ags.h:517
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_NUMPENDINGASYNCOMPILEJOBS)(AGSContext *, unsigned int *)
agsDriverExtensionsDX11_NumPendingAsyncCompileJobs
Definition: amd_ags.h:1337
struct AGSDX11ReturnedParams AGSDX11ReturnedParams
The struct to hold all the returned parameters from the device creation call.
Out of memory when allocating space internally.
Definition: amd_ags.h:180
AMD_AGS_API AGSDriverVersionResult(* AGS_CHECKDRIVERVERSION)(const char *, unsigned int)
agsCheckDriverVersion
Definition: amd_ags.h:1315
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX12_PopMarker(AGSContext *context, ID3D12GraphicsCommandList *commandList)
Function used to pop an AMD user marker on the command list.
int eyefinityBezelCompensated
Indicates if bezel compensation is used for the current SLS display area. 1 if enabled,...
Definition: amd_ags.h:307
UINT SDKVersion
Consult the DX documentation on D3D11CreateDevice for this parameter.
Definition: amd_ags.h:634
int eyefinityResolutionX
Contains width in pixels of the multi-monitor Single Large Surface.
Definition: amd_ags.h:305
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX12_DESTROYDEVICE)(AGSContext *, ID3D12Device *, unsigned int *)
agsDriverExtensionsDX12_DestroyDevice
Definition: amd_ags.h:1321
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX12_POPMARKER)(AGSContext *, ID3D12GraphicsCommandList *)
agsDriverExtensionsDX12_PopMarker
Definition: amd_ags.h:1323
AsicFamily
The ASIC family.
Definition: amd_ags.h:259
ExtensionsSupported extensionsSupported
List of supported extensions.
Definition: amd_ags.h:525
Failure due to not creating the D3D device successfully via AGS.
Definition: amd_ags.h:187
char name[256]
The name of the display.
Definition: amd_ags.h:206
IID iid
The interface ID for the type of device to be created.
Definition: amd_ags.h:490
double chromaticityWhitePointY
White point Y coord.
Definition: amd_ags.h:241
Extensions for DX11.
Definition: amd_ags.h:659
int logicalDisplayIndex
The internally used index of this display.
Definition: amd_ags.h:250
unsigned int intrinsics17
Supported in Radeon Software Version 17.9.1 onwards. WaveReduce, WaveScan.
Definition: amd_ags.h:671
ID3D12Device * pDevice
The newly created device.
Definition: amd_ags.h:507
unsigned int screenRectList
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:662
unsigned int multiDrawIndirectCountIndirect
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:666
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_CreateTexture1D(AGSContext *context, const D3D11_TEXTURE1D_DESC *desc, const D3D11_SUBRESOURCE_DATA *initialData, ID3D11Texture1D **texture1D, AGSAfrTransferType transferType, AGSAfrTransferEngine transferEngine)
Function to create a Direct3D11 resource with the specified AFR transfer type and specified transfer ...
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_MULTIDRAWINDEXEDINSTANCEDINDIRECTCOUNTINDIRECT)(AGSContext *, ID3D11DeviceContext *, ID3D11Buffer *, unsigned int, ID3D11Buffer *, unsigned int, unsigned int)
agsDriverExtensionsDX11_MultiDrawIndexedInstancedIndirectCountIndirect
Definition: amd_ags.h:1335
double chromaticityBlueX
Blue display primary X coord.
Definition: amd_ags.h:361
unsigned int createShaderControls
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:668
Failure from DirectX runtime.
Definition: amd_ags.h:186
int numWGPs
Number of RDNA Work Group Processors. Only valid if ASIC is RDNA onwards.
Definition: amd_ags.h:287
double chromaticityWhitePointX
White point X coord.
Definition: amd_ags.h:240
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_SetDiskShaderCacheEnabled(AGSContext *context, int enable)
This method can be used to enable or disable the disk based shader cache.
unsigned long long markerData
The user data to write.
Definition: amd_ags.h:904
AGSDriverVersionResult
The result returned from agsCheckDriverVersion.
Definition: amd_ags.h:379
D3D_DRIVER_TYPE DriverType
Consult the DX documentation on D3D11CreateDevice for this parameter.
Definition: amd_ags.h:629
unsigned int HDR10
HDR10 is supported on this display.
Definition: amd_ags.h:210
IDXGIAdapter * pAdapter
Consult the DX documentation on D3D11CreateDevice for this parameter.
Definition: amd_ags.h:628
Type type
Whether this marker is top or bottom of pipe.
Definition: amd_ags.h:905
double screenSpecularReflectance
Percentage expressed between 0 - 1.
Definition: amd_ags.h:244
AMD Vega architecture, including Raven Ridge (ie AMD Ryzen CPU + AMD Vega GPU).
Definition: amd_ags.h:267
int coreClock
Core clock speed at 100% power in MHz.
Definition: amd_ags.h:290
AMD GCN 1 architecture: Oland, Cape Verde, Pitcairn & Tahiti.
Definition: amd_ags.h:263
Freesync HDR Gamma 2.2, requiring a 1010102 UNORM swapchain. The output needs to be encoded to gamma ...
Definition: amd_ags.h:347
double avgLuminance
The average luminance of the display in nits.
Definition: amd_ags.h:248
double chromaticityWhitePointY
White point Y coord.
Definition: amd_ags.h:365
HDR10 PQ encoding, requiring a 1010102 UNORM swapchain and PQ encoding in the output shader.
Definition: amd_ags.h:344
Dolby Vision, requiring an 8888 UNORM swapchain.
Definition: amd_ags.h:348
AGSAfrTransferType
The Crossfire API transfer types.
Definition: amd_ags.h:1211
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_SETVIEWBROADCASTMASKS)(AGSContext *, unsigned long long, unsigned long long, int)
agsDriverExtensionsDX11_SetViewBroadcastMasks
Definition: amd_ags.h:1339
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX12_CREATEDEVICE)(AGSContext *, const AGSDX12DeviceCreationParams *, const AGSDX12ExtensionParams *, AGSDX12ReturnedParams *)
agsDriverExtensionsDX12_CreateDevice
Definition: amd_ags.h:1320
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_SetViewBroadcastMasks(AGSContext *context, unsigned long long vpMask, unsigned long long rtSliceMask, int vpMaskPerRtSliceEnabled)
Function to control draw calls replication to multiple viewports and RT slices.
AGSRect rect
The rect to include/exclude.
Definition: amd_ags.h:1192
int eyefinityGridCoordY
The Y coordinate in the Eyefinity grid. -1 if not in an Eyefinity group.
Definition: amd_ags.h:229
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX12_PushMarker(AGSContext *context, ID3D12GraphicsCommandList *commandList, const char *data)
Function used to push an AMD user marker onto the command list.
AMD_AGS_API AGSReturnCode agsDeInitialize(AGSContext *context)
Function used to clean up the AGS library.
Turn off driver resource tracking.
Definition: amd_ags.h:1214
AMD GCN 3 architecture: Tonga & Fiji.
Definition: amd_ags.h:265
int eyefinityGridHeight
Contains height of the multi-monitor grid that makes up the Eyefinity Single Large Surface.
Definition: amd_ags.h:304
Pre GCN architecture.
Definition: amd_ags.h:262
unsigned int appRegistration
Supported in Radeon Software Version 17.9.1 onwards.
Definition: amd_ags.h:513
Failure in ADL (the AMD Display Library)
Definition: amd_ags.h:185
const WCHAR * pEngineName
Engine name.
Definition: amd_ags.h:498
The clip rectangle struct used by agsDriverExtensionsDX11_SetClipRects.
Definition: amd_ags.h:1182
The display info struct used to describe a display enumerated by AGS.
Definition: amd_ags.h:204
Screen rect list.
Definition: amd_ags.h:932
double chromaticityBlueY
Blue display primary Y coord.
Definition: amd_ags.h:238
SDR mode.
Definition: amd_ags.h:343
float teraFlops
Teraflops of GPU. Zero if not GCN onwards. Calculated from iCoreClock * iNumCUs * 64 Pixels/clk * 2 i...
Definition: amd_ags.h:293
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_NOTIFYRESOURCEBEGINALLACCESS)(AGSContext *, ID3D11Resource *)
agsDriverExtensionsDX11_NotifyResourceBeginAllAccess
Definition: amd_ags.h:1347
Use the AGS Crossfire API functions to perform explicit AFR rendering without requiring a CF driver p...
Definition: amd_ags.h:621
unsigned int eyefinityInPortraitMode
The display is in the Eyefinity group but in portrait mode.
Definition: amd_ags.h:216
int numDisplays
The number of active displays found to be attached to this adapter.
Definition: amd_ags.h:299
unsigned int isExternal
Whether this device is a detachable, external device.
Definition: amd_ags.h:279
double chromaticityGreenX
Green display primary X coord.
Definition: amd_ags.h:358
unsigned int appVersion
Application version.
Definition: amd_ags.h:499
int offsetX
Offset on X axis.
Definition: amd_ags.h:197
Type
The marker type.
Definition: amd_ags.h:898
Mode mode
The display mode to set the display into.
Definition: amd_ags.h:353
const char * driverVersion
The AMD driver package version.
Definition: amd_ags.h:330
Completely disable AFR rendering.
Definition: amd_ags.h:622
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_MULTIDRAWINDEXEDINSTANCEDINDIRECT)(AGSContext *, ID3D11DeviceContext *, unsigned int, ID3D11Buffer *, unsigned int, unsigned int)
agsDriverExtensionsDX11_MultiDrawIndexedInstancedIndirect
Definition: amd_ags.h:1333
unsigned int reservedPadding
Reserved.
Definition: amd_ags.h:374
Use default engine for Crossfire API transfers.
Definition: amd_ags.h:1223
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_CreateDevice(AGSContext *context, const AGSDX11DeviceCreationParams *creationParams, const AGSDX11ExtensionParams *extensionParams, AGSDX11ReturnedParams *returnedParams)
Function used to create a D3D11 device with additional AMD-specific initialization parameters.
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_SETMAXASYNCCOMPILETHREADCOUNT)(AGSContext *, unsigned int)
agsDriverExtensionsDX11_SetMaxAsyncCompileThreadCount
Definition: amd_ags.h:1336
Include the rect.
Definition: amd_ags.h:1187
App controlled GPU to all render GPUs transfer using intermediate system memory.
Definition: amd_ags.h:1217
Mode
The inclusion mode for the rect.
Definition: amd_ags.h:1185
AMD GCN 4 architecture: Polaris.
Definition: amd_ags.h:266
double maxLuminance
The maximum luminance of the display in nits.
Definition: amd_ags.h:247
const WCHAR * pAppName
Application name.
Definition: amd_ags.h:497
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_BEGINUAVOVERLAP)(AGSContext *, ID3D11DeviceContext *)
agsDriverExtensionsDX11_BeginUAVOverlap
Definition: amd_ags.h:1329
unsigned int readLaneAt
Supported in Radeon Software Version 20.11.2 onwards.
Definition: amd_ags.h:520
AMD RDNA architecture.
Definition: amd_ags.h:268
AGSRect visibleResolution
The visible resolution and position.
Definition: amd_ags.h:224
UINT FeatureLevels
Consult the DX documentation on D3D11CreateDevice for this parameter.
Definition: amd_ags.h:633
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_CREATEDEVICE)(AGSContext *, const AGSDX11DeviceCreationParams *, const AGSDX11ExtensionParams *, AGSDX11ReturnedParams *)
agsDriverExtensionsDX11_CreateDevice
Definition: amd_ags.h:1325
double minLuminance
The minimum luminance of the display in nits.
Definition: amd_ags.h:246
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX12_DestroyDevice(AGSContext *context, ID3D12Device *device, unsigned int *deviceReferences)
Function to destroy the D3D12 device.
AMD GCN 2 architecture: Hawaii & Bonaire. This also includes APUs Kaveri and Carrizo.
Definition: amd_ags.h:264
const unsigned int AGS_DX12_SHADER_INTRINSICS_SPACE_ID
The space id for DirectX12 intrinsic support.
Definition: amd_ags.h:529
AGSCrossfireMode crossfireMode
Desired Crossfire mode.
Definition: amd_ags.h:649
int reserved
reserved field
Definition: amd_ags.h:310
struct AGSDX11ExtensionParams AGSDX11ExtensionParams
The struct to specify DX11 additional device creation parameters.
int maxResolutionY
The maximum supported resolution of the unrotated display.
Definition: amd_ags.h:220
AMD_AGS_API AGSReturnCode(* AGS_DEINITIALIZE)(AGSContext *)
agsDeInitialize
Definition: amd_ags.h:1318
The reported Radeon Software Version is older than the required version.
Definition: amd_ags.h:382
struct AGSClipRect AGSClipRect
The clip rectangle struct used by agsDriverExtensionsDX11_SetClipRects.
unsigned int intrinsics16
Supported in Radeon Software Version 16.9.2 onwards. ReadFirstLane, ReadLane, LaneID,...
Definition: amd_ags.h:510
struct AGSDX12DeviceCreationParams AGSDX12DeviceCreationParams
The struct to specify the DX12 device creation parameters.
unsigned int UAVOverlapDeferredContexts
Supported in Radeon Software Version 18.8.1 onwards.
Definition: amd_ags.h:675
void *(__stdcall * AGS_ALLOC_CALLBACK)(size_t allocationSize)
AGS user defined allocation prototype.
Definition: amd_ags.h:317
The struct to specify DX11 additional device creation parameters.
Definition: amd_ags.h:639
Use 3D engine for Crossfire API transfers.
Definition: amd_ags.h:1224
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_SETCLIPRECTS)(AGSContext *, unsigned int, const AGSClipRect *)
agsDriverExtensionsDX11_SetClipRects
Definition: amd_ags.h:1341
int width
Width of rectangle.
Definition: amd_ags.h:199
int reserved
reserved field
Definition: amd_ags.h:252
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_DESTROYDEVICE)(AGSContext *, ID3D11Device *, unsigned int *, ID3D11DeviceContext *, unsigned int *)
agsDriverExtensionsDX11_DestroyDevice
Definition: amd_ags.h:1326
unsigned long long localMemoryInBytes
The size of local memory in bytes. 0 for non AMD hardware.
Definition: amd_ags.h:295
D3D_FEATURE_LEVEL FeatureLevel
The minimum feature level to create the device with.
Definition: amd_ags.h:491
Freesync HDR scRGB, requiring an FP16 swapchain. A value of 1.0 == 80 nits.
Definition: amd_ags.h:346
unsigned int uavSlot
The UAV slot reserved for intrinsic support.
Definition: amd_ags.h:646
const char * adapterString
The adapter name string.
Definition: amd_ags.h:275
int numCUs
Number of compute units.
Definition: amd_ags.h:286
AMD_AGS_API int agsGetVersionNumber()
Function to return the AGS version number.
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_MultiDrawIndexedInstancedIndirectCountIndirect(AGSContext *context, ID3D11DeviceContext *dxContext, ID3D11Buffer *pBufferForDrawCount, unsigned int alignedByteOffsetForDrawCount, ID3D11Buffer *pBufferForArgs, unsigned int alignedByteOffsetForArgs, unsigned int byteStrideForArgs)
Function used to submit a batch of draws via MultiDrawIndirect.
AMD_AGS_API AGSReturnCode agsInitialize(int agsVersion, const AGSConfiguration *config, AGSContext **context, AGSGPUInfo *gpuInfo)
Function used to initialize the AGS library.
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_NotifyResourceBeginAllAccess(AGSContext *context, ID3D11Resource *resource)
This will notify the driver that the app will begin read/write access to the resource.
unsigned int padding
Reserved.
Definition: amd_ags.h:681
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_WRITEBREADCRUMB)(AGSContext *, const AGSBreadcrumbMarker *)
agsDriverExtensionsDX11_WriteBreadcrumb
Definition: amd_ags.h:1327
The struct to specify the DX12 device creation parameters.
Definition: amd_ags.h:487
The struct to hold all the returned parameters from the device creation call.
Definition: amd_ags.h:653
int vendorId
The vendor id.
Definition: amd_ags.h:282
double screenDiffuseReflectance
Percentage expressed between 0 - 1.
Definition: amd_ags.h:243
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_EndUAVOverlap(AGSContext *context, ID3D11DeviceContext *dxContext)
Function used indicate to the driver the end of the overlap scope.
IDXGIAdapter * pAdapter
Pointer to the adapter to use when creating the device. This may be null.
Definition: amd_ags.h:489
Use the default driver-based AFR rendering. If this mode is specified, do NOT use the agsDriverExtens...
Definition: amd_ags.h:620
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_MULTIDRAWINSTANCEDINDIRECT)(AGSContext *, ID3D11DeviceContext *, unsigned int, ID3D11Buffer *, unsigned int, unsigned int)
agsDriverExtensionsDX11_MultiDrawInstancedIndirect
Definition: amd_ags.h:1332
unsigned int padding
Reserved.
Definition: amd_ags.h:523
unsigned int isPrimaryDevice
Whether this device is marked as the primary device.
Definition: amd_ags.h:278
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_CreateBuffer(AGSContext *context, const D3D11_BUFFER_DESC *desc, const D3D11_SUBRESOURCE_DATA *initialData, ID3D11Buffer **buffer, AGSAfrTransferType transferType, AGSAfrTransferEngine transferEngine)
Function to create a Direct3D11 resource with the specified AFR transfer type and specified transfer ...
Default Crossfire driver resource tracking.
Definition: amd_ags.h:1213
UINT Flags
Consult the DX documentation on D3D11CreateDevice for this parameter.
Definition: amd_ags.h:631
int eyefinityGridWidth
Contains width of the multi-monitor grid that makes up the Eyefinity Single Large Surface.
Definition: amd_ags.h:303
unsigned int disableLocalDimming
Disables local dimming if possible.
Definition: amd_ags.h:373
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX12_CreateDevice(AGSContext *context, const AGSDX12DeviceCreationParams *creationParams, const AGSDX12ExtensionParams *extensionParams, AGSDX12ReturnedParams *returnedParams)
Function used to create a D3D12 device with additional AMD-specific initialization parameters.
double chromaticityGreenY
Green display primary Y coord.
Definition: amd_ags.h:235
The check could not determine as result. This could be because it is a private or custom driver or ju...
Definition: amd_ags.h:383
double chromaticityBlueY
Blue display primary Y coord.
Definition: amd_ags.h:362
AMD_AGS_API int(* AGS_GETVERSIONNUMBER)()
agsGetVersionNumber
Definition: amd_ags.h:1316
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_MULTIDRAWINSTANCEDINDIRECTCOUNTINDIRECT)(AGSContext *, ID3D11DeviceContext *, ID3D11Buffer *, unsigned int, ID3D11Buffer *, unsigned int, unsigned int)
agsDriverExtensionsDX11_MultiDrawInstancedIndirectCountIndirect
Definition: amd_ags.h:1334
HDR10 scRGB, requiring an FP16 swapchain. Values of 1.0 == 80 nits, 125.0 == 10000 nits.
Definition: amd_ags.h:345
unsigned int engineVersion
Engine version.
Definition: amd_ags.h:644
const WCHAR * pEngineName
Engine name.
Definition: amd_ags.h:642
float maxRefreshRate
The maximum supported refresh rate of the display.
Definition: amd_ags.h:221
unsigned int baseVertex
Supported in Radeon Software Version 20.2.1 onwards.
Definition: amd_ags.h:516
void * breadcrumbBuffer
The CPU buffer returned if the initialization of the breadcrumb was successful.
Definition: amd_ags.h:685
AMD_AGS_API AGSReturnCode(* AGS_SETDISPLAYMODE)(AGSContext *, int, int, const AGSDisplaySettings *)
agsSetDisplayMode
Definition: amd_ags.h:1319
AGSRect currentResolution
The current resolution and position in the desktop, ignoring Eyefinity bezel compensation.
Definition: amd_ags.h:223
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_GETMAXCLIPRECTS)(AGSContext *, unsigned int *)
agsDriverExtensionsDX11_GetMaxClipRects
Definition: amd_ags.h:1340
unsigned int shaderClock
Supported in Radeon Software Version 23.1.1 onwards.
Definition: amd_ags.h:522
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_SETDEPTHBOUNDS)(AGSContext *, ID3D11DeviceContext *, bool, float, float)
agsDriverExtensionsDX11_SetDepthBounds
Definition: amd_ags.h:1331
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_GetMaxClipRects(AGSContext *context, unsigned int *maxRectCount)
Function returns max number of supported clip rectangles.
unsigned int numBreadcrumbMarkers
The number of breadcrumb markers to allocate. Each marker is a uint64 (ie 8 bytes)....
Definition: amd_ags.h:645
AMD_AGS_API AGSReturnCode agsSetDisplayMode(AGSContext *context, int deviceIndex, int displayIndex, const AGSDisplaySettings *settings)
Function used to set a specific display into HDR mode.
Failed to complete call for some unspecified reason.
Definition: amd_ags.h:178
unsigned int engineVersion
Engine version.
Definition: amd_ags.h:500
unsigned int reservedPadding
Reserved for future use.
Definition: amd_ags.h:217
Number of enumerated display modes.
Definition: amd_ags.h:350
unsigned int UAVBindSlot
Supported in Radeon Software Version 19.5.1 onwards.
Definition: amd_ags.h:514
double chromaticityGreenY
Green display primary Y coord.
Definition: amd_ags.h:359
The reported Radeon Software Version is newer or the same as the required version.
Definition: amd_ags.h:381
struct AGSGPUInfo AGSGPUInfo
The top level GPU information returned from agsInitialize.
AMD RDNA2 architecture.
Definition: amd_ags.h:269
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_CreateTexture2D(AGSContext *context, const D3D11_TEXTURE2D_DESC *desc, const D3D11_SUBRESOURCE_DATA *initialData, ID3D11Texture2D **texture2D, AGSAfrTransferType transferType, AGSAfrTransferEngine transferEngine)
Function to create a Direct3D11 resource with the specified AFR transfer type and specified transfer ...
Invalid arguments into the function.
Definition: amd_ags.h:179
unsigned int floatConversion
Supported in Radeon Software Version 20.5.1 onwards.
Definition: amd_ags.h:519
unsigned int intrinsics19
Supported in Radeon Software Version 19.12.2 onwards. DrawIndex, AtomicU64.
Definition: amd_ags.h:515
double minLuminance
The minimum scene luminance in nits.
Definition: amd_ags.h:367
unsigned int depthBoundsDeferredContexts
Supported in Radeon Software Version 18.8.1 onwards.
Definition: amd_ags.h:676
The struct to specify the display settings to the driver.
Definition: amd_ags.h:338
unsigned int crossfireAPI
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:667
unsigned int freesyncHDR
Freesync HDR is supported on this display.
Definition: amd_ags.h:213
int eyefinityGridCoordX
The X coordinate in the Eyefinity grid. -1 if not in an Eyefinity group.
Definition: amd_ags.h:228
Use Copy engine for Crossfire API transfers.
Definition: amd_ags.h:1225
int numROPs
Number of ROPs.
Definition: amd_ags.h:289
All function calls in AGS require a pointer to a context. This is generated via agsInitialize.
Definition: amd_ags.h:195
Bottom-of-pipe marker.
Definition: amd_ags.h:901
AGSAfrTransferEngine
The Crossfire API transfer engines.
Definition: amd_ags.h:1221
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_MultiDrawInstancedIndirectCountIndirect(AGSContext *context, ID3D11DeviceContext *dxContext, ID3D11Buffer *pBufferForDrawCount, unsigned int alignedByteOffsetForDrawCount, ID3D11Buffer *pBufferForArgs, unsigned int alignedByteOffsetForArgs, unsigned int byteStrideForArgs)
Function used to submit a batch of draws via MultiDrawIndirect.
AMD RDNA3 architecture.
Definition: amd_ags.h:270
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_SETDISKSHADERCACHEENABLED)(AGSContext *, int)
agsDriverExtensionsDX11_SetDiskShaderCacheEnabled
Definition: amd_ags.h:1338
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX12_SetMarker(AGSContext *context, ID3D12GraphicsCommandList *commandList, const char *data)
Function used to insert an single event AMD user marker onto the command list.
double chromaticityRedY
Red display primary Y coord.
Definition: amd_ags.h:356
AGSReturnCode
The return codes.
Definition: amd_ags.h:175
struct AGSDX12ExtensionParams AGSDX12ExtensionParams
The struct to specify DX12 additional device creation parameters.
int numDevices
Number of GPUs in the system.
Definition: amd_ags.h:333
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_NOTIFYRESOURCEENDALLACCESS)(AGSContext *, ID3D11Resource *)
agsDriverExtensionsDX11_NotifyResourceEndAllAccess
Definition: amd_ags.h:1348
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_CreateTexture3D(AGSContext *context, const D3D11_TEXTURE3D_DESC *desc, const D3D11_SUBRESOURCE_DATA *initialData, ID3D11Texture3D **texture3D, AGSAfrTransferType transferType, AGSAfrTransferEngine transferEngine)
Function to create a Direct3D11 resource with the specified AFR transfer type and specified transfer ...
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_CREATETEXTURE2D)(AGSContext *, const D3D11_TEXTURE2D_DESC *, const D3D11_SUBRESOURCE_DATA *, ID3D11Texture2D **, AGSAfrTransferType, AGSAfrTransferEngine)
agsDriverExtensionsDX11_CreateTexture2D
Definition: amd_ags.h:1344
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_NotifyResourceEndWrites(AGSContext *context, ID3D11Resource *resource, const D3D11_RECT *transferRegions, const unsigned int *subresourceArray, unsigned int numSubresources)
Function to notify the driver that we have finished writing to the resource this frame.
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_MultiDrawInstancedIndirect(AGSContext *context, ID3D11DeviceContext *dxContext, unsigned int drawCount, ID3D11Buffer *pBufferForArgs, unsigned int alignedByteOffsetForArgs, unsigned int byteStrideForArgs)
Function used to submit a batch of draws via MultiDrawIndirect.
unsigned int eyefinityInGroup
The display is part of the Eyefinity group.
Definition: amd_ags.h:214
int memoryClock
Memory clock speed at 100% power in MHz.
Definition: amd_ags.h:291
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX12_PUSHMARKER)(AGSContext *, ID3D12GraphicsCommandList *, const char *)
agsDriverExtensionsDX12_PushMarker
Definition: amd_ags.h:1322
The top level GPU information returned from agsInitialize.
Definition: amd_ags.h:328
The device info struct used to describe a physical GPU enumerated by AGS.
Definition: amd_ags.h:256
const WCHAR * pAppName
Application name.
Definition: amd_ags.h:641
int height
Height of rectangle.
Definition: amd_ags.h:200
App controlled GPU to next GPU transfer using intermediate system memory.
Definition: amd_ags.h:1216
double chromaticityRedY
Red display primary Y coord.
Definition: amd_ags.h:232
unsigned int rayHitToken
Supported in Radeon Software Version 20.11.2 onwards.
Definition: amd_ags.h:521
AGSPrimitiveTopologyDX11
Additional topologies supported via extensions.
Definition: amd_ags.h:929
double chromaticityRedX
Red display primary X coord.
Definition: amd_ags.h:231
unsigned int crossfireGPUCount
The number of GPUs that are active for this app.
Definition: amd_ags.h:684
char displayDeviceName[32]
The display device name, i.e. DISPLAY_DEVICE::DeviceName.
Definition: amd_ags.h:207
IDXGISwapChain * pSwapChain
The newly created swap chain. This is only created if a valid pSwapChainDesc is supplied in AGSDX11De...
Definition: amd_ags.h:657
int eyefinityResolutionY
Contains height in pixels of the multi-monitor Single Large Surface.
Definition: amd_ags.h:306
AMD_AGS_API AGSDriverVersionResult agsCheckDriverVersion(const char *radeonSoftwareVersionReported, unsigned int radeonSoftwareVersionRequired)
Helper function to check the installed software version against the required software version.
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_ENDUAVOVERLAP)(AGSContext *, ID3D11DeviceContext *)
agsDriverExtensionsDX11_EndUAVOverlap
Definition: amd_ags.h:1330
Returned if a feature is not present in the installed driver.
Definition: amd_ags.h:182
const char * radeonSoftwareVersion
The Radeon Software Version.
Definition: amd_ags.h:331
unsigned int baseVertex
Supported in Radeon Software Version 20.2.1 onwards.
Definition: amd_ags.h:679
unsigned int uavOverlap
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:663
unsigned int getWaveSize
Supported in Radeon Software Version 20.5.1 onwards.
Definition: amd_ags.h:518
AMD_AGS_API AGSReturnCode(* AGS_INITIALIZE)(int, const AGSConfiguration *, AGSContext **, AGSGPUInfo *)
agsInitialize
Definition: amd_ags.h:1317
AGSDeviceInfo * devices
List of GPUs in the system.
Definition: amd_ags.h:334
AGSDisplayInfo * displays
List of displays allocated by AGS to be numDisplays in length.
Definition: amd_ags.h:300
double chromaticityGreenX
Green display primary X coord.
Definition: amd_ags.h:234
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_CREATETEXTURE1D)(AGSContext *, const D3D11_TEXTURE1D_DESC *, const D3D11_SUBRESOURCE_DATA *, ID3D11Texture1D **, AGSAfrTransferType, AGSAfrTransferEngine)
agsDriverExtensionsDX11_CreateTexture1D
Definition: amd_ags.h:1343
unsigned int intrinsics16
Supported in Radeon Software Version 16.9.2 onwards. ReadFirstLane, ReadLane, LaneID,...
Definition: amd_ags.h:669
Extensions for DX12.
Definition: amd_ags.h:508
unsigned int intrinsics19
Supported in Radeon Software Version 19.12.2 onwards. DrawIndex, AtomicU64.
Definition: amd_ags.h:677
Successful function call.
Definition: amd_ags.h:177
const DXGI_SWAP_CHAIN_DESC * pSwapChainDesc
Optional swapchain description. Specify this to invoke D3D11CreateDeviceAndSwapChain instead of D3D11...
Definition: amd_ags.h:635
int revisionId
The revision id.
Definition: amd_ags.h:284
double chromaticityWhitePointX
White point X coord.
Definition: amd_ags.h:364
unsigned int isAPU
Whether this device is an APU.
Definition: amd_ags.h:277
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX12_SETMARKER)(AGSContext *, ID3D12GraphicsCommandList *, const char *)
agsDriverExtensionsDX12_SetMarker
Definition: amd_ags.h:1324
The breadcrumb marker struct used by agsDriverExtensionsDX11_WriteBreadcrumb.
Definition: amd_ags.h:895
AsicFamily asicFamily
Set to Unknown if not AMD hardware.
Definition: amd_ags.h:276
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_NumPendingAsyncCompileJobs(AGSContext *context, unsigned int *numberOfJobs)
This method can be used to determine the total number of asynchronous shader compile jobs that are ei...
unsigned int baseInstance
Supported in Radeon Software Version 20.2.1 onwards.
Definition: amd_ags.h:680
unsigned int dolbyVision
Dolby Vision is supported on this display.
Definition: amd_ags.h:211
unsigned int quadList
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:661
unsigned int isPrimaryDisplay
Whether this display is marked as the primary display.
Definition: amd_ags.h:209
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_SetClipRects(AGSContext *context, unsigned int clipRectCount, const AGSClipRect *clipRects)
Function sets clip rectangles.
The struct to specify the existing DX11 device creation parameters.
Definition: amd_ags.h:626
Returned when a D3D dll fails to load.
Definition: amd_ags.h:181
unsigned int multiView
Supported in Radeon Software Version 16.12.1 onwards.
Definition: amd_ags.h:670
unsigned int intrinsics17
Supported in Radeon Software Version 17.9.1 onwards. WaveReduce, WaveScan.
Definition: amd_ags.h:511
unsigned int MDIDeferredContexts
Supported in Radeon Software Version 18.8.1 onwards.
Definition: amd_ags.h:674
int maxResolutionX
The maximum supported resolution of the unrotated display.
Definition: amd_ags.h:219
unsigned int multiDrawIndirect
Supported in Radeon Software Version 16.9.2 onwards.
Definition: amd_ags.h:665
double chromaticityBlueX
Blue display primary X coord.
Definition: amd_ags.h:237
The configuration options that can be passed in to agsInitialize.
Definition: amd_ags.h:321
struct AGSBreadcrumbMarker AGSBreadcrumbMarker
The breadcrumb marker struct used by agsDriverExtensionsDX11_WriteBreadcrumb.
struct AGSDX12ReturnedParams AGSDX12ReturnedParams
The struct to hold all the returned parameters from the device creation call.
unsigned int userMarkers
Supported in Radeon Software Version 17.9.1 onwards.
Definition: amd_ags.h:512
struct AGSDX11ReturnedParams::ExtensionsSupported ExtensionsSupported
Extensions for DX11.
The struct to hold all the returned parameters from the device creation call.
Definition: amd_ags.h:505
struct AGSDX11DeviceCreationParams AGSDX11DeviceCreationParams
The struct to specify the existing DX11 device creation parameters.
Exclude the rect.
Definition: amd_ags.h:1188
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_CREATETEXTURE3D)(AGSContext *, const D3D11_TEXTURE3D_DESC *, const D3D11_SUBRESOURCE_DATA *, ID3D11Texture3D **, AGSAfrTransferType, AGSAfrTransferEngine)
agsDriverExtensionsDX11_CreateTexture3D
Definition: amd_ags.h:1345
struct AGSConfiguration AGSConfiguration
The configuration options that can be passed in to agsInitialize.
double chromaticityRedX
Red display primary X coord.
Definition: amd_ags.h:355
ID3D11DeviceContext * pImmediateContext
The newly created immediate device context.
Definition: amd_ags.h:656
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_NotifyResourceEndAllAccess(AGSContext *context, ID3D11Resource *resource)
This is used for AGS_AFR_TRANSFER_1STEP_P2P to notify when it is safe to initiate a transfer.
AMD_AGS_API AGSReturnCode(* AGS_DRIVEREXTENSIONSDX11_NOTIFYRESOURCEENDWRITES)(AGSContext *, ID3D11Resource *, const D3D11_RECT *, const unsigned int *, unsigned int)
agsDriverExtensionsDX11_NotifyResourceEndWrites
Definition: amd_ags.h:1346
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_MultiDrawIndexedInstancedIndirect(AGSContext *context, ID3D11DeviceContext *dxContext, unsigned int drawCount, ID3D11Buffer *pBufferForArgs, unsigned int alignedByteOffsetForArgs, unsigned int byteStrideForArgs)
Function used to submit a batch of draws via MultiDrawIndirect.
AGS_FREE_CALLBACK freeCallback
Optional memory freeing callback. If not supplied, free() is used.
Definition: amd_ags.h:324
#define AMD_AGS_API
AGS exported functions.
Definition: amd_ags.h:133
float currentRefreshRate
The current refresh rate.
Definition: amd_ags.h:226
void(__stdcall * AGS_FREE_CALLBACK)(void *allocationPtr)
AGS user defined free prototype.
Definition: amd_ags.h:318
unsigned int breadcrumbMarkers
Supported in Radeon Software Version 17.11.1 onwards.
Definition: amd_ags.h:673
AMD_AGS_API AGSReturnCode agsDriverExtensionsDX11_DestroyDevice(AGSContext *context, ID3D11Device *device, unsigned int *deviceReferences, ID3D11DeviceContext *immediateContext, unsigned int *immediateContextReferences)
Function to destroy the D3D11 device and its immediate context.
AGSCrossfireMode
The different modes to control Crossfire behavior.
Definition: amd_ags.h:618
Mode
The display mode.
Definition: amd_ags.h:341
int offsetY
Offset on Y axis.
Definition: amd_ags.h:198
Returned if the AMD GPU driver does not appear to be installed.
Definition: amd_ags.h:183
HMODULE Software
Consult the DX documentation on D3D11CreateDevice for this parameter.
Definition: amd_ags.h:630
const D3D_FEATURE_LEVEL * pFeatureLevels
Consult the DX documentation on D3D11CreateDevice for this parameter.
Definition: amd_ags.h:632