0028466: Visualization, OpenGl_Context - read GPU memory using WGL_AMD_gpu_associatio...
[occt.git] / src / OpenGl / OpenGl_GlFunctions.hxx
index 37af470..cfb31ce 100644 (file)
@@ -1641,6 +1641,28 @@ public: //! @name wgl extensions
   #define WGL_ACCESS_WRITE_DISCARD_NV 0x0002
 #endif
 
+  // WGL_AMD_gpu_association
+
+#ifndef WGL_GPU_VENDOR_AMD
+  #define WGL_GPU_VENDOR_AMD                 0x1F00
+  #define WGL_GPU_RENDERER_STRING_AMD        0x1F01
+  #define WGL_GPU_OPENGL_VERSION_STRING_AMD  0x1F02
+  #define WGL_GPU_FASTEST_TARGET_GPUS_AMD    0x21A2
+  #define WGL_GPU_RAM_AMD                    0x21A3
+  #define WGL_GPU_CLOCK_AMD                  0x21A4
+  #define WGL_GPU_NUM_PIPES_AMD              0x21A5
+  #define WGL_GPU_NUM_SIMD_AMD               0x21A6
+  #define WGL_GPU_NUM_RB_AMD                 0x21A7
+  #define WGL_GPU_NUM_SPI_AMD                0x21A8
+#endif
+
+  typedef UINT (WINAPI *wglGetGPUIDsAMD_t       )(UINT theMaxCount, UINT* theIds);
+  typedef INT  (WINAPI *wglGetGPUInfoAMD_t      )(UINT theId, INT theProperty, GLenum theDataType, UINT theSize, void* theData);
+  typedef UINT (WINAPI *wglGetContextGPUIDAMD_t )(HGLRC theHglrc);
+  wglGetGPUIDsAMD_t       wglGetGPUIDsAMD;
+  wglGetGPUInfoAMD_t      wglGetGPUInfoAMD;
+  wglGetContextGPUIDAMD_t wglGetContextGPUIDAMD;
+
 #elif defined(__APPLE__)
 public: //! @name CGL extensions