HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
capabilities.h
Go to the documentation of this file.
1 //
2 // Copyright 2021 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
7 #ifndef PXR_IMAGING_HGI_GL_CAPABILITIES_H
8 #define PXR_IMAGING_HGI_GL_CAPABILITIES_H
9 
10 #include "pxr/pxr.h"
11 #include "pxr/imaging/hgiGL/api.h"
13 
15 
16 /// \class HgiGLCapabilities
17 ///
18 /// Reports the capabilities of the HgiGL device.
19 ///
20 class HgiGLCapabilities final : public HgiCapabilities
21 {
22 public:
23  HGIGL_API
24  ~HgiGLCapabilities() override;
25 
26 public:
27  friend class HgiGL;
28 
29  HGIGL_API
31 
32  HGIGL_API
33  int GetAPIVersion() const override;
34 
35  HGIGL_API
36  int GetShaderVersion() const override;
37 
38 private:
39  void _LoadCapabilities();
40 
41  // GL version
42  int _glVersion; // 400 (4.0), 410 (4.1), ...
43 
44  // GLSL version
45  int _glslVersion; // 400, 410, ...
46 };
47 
49 
50 #endif
Definition: hgi.h:54
HGIGL_API int GetAPIVersion() const override
#define HGIGL_API
Definition: api.h:23
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74
HGIGL_API int GetShaderVersion() const override
HGIGL_API HgiGLCapabilities()
HGIGL_API ~HgiGLCapabilities() override