VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtGlCaps.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2023 VT-MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 
14 #include <vrvMath/DtVector3.h>
15 #include <vrvMath/DtVector2.h>
16 
17 #include <string>
18 
19 namespace makVrv
20 {
22  {
23  int myMajor;
24  int myMinor;
25 
27  bool operator>(const DtGlDriverVersion& rhs) const
28  {
29  return myMajor > rhs.myMajor || (myMajor == rhs.myMajor && myMinor > rhs.myMinor);
30  }
31 
33  bool operator<=(const DtGlDriverVersion& rhs) const
34  {
35  return !(this->operator>(rhs));
36  }
37  };
38 
42  {
43  public:
47  DtGlCaps();
48 
50  virtual ~DtGlCaps();
51  private:
53  DtGlCaps(const DtGlCaps& rhs) = delete;
54 
56  DtGlCaps& operator=(const DtGlCaps& rhs) = delete;
57  public:
58 
60  virtual int maxCombinedAtomicCounterBuffers(void) const;
61 
63  virtual DtVector3<int> maxComputeWorkGroupCount(void) const;
64 
66  virtual DtVector3<int> maxComputeWorkGroupSize(void) const;
67 
69  virtual int maxComputeWorkGroupInvocations(void) const;
70 
72  virtual int maxTextureImageUnits(void) const;
73 
75  virtual int maxSsboSize(void) const;
76 
78  virtual int maxUboSize(void) const;
79 
81  virtual int maxTextureSize(void) const;
82 
84  virtual float maxTextureAnisotropy() const;
85 
88  virtual DtVector2<int> largestWorkGroupLocalSize2d() const;
89 
91  virtual uint64_t totalAvailableMemoryInBytes(void) const;
92 
94  virtual const std::string& vendor(void) const;
95 
97  virtual const std::string& renderer(void) const;
98 
100  virtual const std::string& version(void) const;
101 
103  virtual const DtGlDriverVersion& driverNumber(void) const;
104 
105  protected:
107  virtual DtGlDriverVersion extractDriverNumber(const std::string& version) const;
108  protected:
119 
121  std::string myVendor;
122  std::string myRenderer;
123  std::string myVersion;
125  };
126 }
Dll export defines.
std::string myVendor
Definition: DtGlCaps.h:121
2 dimensional vector
std::string myVersion
Definition: DtGlCaps.h:123
bool operator>(const DtGlDriverVersion &rhs) const
Whether we are greater than rhs.
Definition: DtGlCaps.h:27
uint64_t myTotalAvailableMemory
Definition: DtGlCaps.h:120
float myMaxTextureAnisotropy
Definition: DtGlCaps.h:118
bool operator<=(const DtGlDriverVersion &rhs) const
Whether we are lesser than or equal to.
Definition: DtGlCaps.h:33
3 dimensional vector
Vector3_int myMaxWorkGroupCount
Definition: DtGlCaps.h:110
std::string myRenderer
Definition: DtGlCaps.h:122
int myMaxGroupInvocations
Definition: DtGlCaps.h:112
Definition: DtGlCaps.h:21
DtGlCaps provide the capabilities value in OpenGL.
Definition: DtGlCaps.h:41
DtGlDriverVersion myDriverNumber
Definition: DtGlCaps.h:124
int myMaxAtomicCounters
Definition: DtGlCaps.h:109
Vector3_int myMaxWorkGroupSize
Definition: DtGlCaps.h:111
int myMaxUboSize
Definition: DtGlCaps.h:115
int myMaxSsboBindings
Definition: DtGlCaps.h:116
int myMajor
Definition: DtGlCaps.h:23
#define DT_DLL_VRVGRAPHICSUTILS
Definition: vrvGraphicsUtils.h:18
int myMaxTextureImageUnits
Definition: DtGlCaps.h:113
int myMaxSsboSize
Definition: DtGlCaps.h:114
int myMaxTextureSize
Definition: DtGlCaps.h:117
int myMinor
Definition: DtGlCaps.h:24

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)